O cronapp permite que novos componentes para o bloco de programação ( cliente ) sejam criados. É possível criar esses novos componentes dentro da própria plataforma e de acordo com a necessidade de cada projeto.
Pré-requisitos
Antes de começar a seguir os passos do tutorial é preciso ter certeza de que se tem um ambiente minimamente preparado para reproduzir o exemplo. Abaixo estão os requisitos principais.
Requisitos:
- Projeto do tipo mobile criado. Caso haja dúvidas de como criar esse tipo de projeto acesse o link ( Criar novo projeto );
Visão Geral
Nesse tutorial iremos criar um componente, que obtém a quantidade de itens que uma lista possui, para os blocos de programação do tipo servidor.
Passos
1 - Criar diretório
Criar um novo diretório que irá conter a classe java referente ao componente. Faz parte da boa prática de desenvolvimento criar diretórios ou arquivos referentes ao bloco de programação do tipo servidor no diretório Códigos Fonte Servidor.
Figura 1 - Criação do diretório
2 - Criar classe java
O diretório criado deve receber um novo arquivo do tipo Java, Diretório>Novo>Java (Figura 2). Após selecionada a opção a IDE irá exibir a tela de escolha do modelo do arquivo. Para o caso da criação de componentes, o modelo correto é o Nova Função para Bloco de Programação como pode ser visto na (Figura 3). O botão Avançar confirma a seleção do modelo e exibe a tela de definição das informações.
Figura 2 - Criação da classe java
Figura 3 - Escolha do modelo do arquivo
3 - Definir informações do componente
O componente a ser criado pode ter as seguintes informações definidas: Nome da classe, Nome da função, Nome reduzido da função, Descrição da função e Categoria.
Figura 4 - Definindo informações sobre o componente
Informações da função
Nome da classe - MenorValorLista
Nome da função - obterMenorValorLista
Nome reduzido da função - obMenVaList
Descrição da função - Função que retorna o menor valor contido em uma lista
Categoria - Obter Valor
4 - Alterar parâmetros do componente(função)
A geração do código base para o componente vem com alguns parâmetros padrões, como por exemplo: type, returnType e Var input. Esses valores não são fixos e podem ser alterados. Ver Figura 5.
Mais sobre
type- Tipo do parâmetro de entrada da função
description- Descrição do parâmetro de entrada da função
returnType- Tipo do parâmetro de saída da função
Var input- Variável do tipo Var de nome input - (O nome da variável pode ser alterado mas indica-se manter seu tipo como Var)
Exemplo de definição do tipo do parâmetro:
type = ObjectType.STRING
Figura 5 - Estrutura interna do componente
Figura 6 - Alguns dos tipos de parâmetro que podem ser utilizados
Figura 7 - Alguns dos métodos contidos em uma instância de um objeto do tipo Var
5 - Adicionar código
Após a adequação dos parâmetros, o código referente a funcionalidade pode ser adicionado ao corpo da função. Nesse exemplo, o código que retorna o menor valor contido em uma lista é o seguinte:
Optional<Var> opt = list.getObjectAsList().stream().min(Comparator.comparingLong(Var::getObjectAsLong)); return opt.get();
Figura 8 - Código adicionado ao corpo da função referente a funcionalidade do componente
6 - Acessar a função
O último passo após a inserção do código no componente é a visualização desta função como disponível para utilização no bloco de programação.
Figura 9 - Função sendo exibida em sua respectiva categoria no bloco de programação
Passo 7 - Exibição de informações
É possível visualizar as informações definidas durante o desenvolvimento da função passando-se o ponteiro do mouse sobre o componente (Figura 10).
Figura 10 - Exibição das informações da função