Antes de empezar
Una biblioteca de implementación cargable, o LIL, es el módulo de implementación para un analizador (o nodo) C. Una LIL es un objeto Linux o UNIX compartido o una biblioteca de enlaces dinámicos (DLL) Windows, que no tiene la extensión de archivo .dll sino .lil.
Las funciones de implementación que el desarrollador tiene que escribir se listan en el apartado Funciones de implementación de analizador en C. Las funciones de programa de utilidad que WebSphere Message Broker proporciona para ayudar en este proceso se listan en el apartado Funciones de programa de utilidad de analizador en C.
WebSphere Message Broker proporciona el origen para un analizador definido por el usuario de ejemplo denominado BipSampPluginParser.c. Se trata de un analizador pseudo XML simple que se puede utilizar en su estado actual o que se puede modificar.
Para declarar y definir un analizador definido por el usuario en el intermediario, debe incluir una función de inicialización bipGetParserFactory, en su LIL. Los pasos siguientes indican cómo llama el intermediario a su función de inicialización y cómo esa función declara y define el analizador definido por el usuario:
El procedimiento siguiente muestra cómo declarar y definir el analizador en el intermediario:
El procedimiento siguiente muestra cómo crear instancias del analizador:
Los analizadores se destruyen cuando se suprime o se vuelve a desplegar un flujo de mensajes, o cuando se detiene el proceso de grupo de ejecución (utilizando el mandato mqsistop). Cuando un analizador se destruye, debe liberar la memoria utilizada así como los recursos retenidos. Para ello, utilice la función cpiDeleteContext. Por ejemplo:
void cpiDeleteContext( CciParser* parser, CciContext* context ){ PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ; int rc = 0; return; }