Iwan7 - Konfiguration

Die Konfiguration ist minimal. Der Port und das Basis-Verzeichnis wird beim Starten übergeben (entweder interaktiv oder als Dienst-Argument).

Folgende Parameter müssen angegeben werden:

-port: Die Portnummer, an der der Http Listener läuft (empfohlener Wert: 8287)

-baseDir: Das Basis-Verzeichnis für die (Projekt) Konfigurationsdateien

Globale Standard-Parameter

Im baseDir kann eine .iwan.config Datei angelegt werden. Dabei können einige Standardwerte vordefiniert werden. Bei der Datei handelt es sich um eine Json-Datei, die auch Kommentare enthalten darf.

Zur Laufzeit können diese Parameter durch Aufruf an /config modifiziert werden.

Wenn die Werte null sind (empfohlen), werden die "besten" Standardeinstellungen gesetzt. Diese können sich von Version zu Version unterscheiden.

{
    /*
    Trace-Level (TraceError)
    einer der Werte: 
       TraceNone
	   TraceWarning,
	   TraceError,
	   TraceInfo,
	   TraceDebug,
	   TraceDetail,
	   TraceDetailEx
    */
    
    "traceLevel": null,

    /*
    Zeichen-Modi (UseVectorQueue,RenderLayersParallel)
    eine Kombination der Wert:
        NoParallel
        RenderLayersParallel,
        UseVectorQueue,
        DebugRenderSkipVRendering
    */

    "renderMode":null,

    /*
    Grafik-Engine (GdiPlus)
    einer der Werte:
        GdiPlus,
        Direct2d,
        Agge    
    */

    "renderEngine":null
    /*
    Objekt, mit Proxy-Einstellungen (*1)

     {
        proxyUri:"http://localhost:8888",
        useDefaultProxy:false,
        proxyBypassList:null,
        proxyCredentials:{
            "userName":"usr",
            "passWord":"\encrypted..."
           }
     }

    */
    "defaultProxy": null
}

(*1) Die Proxy-Einstellungen werden derzeit noch nicht verwendet und sind für zukünftige Anwendungszwecke gedacht.

Projektspezifische Konfigurationen

Einige Konfigurationsparameter sind Projektspezifisch.

Projekte dienen der Isolation von Ebenen untereinander. Meist ist solch ein Projekt mit einer cardo Instanz assoziiert. Der Projektname kann/muss in jedem Request mit übergeben werden.

Die Projektdateien sind ebenfalls im baseDir zu finden. Der Name der Datei ist immer in der Form .config anzugeben.

Ein Sonderfall ist dabei die Datei $default.config.

Beim Starten des Servers werden alle *.config Dateien in baseDir eingelesen. Die so ermittelten Dateien definieren gleichzeitig die verfügbaren Projektnamen.

{
     "workingDir":null,
     "tempDir":null,
     "projectBBox":null
}
  • workingDir: Das Arbeitsvereichnis, relative Pfadangaben werden zu diesem ausgewertet, wenn nicht angegeben, dann identisch mit baseDir

  • tempDir: Verzeichnis für temporäre Dateien, wenn nicht angegeben, dann wird workingDir/tempFiles angenommen.

  • projectBBox: Die Standard-Boundingbox für das jeweilige Projekt als Objekt in der Form {minx, "miny":number,"maxx":number,"maxy":number,"epsgCode":number} Geplant ist, beim Rendern den Pinsel-Ursprung auf die linke untere Ecke dieser Boundingbox auszurichten.

nur in der $default.config:

  • allowAccessToUndefinedProjects: Wenn false (der Standardwert), dann wird bei Aufrufen an an nicht vorhandenes Projekt der Fehler "Es ist keine Definition für ein Projekt XY vorhanden" ausgelöst.

Zuletzt geändert: 07.05.2018 21:29:36 (erstmals erstellt 01.02.2018)