Bei der Java™-Wrappergenerierung wird Folgendes ausgegeben:
Die folgende Tabelle enthält die Namen der verschiedenen Typen generierter Java-Wrapperabschnitte:
| Abschnittstyp und -name | Was wird generiert? |
|---|---|
| Programm mit dem Namen P | Klasse mit dem Namen PWrapper in PWrapper.java |
| Datensatz mit dem Namen R, der als Parameter oder Eingabedatensatz verwendet wird | Klasse mit dem Namen R in R.java |
| Unterstrukturierter Bereich S in dem als Parameter verwendeten Datensatz R | Klasse mit dem Namen R.S in R.java |
| Verbindungsoptionsabschnitt mit dem Namen L | Verbindungseigenschaftendatei mit dem Namen L.properties |
Wenn Sie für einen Programmabschnitt eine Generierung als Java-Wrapper anfordern, erzeugt EGL für jede der folgenden ausführbaren Komponenten eine Java-Klasse:
Handelt es sich bei einem der Parameter für das Programm um einen Datensatz, generiert EGL auch eine Wrapperklasse für diese Variable. Verfügt ein Programm Prog über einen Satzparameter mit einer typedef namens 'Rec', lautet der Name der Wrapperklasse für den Parameter Rec. Hat die typedef eines Parameters denselben Namen wie das Programm, erhält die Wrapperklasse für den Parameter das Suffix 'Record'.
Vom Generator wird auch ein Wrapper erzeugt, wenn ein Datensatzparameter über ein Feldgruppenfeld verfügt und diesem Feld wiederum andere Felder untergeordnet sind. Dieser Wrapper für unterstrukturierte Feldgruppen wird zu einer untergeordneten Klasse des Datensatzwrappers. In den meisten Fällen wird ein unterstrukturiertes Feldgruppenfeld namens 'AField' in Rec in eine Klasse mit dem Namen Rec.AField eingeschlossen. Der Datensatz kann zwei unterstrukturierte Feldgruppenfelder mit demselben Namen enthalten. In diesem Fall werden die Feldwrapper mit den qualifizierten Namen der Felder bezeichnet. Lautet der qualifizierte Name des ersten AField-Feldes 'Top1.AField' und der qualifizierte Name des zweiten Feldes 'Top2.Middle2.AField', werden die Klassen mit den Namen Rec.Top1$_aField und Rec.Top2$_middle2$_aField bezeichnet. Stimmt der Name einer unterstrukturierten Feldgruppe mit dem Namen des Programms überein, erhält die Wrapperklasse für die unterstrukturierte Feldgruppe das Suffix Structure.
In den einzelnen Datensatzwrappern und Wrappern für unterstrukturierte Feldgruppen werden Methoden zum Definieren und Abrufen der Werte der Felder einer unteren Ebene generiert. Weisen zwei Felder einer unteren Ebene in der Satzfeldgruppe bzw. in der unterstrukturierten Feldgruppe denselben Namen auf, wird vom Generator das im vorangehenden Abschnitt beschriebene Schema für qualifizierte Namen angewendet.
Für einen SQL-Datensatz werden zusätzliche Methoden in Wrappern generiert. Vom Generator werden für jedes Feld im Datensatz Methoden zum Abrufen und Definieren des zugehörigen Nullanzeigerwerts sowie Methoden zum Abrufen und Definieren des zugehörigen SQL-Längenanzeigers erstellt.
Mit dem Tool 'Javadoc' können Sie nach dem Kompilieren der Klasse eine Datei mit dem Namen 'Klassenname.html' erstellen. Diese HTML-Datei beschreibt die öffentlichen Schnittstellen für die Klasse. Wenn Sie mit Javadoc erstellte HTML-Dateien verwenden, vergewissern Sie sich, dass es dabei um einen EGL-Java-Wrapper handelt. Aus einem Java-Wrapper von VisualAge Generator generierte HTML-Dateien unterscheiden sich von denen, die aus einem EGL-Java-Wrapper generiert werden.
Es folgt ein Beispiel für einen Datensatzabschnitt mit einer unterstrukturierten Feldgruppe:
Record myRecord type basicRecord
10 MyTopStructure[3];
15 MyStructureField01 CHAR(3);
15 MyStructureField02 CHAR(3);
end
AliasWrapper.java
Dabei
gilt Folgendes: Datensatzname.java
Dabei gilt
Folgendes: Datensatzname.siName
Dabei gilt Folgendes: Erster_Name$_Zweiter_Name$_SiName
Dabei gilt Folgendes: Erster_Name$_SiName
Dabei gilt Folgendes: Schließlich ist noch der folgende Fall möglich: Eine strukturierte Feldgruppe hat einen Namen, der im Datensatz nicht eindeutig ist, und ist einer anderen unterstrukturierten Feldgruppe untergeordnet, deren Name im Datensatz nicht eindeutig ist. Die Klasse für die untergeordnete Feldgruppe wird als untergeordnete Klasse einer untergeordneten Klasse generiert.
Wenn Sie einen Java-Wrapper generieren, werden auch eine Java-Eigenschaftendatei und eine Verbindungseigenschaftendatei generiert, sofern Sie anfordern, dass zur Laufzeit Verbindungsoptionen gesetzt werden.