Antes de começar
Uma biblioteca de implementação carregável, ou uma LIL, é o módulo de implementação para um analisador (ou nó) em C. Uma LIL é um objeto compartilhado do Linux ou UNIX ou uma DLL (Dynamic Link Library) do Windows que não tem a extensão de arquivo .dll, mas .lil.
As funções de implementação que precisam ser escritas pelo desenvolvedor estão relacionadas em Funções de Implementação do Analisador C.As funções utilitárias fornecidas pelo WebSphere Message Broker para auxiliar esse processo estão relacionadas em Funções de Utilitários do Analisador C.
O WebSphere Message Broker fornece a origem para um analisador de amostra definido pelo usuário chamado BipSampPluginParser.c. Esse é um analisador pseudo XML simples que pode ser utilizado em seu estado atual ou pode ser modificado.
Para declarar e definir um analisador definido pelo usuário para o intermediário, é necessário incluir uma função de inicialização, bipGetParserFactory, no LIL. As seguintes etapas descrevem como o intermediário chama a função de inicialização e como sua função de inicialização declara e define o analisador definido pelo usuário:
O seguinte procedimento mostra como declarar e definir seu analisador para o intermediário:
O seguinte procedimento mostra como instanciar o analisador:
Os analisadores são destruídos quando um fluxo de mensagens é excluído ou reimplementado, ou quando o processo do grupo de execução é parado (utilizando o comando mqsistop). Quando um analisador for destruído, ele deverá liberar qualquer memória utilizada e quaisquer recursos retidos. Isso é feito utilizando a função cpiDeleteContext. Exemplo:
void cpiDeleteContext( CciParser* parser, CciContext* context ){ PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ; int rc = 0; return; }