Exponer el controlador HTTP
Esta sección le guiará sobre cómo exponer un controlador HTTP en su aplicación Persistent Scheduler, para que las operaciones del Persistent Scheduler puedan accederse externamente.
Además, le mostrará cómo registrar un SchedulingHelper para manejar un SchedulingCommand.
Para conectarse y enviar solicitudes a su aplicación externa de Persistent Scheduler usando las librerías de cliente, por favor vea la página Client Library.
| Esto presupone que ya tiene una aplicación Persistent Scheduler en ejecución. Si necesita configurar una, siga Embedded Implementation. |
Paso 1: Agregar dependencia
Importe scheduler-http-controller para obtener el Spring HTTP Controller en su aplicación Persistent Scheduler:
<dependency>
<groupId>com.iconsolutions.ipf.core.platform</groupId>
<artifactId>scheduler-http-controller</artifactId>
</dependency>
Paso 2: Cree un SchedulingHelper y defínalo como un Spring bean
Esta es la clase que recibirá una notificación para ejecutar su trabajo en un momento específico con el SchedulingCommand proporcionado. Los SchedulingCommand se envían en las solicitudes HTTP a través de Client Library.
public static class MySchedulingHelper implements SchedulingHelper {
@Override
public CompletionStage<Void> execute(String id, SchedulingCommand command) {
//do some really important work here that can possibly take a long time...or not?
log.info("Look I'm being scheduled! The ID was: {}", id);
return CompletableFuture.completedFuture(null);
}
@Override
public boolean supports(SchedulingCommand command) {
return command instanceof MyCommand;
}
}
También deberá definirlo como un bean:
@Bean
public SchedulingHelper mySchedulingHelper() {
return new MySchedulingHelper();
}
En el ejemplo anterior MyCommand es la implementación de SchedulingCommand que definimos en Programación de su primer trabajo (a través de la biblioteca de cliente HTTP). Depende de usted definir la implementación de SchedulingCommand.
|
Paso 3: Programe su primer trabajo
¡Su aplicación ahora está lista para recibir su primera solicitud HTTP!
Para enviar solicitudes usando la librería de cliente, siga las instrucciones en la página Client Library.
Para enviar solicitudes HTTP usando su propia implementación de cliente, consulte la página Persistent Scheduler OpenAPI Specification.