Gene­rie­rungs­parameter für Java

Dieser Abschnitt ist veraltet: Die Verwendung von "embedded" Parametern in der Ent­schei­dungs­ta­belle ist zwar nach wie vor möglich, wird aber nicht mehr emp­foh­len.

Seit Pro­ject.ini-Dateien verschachtelt werden können und in diesem Zusammenhang auch private Pro­ject.ini-Dateien für einzelne Ent­schei­dungs­ta­bellen möglich sind, sollten die Entscheidunsgtabellen möglichst unverändert zur Programm­gene­rie­rung verwendet werden.

Die Gene­rie­rung des Sourcecodes kann für Java über folgende Parameter beeinflusst werden:

Parameter Default-Wert Zulässige Werte

$$BaseOfVersion

Hiermit kann die Versions-Ausgabe für den Platz­hal­ter $$Version im gene­rier­ten Programmcode verändert werden:

SRC - Dies ist der Default-Wert: $$Version wird im gene­rier­ten Code durch den Zeitstempel der Source-Ge­ne­rie­rung ersetzt.

DT | ET - $$Version wird im gene­rier­ten Code durch den Save-Zeitstempel (saveDate) der Ent­schei­dungs­ta­belle ersetzt.

UDV | BDV - $$Version wird im gene­rier­ten Code durch die UserDefinedVersion (Benutzerdefinierte Version) der Ent­schei­dungs­ta­belle ersetzt.

Wenn keine benutzerdefinierte Version ange­ge­ben ist, dann wird der Save-Zeitstempel der Ent­schei­dungs­ta­belle verwendet und ein entsprechender Hinweis im Verarbeitungsprotokoll ausgegeben.

Siehe auch project.ini: ide.java.baseOfVersion

SRC

SRC

DT

ET

UDV

BDV

$$BracketsNewLine Die geschweiften Klammern der if-else-Struktur werden in einer separaten Zeile ge­ne­riert.

true

true

false

$$DontCheckRuleGroups

Mit dem Wert true kann die auto­ma­tische Konsistenz-Prüfung von Regel­gruppen bei der Gene­rie­rung von Programmcode unterdrückt werden.

Dies kann ein sinnvoller Workaround sein, solange noch 'alte' Ent­schei­dungs­ta­bellen mit Regel­gruppensteuerung im Einsatz sind, diese aber (noch) nicht den aktuellen formalen Anforderungen an Regel­gruppen entsprechen.

Siehe auch project.ini: ide.java.dontCheckRuleGroups

true

true

false

$EmptyLines

Eine Leerzeile zwischen den gene­rier­ten Blöcken.

true

true

false

$$Extension

Extension des erzeugten Sourcefiles

Siehe auch project.ini: ide.java.extension

java

beliebig

$$Filename

Gene­riert einen vom Ent­schei­dungs­ta­bellen-Namen ab­wei­chenden Datei-Namen

Siehe auch project.ini: ide.java.filename

ET-

Name

beliebig

$$Package

1) Erläuterung siehe Kapitel: Der Parameter $$Package

Siehe auch project.ini: ide.java.package

1)

1)

$$Scrapbook.SuppressText

Mit dem Wert true kann bei der Scrapbook-Ge­ne­rie­rung die Einbindung von Titeln und Texten als Kommentare unterdrückt werden.

Siehe auch project.ini: ide.java.scrapbook.suppressText

false

true

false

$$TodoTag

Hiermit kann das Standard-Todo-Tag "TODO", das bei der Scrapbook-Ge­ne­rie­rung verwendet wird, frei definiert werden. So können z.B. in Eclipse gene­rier­te LF‑ET-TODO"s von "normalen" TODO"s unterschieden werden.

Siehe auch project.ini: ide.java.todoTag

TODO

beliebig

Parameter für die Java-Interface-Ge­ne­rie­rung

Parameter Default-Wert Zulässige Werte

$$Interface

Die Angabe dieses Parameters löst die Interface-Gene­rie­rung für Java aus, wenn alle sonstigen Interface-Parameter in der project.ini definiert sind, aber im Prolog der Ent­schei­dungs­ta­belle noch wei­tere, nicht Interface-bezogene, Parameter ange­ge­ben sind, wie z.B. $$DontCheckRuleGroups=true.

Siehe auch project.ini: ide.java.Interface

false

true

false

$$InterfaceName

Die Angabe dieses Parameters löst die Interface-Gene­rie­rung für Java aus.

Siehe auch project.ini: ide.java.InterfaceName

---

beliebig

$$InterfaceRulesClassName

Mit diesem Parameter kann ein individueller Name für das Logik-Modul (Rules-Engine) festgelegt werden.

Siehe auch project.ini: ide.java.InterfaceRulesClassName

ET-

Name

beliebig

$$InterfaceRuleMethods

