Páginas filhas
  • Intellector 9 - API - Criação de Plugin

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

    • No arquivo JSON:
      • Definir as propriedades com os dados de configuração do plugin externo, caso existam. Como não se sabe inicialmente quais são esses dados, definir no arquivo JSON de exemplo as propriedades mais comuns: protocolo (HTTP, HTTPS, TCP, etc), host, porta e objeto no servidor; atualmente só http/servlet é suportado. Essas propriedades poderão ser configuradas na interface do Intellector na edição do plugin.
        • "properties": {
          "database": "mango_d",
          "usuario": "user",
          "senha": "senha",
          "audita": true
          }
      • Definir os dados de entrada para chamada do acesso de acordo com o layout pré estabelecido pelo órgão e, que receberá o layout montado pela classe anterior e fará o acesso e retornará a classe com o layout de saída;
    • As estruturas das classes Java que deverão ser programadas para cada plugin externo:
    • As classes, se for o caso, de implementação do plugin externo, para que o desenvolvedor possa programar o acesso externo propriamente dito;
    • Uma classe que fará o parser do retorno do órgão externo e montará o VO com as variáveis de resposta, que será chamada pela classe que efetuou o acesso;
    • Parametrizar no arquivo POM.XML as propriedades necessárias para correta geração do plugin. Essas confiogurações serã utilizadas para, por exemplo, a geração do META-INF/MANIFEST.MF.
      • <main-class> : classe principal do plugin, ou seja, a classe a ser instanciada pelo Intellector Server. 
      • <pluginname> : nome do plugin
      • <description> : uma descrição do plugin
      • <primarykey> : chave a ser usada para a persistência da execução do plugin. Normalmente é uma das variáveis de entrada do plugin e será usada como referência do uso de cache.
      • <pkdescription>: descrição da chave
      • <layoutpath>: caminho para o arquivo json de configuração do plugin.
      • <pluginlib> : indicação se é um plugin ou uma lib para uso por outros plugins.  P - plugin / L - lib para plugin
    • Para consultar o plugin de acesso é necessário determinar as chaves primárias para que futuramente o plugin de acesos seja armazenado em uma base de dados, portanto as variáveis primarykey e pkdescription deverão ser informados no arquivo de manifesto, i.e. META-INF/MANIFEST.MF, sendo o campo primarykey as chaves no HashMap de entrada do acesso mais importantes da consulta separados por ',' para que sejam consultados na funcionalidade Consultar Resultados de Plugin de Acesso e o campo pkdescription um nome mais amigável para que seja listado na funcionalidade também separado por ',' na mesma sequência descrita no campo primarykey;
    • Criar um novo projeto no Eclipse, tendo como base/exemplo o dummyplugin no diretório base de onde os artefatos foram gerados.
    • É obrigatório informar no layout de saída nas variáveis  XXX e  YYYY a string que foi enviada no request e a string que foi retornada do request. Caso o plugin não tenha essas informações deixe-as vazias.
      • hashOut.put("LPT__PLUGIN_ENVIO", "STRING REQUEST");
      • hashOut.put("LPT__PLUGIN_RETORNO", "STRING RETORNO");

Exemplo do MANIFEST.MF : 

...