Vorbereitungen
Eine ladbare Implementierungsbibliothek (Loadable Implementation Library, LIL) ist das Implementierungsmodul für einen C-Parser (oder -Knoten). Eine LIL-Datei ist ein gemeinsam genutztes Linux- oder UNIX-Objekt oder eine Windows-DLL-Datei, die nicht die Dateierweiterung .dll, sondern .lil hat.
Die Implementierungsfunktionen, die vom Entwickler geschrieben werden müssen, sind unter C-Parser-Implementierungsfunktionen aufgelistet. Die Dienstprogrammfunktionen, die von WebSphere Message Broker bereitgestellt werden, um diesen Prozess zu unterstützen, sind unter C-Parser-Dienstprogrammfunktionen aufgelistet.
WebSphere Message Broker stellt die Quelle für einen benutzerdefinierten Parser mit der Bezeichnung 'BipSampPluginParser.c' zur Verfügung. Dies ist ein einfacher Pseudo-XML-Parser, den Sie im aktuellen Zustand verwenden oder ändern können.
Sie müssen zum Deklarieren und Definieren eines benutzerdefinierten Parsers für den Broker eine Initialisierungsfunktion, bipGetParserFactory, in Ihrer LIL einfügen. Im Folgenden wird erläutert, wie die Initialisierungsfunktion vom Broker aufgerufen wird und wie durch diese Funktion der benutzerdefinierte Parser deklariert und definiert wird:
In der folgenden Prozedur wird beschrieben, wie Sie Ihren Parser im Broker deklarieren und definieren:
In der folgenden Prozedur wird beschrieben, wie Sie für Ihren Parser eine Instanz erstellen können:
Parser werden beim Löschen oder erneuten Implementieren eines Nachrichtenflusses oder beim Stoppen des Prozesses der Ausführungsgruppe mit Hilfe des Befehls mqsistop gelöscht. Durch das Löschen des Parsers sollte der verwendete Speicher und darin enthaltene Ressourcen freigegeben werden. Verwenden Sie dazu die Funktion cpiDeleteContext. Beispiel:
void cpiDeleteContext( CciParser* parser, CciContext* context ){ PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ; int rc = 0; return; }