Prima di iniziare
Una libreria di implementazione caricabile, o LIL (Loadable Implementation Library), è il modulo di implementazione di un programma di analisi in C (o nodo). Una LIL è un oggetto condiviso UNIX o Linux o una DLL (Dynamic Link Library) Windows; la sua estensione file però non è .dll, ma .lil.
Le funzioni di implementazione che devono essere scritte dallo sviluppatore sono riportate in Funzioni di implementazione del programma di analisi in C. Le funzioni di utilità che sono fornite da WebSphere Message Broker per facilitare questa elaborazione sono riportate in Funzioni di utilità del programma di analisi in C.
WebSphere Message Broker fornisce l'origine per un programma di analisi definito dall'utente di esempio denominato BipSampPluginParser.c. Questo è un programma di analisi pseudo XML semplice che è possibile utilizzare nel relativo stato attuale oppure è possibile modificarlo.
Per dichiarare e definire un programma di analisi definito dall'utente al broker è necessario includere una funzione di inizializzazione, bipGetParserFactory nella LIL. I passi seguenti evidenziano il modo in cui il broker chiama la funzione di inizializzazione e come tale funzione dichiara e definisce il programma di analisi definito dall'utente:
La seguente procedura mostra come dichiarare e definire il programma di analisi nel broker:
La seguente procedura mostra come creare l'istanza del programma di analisi:
I programmi di analisi vengono eliminati quando viene eliminato o ridistribuito un flusso di messaggi oppure quando viene arrestata l'elaborazione del gruppo di esecuzione (utilizzando il comando mqsistop). Quando un programma di analisi viene eliminato, deve liberare la memoria utilizzata e rilasciare le eventuali risorse impegnate. A tal fine, utilizzare la funzione cpiDeleteContext. Ad esempio:
void cpiDeleteContext( CciParser* parser, CciContext* context ){ PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ; int rc = 0; return; }