Uma das opções de interceptors customizados que a plataforma da Sensedia disponibiliza é o intercetor Java. Com ele, podemos manipular o que desejarmos e até efetuarmos outras chamadas em tempo de execução do fluxo da chamada interceptada por nosso gateway. Para adicioná-lo no Manager basta gerar o arquivo .jar do projeto e efetuar o upload na plataforma.
Requisitos
Existem alguns requisitos para que esse interceptor seja aceito e funcione corretamente no Manager, e aqui vão eles:
- O interceptor deve ser implementado em Java 8 com o uso da openJDK;
- O interceptor pode depender apenas do que utilizamos em nossa plataforma (consultar no arquivo em anexo);
- O arquivo .jar gerado não pode ultrapassar 1Mb;
- No projeto deve conter ao menos uma classe com a anotação @ApiSuiteInterceptor;
- No projeto deve conter ao menos um método com a anotação @InterceptorMethod;
- Não deve conter outros .jar dentro do arquivo.
- É necessário fazer o uso desta dependência.
Um erro comum é no momento de compilar o código fonte no arquivo jar, ter selecionado além da pasta src pastas como bin e target. Isso pode gerar referências 'inválidas' a outros arquivos pom e outros jars. Nesse caso é necessário apenas a referencia do src.
Build
O build do projeto em si é bem simples. Uma das maneiras de efetuar esse build é utilizando o Maven. Para isso, basta isolar em uma pasta o arquivo pom e a pasta src do projeto. Após feito isso, é necessário apenas acessar a pasta com os itens indicados e executar o comando mvn clean package. Com isso, o .jar já estará gerado.
Upload na plataforma
Para enviar o interceptor para a plataforma e poder utilizá-lo, se faz necessário o acesso ao menu Interceptors, localizado a esquerda da interface do Manager. Após isso, basta posicionar o mouse no botão com o símbolo de "+" e selecionar a opção "create custom java", simbolizada pelo símbolo do java (xícara de café). Nos depararemos então com a seguinte interface:
Preencha os campos que são bem intuitivos e clique em Save. Pronto, o seu interceptor já está disponível na plataforma para ser utilizado.
Utilizando
Na interface de edição do fluxo da API, você localizará o interceptor java na aba referente a tag preenchida no upload do interceptor. Para utilizá-lo, basta arrastá-lo no ponto desejado do fluxo e selecionar o método que deseja executar. É possível também definir parâmetros estáticos, pois os dinâmicos podem ser acessados diretamente através do código Java do interceptor, tendo em vista que o parâmetro de call (ApiCallData) o Manager já preenche automaticamente.
Já sabendo todo o processo de implementação e utilização do interceptor, basta implementar o seu. E para facilitar, aqui vão alguns exemplos.
Comentários
0 comentário
Por favor, entre para comentar.