diff --git a/plugin.md b/plugin.md
index 3638cdf..c5f1523 100644
--- a/plugin.md
+++ b/plugin.md
@@ -1,3 +1,38 @@
+# Index
+
+1. [Ziele des Gradle-Plugins zur Prozessmodellierung](#ziele-des-gradle-plugins-zur-prozessmodellierung)
+2. [System-Anforderungen](#system-anforderungen)
+3. [Zugang](#zugang)
+4. [Grundidee](#grundidee)
+5. [Aktueller Funktionsumfang](#aktueller-funktionsumfang)
+6. [Konfiguration und Projektstruktur](#konfiguration-und-projektstruktur)
+ 1. [Ordnerstruktur](#ordnerstruktur)
+ 1. [/config](#ordner-config)
+ 2. [/scripts](#ordner-scripts)
+ 3. [/commons](#ordner-commons)
+ 4. [/models](#ordner-models)
+ 5. [/forms](#ordner-forms)
+ 6. [/parameterdefinitions](#ordner-parameterdefinitions)
+ 2. [Ermittlung von Konfigurationswerten](#ermittlung-von-konfigurationswerten)
+ 1. [Umgebung](#umgebung)
+ 2. [Mandant](#mandant)
+ 3. [Name und Version des Prozessmodells](#name-und-version-des-prozessmodells)
+ 4. [Stufe der Prozessmodell-Version](#stufe-der-prozessmodell-version)
+ 5. [Prozess-Engine für Deployment](#prozess-engine-für-deployment)
+ 3. [Unterstützung von Gradle Multi-Project Builds](#unterstützung-von-gradle-multi-project-builds)
+12. [Tasks](#tasks)
+ 1. [_mergeScripts_](#task-mergescripts)
+ 2. [_buildModel_](#task-buildmodel)
+ 3. [_uploadProcessModelFiles_](#task-uploadprocessmodelfiles)
+ 4. [_uploadParameterDefinition_](#task-uploadparameterdefinition)
+ 5. [_getActiveProcessEngines_](#task-getactiveprocessengines)
+ 6. [_deployProcessModelVersion_](#task-deployprocessmodelversion)
+ 7. [_uploadFormularFiles_](#task-uploadformularfiles)
+ 8. [_uploadAndDeployFormularFiles_](#task-uploadanddeployformularfiles)
+ 9. [_getAuthorizationToken_](#task-getauthorizationtoken)
+ 10. [_startLocalHttpServer_](#task-startlocalhttpserver)
+ 11. [_stopLocalHttpServer_](#task-stoplocalhttpserver)
+
# Ziele des Gradle-Plugins zur Prozessmodellierung
Dieses Gradle-Plugin schafft die Möglichkeit, einzelne Prozess-Teile
@@ -50,23 +85,21 @@ Deployen übernehmen.
# Aktueller Funktionsumfang
-In diesem Release enthalten sind die Tasks
-
-* `mergeScripts` Fügt die einzelnen Bestandteile der Skripte zu kompilierbaren Groovy-Skripten
- zusammen
-* `buildModel` Fügt die Skripte in das Prozessmodell ein
-* `uploadProcessModelFiles` Lädt Prozessmodell-Dateien in das Admincenter hoch
-* `uploadProcessDefinitions` Lädt Prozessparameterdefinitionen in das Admincenter hoch
-* `getActiveProcessEngines` Gibt die Liste der zur Verfügung stehenden Prozess-Engines aus
-* `deployProcessModelVersion` Deployt eine (zuvor hochgeladene) Prozessversion
-* `uploadFormularFiles` Lädt Formulardateien in das Admincenter hoch
-* `uploadAndDeployFormularFiles` Lädt Formulardateien in das Admincenter hoch und deployt sie
-* `getAuthorizationToken` Erstellt ein Token zum Authentifizieren.
- Ein solches Token wird zum Hochladen und Deployen von Prozessen,
- Prozessparameterdefinitionen und Formularen benötigt.
-* `startLocalHttpServer` Startet einen lokalen Server, um lokale Formulardateien mit dem
- Formulardesigner auf einer definierten Umgebung zu bearbeiten
-* `stopLocalHttpServer` Stoppt den lokalen Server zum Bearbeiten von lokalen Dateien.
+In diesem Release enthalten sind die Tasks:
+
+| Task | Beschreibung |
+|---------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| [`mergeScripts`](#mergescripts) | Fügt die einzelnen Bestandteile der Skripte zu kompilierbaren Groovy-Skripten zusammen |
+| [`buildModel`](#buildmodel) | Fügt die Skripte in das Prozessmodell ein |
+| [`uploadProcessModelFiles`](#uploadprocessmodelfiles) | Lädt Prozessmodell-Dateien in das Admincenter hoch |
+| [`uploadProcessDefinitions`](#uploadprocessdefinitions) | Lädt Prozessparameterdefinitionen in das Admincenter hoch |
+| [`getActiveProcessEngines`](#getactiveprocessengines) | Gibt die Liste der zur Verfügung stehenden Prozess-Engines aus |
+| [`deployProcessModelVersion`](#deployprocessmodelversion) | Deployt eine (zuvor hochgeladene) Prozessversion |
+| [`uploadFormularFiles`](#uploadformularfiles) | Lädt Formulardateien in das Admincenter hoch |
+| [`uploadAndDeployFormulariles`](#uploadanddeployformulariles) | Lädt Formulardateien in das Admincenter hoch und deployt sie |
+| [`getAuthorizationToken`](#getauthorizationtoken) | Erstellt ein Token zum Authentifizieren. Ein solches Token wird zum Hochladen und Deployen von Prozessen, Prozessparameterdefinitionen und Formularen benötigt. |
+| [`startLocalHttpServer`](#startlocalhttpserver) | Startet einen lokalen Server, um lokale Formulardateien mit dem Formulardesigner auf einer definierten Umgebung zu bearbeiten |
+| [`stopLocalHttpServer`](#stoplocalhttpserver) | Stoppt den lokalen Server zum Bearbeiten von lokalen Dateien. |
# Konfiguration und Projektstruktur
@@ -118,14 +151,18 @@ Die Ordnerstruktur wird vom Gradle-Plugin wie folgt erwartet:
Enthält die Konfigurationsdateien für das Gradle-Plugin. Die enthaltenen Dateien beeinflussen nur
das Verhalten des Gradle-Plugins.
-#### Ordner config - Datei project.json
+
+
+#### **Datei project.json**
Die Datei project.json enthält Informationen darüber, an welcher Stelle der Prozess
im Admincenter abgelegt wird. Enthalten sind folgende Informationen:
-* **projectName**: Der Name des Prozessmodells im Admincenter.
-* **projectVersion**: Die Version des Prozessmodells, an der gerade gearbeitet wird.
-* **mandant**: Die Id des Mandanten, unter dem das Prozessmodell und die Formulare
- im Admincenter abgelegt werden.
+
+| Attribut | Beschreibung |
+|-----------------|------------------------------------------------------------------------------------------------------|
+| projectName | Der Name des Prozessmodells im Admincenter. |
+| projectVersion | Die Version des Prozessmodells, an der gerade gearbeitet wird. |
+| mandant | Die Id des Mandanten, unter dem das Prozessmodell und die Formulare im Admincenter abgelegt werden. |
Beispielsweise könnte die Datei project.json so aussehen:
```json
@@ -135,8 +172,9 @@ Beispielsweise könnte die Datei project.json so aussehen:
"mandant": "1"
}
```
+
-#### Ordner config - Datei auth.json
+#### **Datei auth.json**
Die Informationen in dieser Datei authentifizieren den Benutzer gegen die entsprechende Umgebung.
Die Authentifizierungsinformationen sind sensitive persönliche Informationen
@@ -182,8 +220,10 @@ die Prozesse zu deployen.
Diese Beschränkungen werden über den Betrieb in Absprache mit dem IM/SK für jede Umgebung
festgelegt.
+
+
-#### Ordner config - Datei default.json und andere Umgebungsdefinitionen
+#### **Datei default.json und andere Umgebungsdefinitionen**
Die Umgebungsdefinitionen dienen dazu, die Informationen für unterschiedliche Umgebungen abzulegen.
Wird beim Aufruf der Tasks keine Umgebung angegeben, so wird die Umgebung "default" gewählt.
@@ -191,23 +231,21 @@ Der Name der Umgebung ist in dem Dateinamen kodiert. So wird z.B. für die Umgeb
die Umgebungsdefinitionsdatei prozesstest.json angezogen.
Die Dateien enthalten folgende Informationen:
-* **url**: Die URL des Servicegateways der Zielumgebung
-* **status**: Der Status in der das Prozessmodell und die Formulare
- auf der entsprechenden Umgebung abgelegt werden sollen. Gültige Werte sind prinzipiell
- EDIT, TEST und FINAL. Es kann jedoch sein, dass manche Werte auf manchen Umgebungen nicht zur Verfügung stehen.
-* **mandant**: Die Id des Mandanten für diese Umgebung.
- Wenn gesetzt, wird der Mandant aus der Datei project.json überschrieben.
-* **processModelNameExtension**: Ein optionales Suffix, der beim Bauen der Prozessmodelle
- an den Prozessnamen, der in der bpmn-Datei definiert ist, angehängt wird
- (getrennt durch ein Leerzeichen).
-* **processEngine:**: Die ID der Prozess-Engine, auf welche die Prozessmodell-Version deployt werden
- soll. Ist der Parameter nicht gesetzt, wird die Standard-Prozess-Engine verwendet.
+
+| Attribut | Beschreibung |
+|---------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| url | Die URL des Servicegateways der Zielumgebung |
+| status | Der Status in der das Prozessmodell und die Formulare auf der entsprechenden Umgebung abgelegt werden sollen. Gültige Werte sind: