Utilización de OpenAPI
Puede generar un cliente desde un archivo OpenAPI creado para un conjunto de reglas de servicio de decisiones.
Antes de empezar
La aplicación cliente debe pasar las credenciales de autenticación para el portal de nube.
Importante:
Puede utilizar Swagger Editor u otras herramientas Swagger de código abierto
para generar un cliente en tu lenguaje preferido, por ejemplo: C®#, Go, Apache Groovy, JavaScript, PHP, Python, Ruby, Scala, Swift, o TypeScript.
Acerca de esta tarea
Para llamar a un conjunto de reglas de servicio de decisiones desde una aplicación cliente, cree clases de proxy a partir de un archivo OpenAPI generado para una vía de acceso de conjunto de reglas.
Procedimiento
- Obtenga un archivo OpenAPI para un conjunto de reglas de servicio de decisiones.
- Genere clases proxy desde el archivo OpenAPI.
- Utilice las clases proxy para invocar el conjunto de reglas desde la aplicación cliente.
Ejemplo
Para obtener el archivo OpenAPI de Rule Execution Server:
- Despliegue el conjunto de reglas de servicio de decisiones en Servidor de ejecución de reglas.
- En la consola de Servidor de ejecución de reglas , vaya a la pestaña Explorador .
- En el panel Navegador, pulse una RuleApp y a continuación pulse un conjunto de reglas correspondiente al servicio de decisiones.
- En la Vista de conjunto de reglas, pulse Recuperar archivo de descripción HTDS.
- Seleccione REST como tipo de protocolo de servicio.
- Seleccione OpenAPI – YAML o OpenAPI – JSON como formato para generar un archivo OpenAPI en formato YAML o JSON.
- Seleccione Versión más reciente del conjunto de reglas y Versión más reciente de RuleApp para generar el archivo OpenAPI para las versiones más recientes.
- Pulse Descargar.
Para generar las clases proxy en Swagger Editor:
- Abra http://editor.swagger.io/
en un navegador web. - Haz clic en .
- Pulse Examinar para seleccionar el archivo OpenAPI y luego pulse Abrir.
- Haga clic en Importar.
- Haga clic en .
El siguiente ejemplo de código Java™ importa las clases de proxy generadas en el editor Swagger para un conjunto de reglas y llama al conjunto de reglas desde una aplicación Java:
import java.util.List;
import io.swagger.client.ApiClient;
import io.swagger.client.ApiException;
import io.swagger.client.model.Borrower;
import io.swagger.client.model.Loan;
import io.swagger.client.model.Request;
import io.swagger.client.model.Response;
public class DecisionServiceExecution {
public static void main(String[] args) {
ApiClient apiClient = new ApiClient();
// Replace "loginID" with the ID of a user who has access to the Cloud portal
apiClient.setUsername("loginID");
// Replace "password" with the password of a user who has access to the Cloud portal
apiClient.setPassword("password");
DefaultApi api = new DefaultApi(apiClient);
// Create the request
Request request = new Request();
// Set the borrower
Borrower borrower = new Borrower();
borrower.setName("John");
borrower.setCreditScore(600);
borrower.setYearlyIncome(80000);
request.setBorrower(borrower);
// Set the loan
Loan loan = new Loan();
loan.setAmount(500000);
loan.setDuration(240);
loan.setYearlyInterestRate(0.05);
// approved (set to true by default, to be computed by the decision engine)
loan.setApproved(true);
request.setLoan(loan);
// Retrieve the response
try {
Response response = api.callDecisionOperation(request);
System.out.println("Rules executed.");
System.out.println("Approved: " + response.getLoan().getApproved());
System.out.println("Yearly interest rate: " + response.getLoan().getYearlyInterestRate());
System.out.println("Yearly repayment: " + response.getLoan().getYearlyRepayment());
List<String> messages = response.getLoan().getMessages();
if (messages != null) {
System.out.println("Messages: ");
for (String message : messages) {
System.out.println(message);
}
}
} catch (ApiException e) {
throw new RuntimeException("An error occurred when invoking Decision Service", e);
}
}
}