iBOLT sem limites: SDK

Manoel Frederico da Silva / Product Manager & MAGIC Evangelist / Magic Software Brasil

O iBOLT é uma ferramenta de BPMS para automação, gerenciamento e extensão (personalização) de processos de negócio. Algumas das qualidades do iBOLT são:

  • Suporte a múltiplas plataformas e múltiplas bases de dados
  • Designer gráfico de projetos (code-free)
  • Extensa biblioteca de componentes

Estas são características já conhecidas, pois são amplamente difundidas e anunciadas.

Contudo, toda ferramenta desta natureza precisa ter um recurso que é essencial para o sucesso de seus projetos: adaptabilidade. Esta certeza de adaptabilidade é garantida no iBOLT através do seu SDK.

De fato, o SDK iBOLT não contradiz em nada a facilidade, eficiência, velocidade e não-codificação. Muito pelo contrário. No mundo da integração e automação, inúmeros são os desafios ‘inesperados’ que podem ser encontrados em função da dinâmica dos processos empresarias e das tecnologias/soluções disponíveis. O SDK iBOLT garante que em todas as circunstâncias o projeto será viável e o sucesso, atingido.

Basicamente, o SDK iBOLT permite a criação de componentes no fluxo de integração, interagindo com o iBOLT Server e os demais componentes da biblioteca.

O SDK iBOLT possui três interfaces: .NET, UniPaaS e Java.

 

 

1)   SDK .NET

Inicialmente, deve-se definir no iBOLT Studio qual o editor de componentes SDK .NET, através do menu “Tools – Class Types”:

Na pasta de instalação do iBOLT, há um assembly .NET chamado “iBOLTInvoker.dll”. Ele faz a ligação entre o iBOLT Server e o seu componente .NET, e por ter a interface CCW, necessita ser registrado no MS-Windows cfe. segue: RegAsm /tlb:iBOLTInvoker.tlb iBOLTInvoker.dll

 

(NOTA: este registro deve ser feita tanto em ambiente de desenvolvimento, quanto em produção. Obviamente, usar o iBOLT SDK .NET vai exigir a presença do MS.NET FrameWork na máquina)

Uma vez que estas duas etapas sejam concluídas, utiliza-se o componente “.NET Service” do iBOLT Studio para criar/programar o seu componente dentro do fluxo de integração iBOLT:

O botão “Generate” cria o projeto .NET dentro da pasta do seu projeto iBOLT:

E o botão “Edit” abre o editor que foi configurado anteriormente, para então fazer-se a criação/programação deste componente personalizado:

A classe .NET deve herdar da classe padrão “IBFlowComponent”. O método realmente significativo desta classe é o “Invoke”. Ele é que será chamado pelo iBOLT Server no momento da execução deste componente dentro fluxo. O método “Invoke” recebe automaticamente do iBOLT Server um argumento do tipo “IBFlowContext”. Este objeto possui vários métodos para interagir com o contexto do fluxo que está sendo executado, como acessar as várias iBOLT (globais, contexto, fluxo), acessar o ODS, UserBlob, UserString, etc.

Ao gerar-se o “build” do componente .NET, normalmente o Studio utilizado criará os assemblies na pasta “Bin/Release”:

Para que o iBOLT Server possa executar este componente, é necessário copiar os assemblies gerados para a pasta “Bin” do componente (uma acima):

2)   SDK UniPaaS

Esta interface do SDK é conceitualmente similar a anterior (acima), exceto que ela se baseia na ferramenta UniPaaS para criação do novo componente. O UniPaaS Studio é distribuído/incluído gratuitamente com o iBOLT Studio.

Uma vez que o UniPaaS Studio tenha sido configurado como o editor de componentes UniPaaS (menu “Tools – Class Types”), utiliza-se o componente “UniPaaS” do iBOLT Studio para criar/programar o seu componente dentro do fluxo de integração iBOLT:

O botão “Edit” abre o editor que foi configurado anteriormente, para então fazer-se a criação/programação deste componente personalizado:

Ao gerar-se o “build” do componente UniPaaS, deve-se orientar o UniPaaS Studio a criar o .ECF na pasta do próprio componente:

O componente UniPaaS também possui acesso as variáveis iBOLT (globais, contexto, fluxo), ODS, UserBlob, UserString, etc.

3)   SDK Java

Esta interface do SDK é um pouco diferente das anteriores. Ela pressupõe a pré-existência de uma (ou várias) classes Java a serem utilizadas (não há um editor Java integrado ao iBOLT Studio) no fluxo de integração. Estas classes devem estar empacotadas em um arquivo .JAR, e este “jar” deve ser acessível tanto ao iBOLT Studio (para desenvolvimento) quanto para o iBOLT Server (para execução). Esta configuração de onde localizar os arquivos .JAR necessários pode ser feita no ‘MAGIC.INI’ do iBOLT:

(NOTA: a variável de ambiente “CLASSPATH” é incluída automaticamente na lista de pesquisa de classes Java, pelo iBOLT)

Uma vez que as classes Java estejam acessíveis ao iBOLT (tanto Studio quanto Server), utiliza-se o componente “Java Class Connector” do iBOLT Studio para selecionar a classe  a utilizar dentro do fluxo de integração iBOLT:

Caso esteja criando uma instância do objeto Java, deve-se definir uma variável BLOB do iBOLT, para guardar a referência a este objeto. Isto é feito no botão “Object Reference”.

O botão “Method” permite selecionar quais métodos da classe deverão ser invocados pelo iBOLT Server:

(NOTA: se não for definido um “object reference”, só os métodos estáticos da classe (SM_*) estarão disponíveis. Do contrário, serão listados (disponibilizados) também os métodos de instância da classe (IM_*).

Vimos portanto três formas distintas e poderosas de ampliar os recursos da biblioteca iBOLT, comprovando (na prática) a adaptabilidade e poder de resultado dos seus projetos.

Neste link está disponível um pequeno projeto exemplo das interfaces do iBOLT SDK, usando iBOLT 3.2 sp2.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *