Classe utilizada para executar a API-REST (negócio), encapsulando toda tratativa de EPC, controle de ERRO e padronizando o retorno das informações para o FrontEnd.
Esta classe pode ser utilizada diretamente, mas o ideal é utilizá-la através das includes de execução: utp/ut-api-exec-<EVENTO>.i (ver detalhes aqui).
Propriedades Estáticas
Nome | Descrição | Opções Disponíveis |
|---|---|---|
Tipo de Método | Indica qual o Método da API-REST será executado, com base nesta informação a classe irá realizar os tratamentos relacionados aos eventos de EPC, parâmetros passados para a API-REST, tipo de retorno, etc. |
|
Tipo de Retorno | Indica o tipo de retorno do método, podendo ser um objeto ou uma lista de informações. |
|
Construtor
Nome | Descrição |
|---|---|
JsonAPIExecution ( pMethodType ) Parâmetro:
Retorno (JsonAPIExecution): Instância da classe. | Com base no método enviado, serão realizado os tratamentos necessários com relação a EPC, controle de erro, mensagem de retorno, etc. Exemplo executionAPI = NEW JsonAPIExecution(JsonAPIExecution:METHOD_CUSTOM). |
Métodos
Nome | Descrição |
|---|---|
setInputRequest ( pInput ) Parâmetros:
Retorno: Não há. | Passa para a classe o objeto input da requisição. Exemplo executionAPI:setInputRequest(oInput). |
setBusinessAPI ( pBusinessAPI , pBusinessPI ) Parâmetros:
Retorno: Não há. | Passa para a classe a API-REST (negócio) e a PI interna que devem ser executadas. Exemplo executionAPI:setBusinessAPI("area/rules/entityRules.p",
"pi-atz-pagto-v1").
|
setEPCInformation ( pProgramAPI , pEndpoint , pProgramDPC, pProgramAPPC, pProgramUPC ) Parâmetros:
Retorno: Não há. | Passa para a classe as informações necessárias para execução das EPC's. Exemplo executionAPI:setEPCInformation(THIS-PROCEDURE:FILE-NAME,
"atualizPagto",
c-nom-prog-dpc-mg97,
c-nom-prog-appc-mg97,
c-nom-prog-upc-mg97).
|
setReturnType ( pReturnType ) Parâmetros:
Retorno: Não há. | Passa para a classe o tipo de retorno do método. Exemplo executionAPI:setReturnType(JsonAPIExecution:RETURN_OBJECT). |
executeAPI ( ) Parâmetros: Não há. Retorno (JsonObject): Objeto de retorno da API-REST (negócio) que será enviado para o FrontEnd (oOutput). | Solicita a classe que faça a execução da API-REST (negócio) e devolve o objeto que será enviado para o FrontEnd. Exemplo oOutput = executionAPI:executeAPI(). |
DEFINE VARIABLE executionAPI AS JsonAPIExecution NO-UNDO.
// Instancia da Classe conforme o Método
executionAPI = NEW JsonAPIExecution(JsonAPIExecution:METHOD_CUSTOM).
// Atualização dos Parâmetros
executionAPI:setInputRequest(oInput).
executionAPI:setBusinessAPI("area/rules/entityRules.p",
"pi-atz-pagto-v1").
executionAPI:setEPCInformation(THIS-PROCEDURE:FILE-NAME,
"atualizPagto",
c-nom-prog-dpc-mg97,
c-nom-prog-appc-mg97,
c-nom-prog-upc-mg97).
executionAPI:setReturnType(JsonAPIExecution:RETURN_OBJECT).
// Execução
oOutput = executionAPI:executeAPI().
// Retira a Classe da Memória
DELETE OBJECT executionAPI.