Bei sehr großen Ent­schei­dungs­ta­bellen mit vielen Regeln und vielen Aktionen in den Regeln kann die Methode „execute“ in der gene­rier­ten Rules-Engine zu groß werden und einen Compile-Fehler „The code of method … is exceeding the 65535 bytes limit“ verursachen.

Dieser Gene­rie­rungs­parameter löst das Problem, indem die Regeln in der gene­rier­ten Rules-Engine in je­weils eigene Methoden „ausgelagert“ werden.

false

true

false

$$InterfaceRuleID

Dieser Parameter ermöglicht das Tracen der RuleID’s bei der Interface-Gene­rie­rung für Java

false - Dies ist der Default-Wert: RuleID’s und die aktuelle LastRuleID werden bei der Interface-Gene­rie­rung nicht berücksichtigt

true - Die RuleID der Regel und die aktuelle LastRuleID der Ent­schei­dungs­ta­belle werden bei der Interface-Gene­rie­rung über zu­sätz­liche Getter-Methoden bereitgestellt

trace - Die RuleID der Regel und die aktuelle LastRuleID der Ent­schei­dungs­ta­belle werden in den Interface-Trace-Methoden als Parameter mitgegeben

Siehe auch project.ini: ide.java.InterfaceRuleID

false

false

true

trace

$$InterfaceRuleGroups

Verlagert die Regel­gruppensteuerung komplett in die gene­rier­te Rules-Engine, die entsprechenden Bedingungen und Aktionen entfallen dann im Interface und bei der Implementierung entfällt die manuelle Programmierung der Schleife um den Rule-Engine-Aufruf.

Siehe auch project.ini: ide.java.InterfaceRuleGroups

false

true

false

$$InterfaceTraceAfterRule

Gene­rie­rung einer zu­sätz­lichen Trace-Methode nach jeder Regel.

Siehe auch project.ini: ide.java.interfaceTraceAfterRule

false

true

false

$$InterfacePrefixIs

Individueller Präfix für die Bedingungsmethoden, wie z.B. "is".

Siehe auch project.ini: _ide.java.InterfacePrefixIs

is

beliebig

$$InterfacePrefixDo

Individueller Präfix für die Aktionsmethoden, wie z.B. "do".

Siehe auch project.ini: _ide.java.InterfacePrefixDo

do

beliebig

$$InterfaceExtension

Extension der erzeugten Interface-Datei.

java

beliebig

$$InterfaceVarName

Name des Interface-Parameters.

iface

beliebig

$$InterfaceExtendedMethodNames

LF‑ET prüft auto­ma­tisch, ob alle gene­rier­ten Methodennamen gültig sind. Falls nicht, wird die Verwendung dieses Parameters emp­foh­len, der die vollständige Auflösung aller Son­der­zei­chen auslöst.

false

true

false

$$InterfaceIgnoreQmark

Verhindert die Auflösung von Fragezeichen für Methodennamen bei Verwendung von $$InterfaceExtendedMethodNames=true.

Siehe auch project.ini: ide.java.InterfaceIgnoreQmark

false

true

false

$$MethodName

$$MN (Kurzform)

Mit diesem Gene­rie­rungs­parameter

• im logischen Argument einer Bedingung oder eines Bedingungswertes oder

• im Statement einer Aktion oder eines Ak­tions­wertes

wird nicht die auto­ma­tische Gene­rie­rung des Interface-Methodennamens verwendet, sondern direkt der je­weils ange­ge­bene Parameterwert.

Zur Dokumentation in den gene­rier­ten Mo­du­len wird der jewei­lige Source­code auch in den Kommentar der Interface-Methode mit aufgenommen.

---

beliebig

 

Hinweise zu Gene­rie­rungs­para­me­tern:

  • Gene­rie­rungs­parameter werden als Kommentarzeilen direkt im Source­code ange­ge­ben. Geeignet sind dazu die ersten Zeilen im Prolog zur Ent­schei­dungs­ta­belle, ein Beispiel:

     // $$Filename=MyClass
  • Werden keine Gene­rie­rungs­parameter eingegeben, dann arbeitet die Gene­rie­rung mit den Default-Werten

  • Mehrere Gene­rie­rungs­parameter in einer Zeile sind möglich

  • Groß-Klein-Schreibung spielt keine Rolle

  • Ein Gene­rie­rungs­parameter darf nur einmal vorkommen

  • Bei Fehlern (ungültige oder fehlende Werte, mehrfache Gene­rie­rungs­parameter, etc.) wird die Gene­rie­rung abgebrochen und eine detaillierte Beschreibung der Ursache wird am Bildschirm angezeigt

  • Viele Gene­rie­rungs­parameter können auch "global" in der Datei Pro­ject.ini festgelegt werden, siehe: Sprachbezogene Schlüssel in der Datei Pro­ject.ini

 

Weiterführende Informationen: