Esta seção contém
detalhes sobre como implementar um nó ou um analisador definido pelo
usuário para melhorar a funcionalidade do WebSphere Message Broker.
Você
pode escrever nós definidos pelo usuário em
C ou
Java. Você pode escrever analisadores definidos pelo usuário somente em
C.
Para obter informações sobre como projetar e criar nós definidos pelo usuário e analisadores definidos pelo usuário, consulte os seguintes tópicos:
Os arquivos criados e, em seguida, distribuídos são:
Nos sistemas
Windows, um DLL (Dynamic Link
Library), nomeado com um tipo de arquivo '.lil'.
Nos sistemas Linux,
um objeto compartilhado, também com um tipo de arquivo '.lil'.
Nos sistemas UNIX, um objeto
compartilhado, também com um tipo de arquivo '.lil'.
No z/OS, um objeto
compartilhado, com um tipo de arquivo '.lil'.
Para os nós
Java, um arquivo JAR (Java Archive), com um tipo de arquivo '.jar'.
Uma extensão definida pelo usuário em C
implementa uma fábrica de nó ou de analisador que pode suportar vários nós ou tipos de
analisadores. Os usuários de Java não precisam criar uma fábrica de
nós. Para obter informações adicionais,
consulte comportamento do depósito de informações do provedor do nó e do analisador.
O sistema carrega a extensão definida pelo usuário quando o
intermediário inicializa.
Isso chama a função de registro na extensão definida pelo usuário
para que o intermediário compreenda quais nós ou
analisadores a extensão definida pelo usuário suporta.
Existem algumas restrições e fatores a serem considerados ao desenvolver
extensões definidas pelo usuário:
- Não é suportado fazer a interface de um nó definido pelo usuário
em C para Java e fazer um wrapper dele em JNI.Isso é devido ao
intermediário inicializar internamente uma JVM, a qual não
está disponível através da interface da extensão definida pelo
usuário. A JVM é inicializada com vários parâmetros que são
específicos dos requisitos do intermediário.
Como existe somente uma JVM em um processo, quem a inicializa
primeiro especifica esses parâmetros. Se um nó definido pelo usuário
utilizar Java e o intermediário for inicializado primeiro,
esses parâmetros podem não ser adequados para o nó definido pelo
usuário. Se o nó definido pelo usuário criar a JVM antes do intermediário
iniciar, o intermediário pode não funcionar corretamente.
- Os nós definidos pelo usuário podem ser implementados no WebSphere Event
Broker.
Quando criar nós definidos pelo usuário para usuários do WebSphere Event
Broker, é necessário assegurar que
não será exposta aos usuários a capacidade de avaliar código ESQL.
Por exemplo, os nós que expõem a entrada para MbSQLStatement como um atributo de nó estariam efetivamente emulando um nó compute. A utilização de ESQL
no WebSphere Event
Broker não é suportada.
- Os nós de entrada definidos pelo usuário podem suportar apenas os analisadores XML, BLOB e do MQ.
- Evite
utilizar as funções específicas do sistema operacional. Isso permite que as extensões definidas pelo usuário
funcionem em uma variedade de plataformas sem requerer alterações no
código-fonte.
A tabela a seguir mostra os tópicos que devem ser lidos com base no tipo de
extensão definida pelo usuário que você deseja criar: