Interface SchedulerService

All Known Implementing Classes:
DefaultSchedulerService

public interface SchedulerService
Provides Scheduler related services.
Author:
Glenn Renfro
  • Method Summary

    Modifier and Type
    Method
    Description
    org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo
    getSchedule(String scheduleName)
    Retrieves the ScheduleInfo for the specified ScheduleName from the default platform.
    org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo
    getSchedule(String scheduleName, String platformName)
    Retrieves the ScheduleInfo for the specified ScheduleName.
    List<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo>
    List all of the schedules registered with the default platform up to the established maximum as specified SchedulerServiceProperties.maxSchedulesReturned.
    List<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo>
    list(String taskDefinitionName)
    List all of the Schedules associated with the provided TaskDefinition for the default platform up to the established maximum as specified SchedulerServiceProperties.maxSchedulesReturned.
    List<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo>
    list(String taskDefinitionName, String platformName)
    List all of the Schedules associated with the provided TaskDefinition up to the established maximum as specified SchedulerServiceProperties.maxSchedulesReturned.
    org.springframework.data.domain.Page<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo>
    list(org.springframework.data.domain.Pageable pageable)
    List all of the schedules registered with the default platform.
    org.springframework.data.domain.Page<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo>
    list(org.springframework.data.domain.Pageable pageable, String platformName)
    List all of the schedules registered with the system.
    List<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo>
    list(org.springframework.data.domain.Pageable pageable, String taskDefinitionName, String platformName)
    List all of the Schedules associated with the provided TaskDefinition.
    List<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo>
    listForPlatform(String platformName)
    List all of the schedules registered with the system up to the established maximum as specified SchedulerServiceProperties.maxSchedulesReturned.
    void
    schedule(String scheduleName, String taskDefinitionName, Map<String,String> taskProperties, List<String> commandLineArgs)
    Schedules the task specified with the taskDefinitionName with the default platform specific scheduler.
    void
    schedule(String scheduleName, String taskDefinitionName, Map<String,String> taskProperties, List<String> commandLineArgs, String platformName)
    Schedules the task specified with the taskDefinitionName with the platform specific scheduler.
    void
    unschedule(String scheduleName)
    Unschedule a schedule that has been created for the default platform.
    void
    unschedule(String scheduleName, String platformName)
    Unschedule a schedule that has been created.
    void
    unscheduleForTaskDefinition(String taskDefinitionName)
    Unschedule all schedules that have been created for this task definition name.
  • Method Details

    • schedule

      void schedule(String scheduleName, String taskDefinitionName, Map<String,String> taskProperties, List<String> commandLineArgs, String platformName)
      Schedules the task specified with the taskDefinitionName with the platform specific scheduler. To setup the task with the scheduler set the properties required to process the schedule within the taskProperties map. Each scheduler property should be prefixed with "spring.cloud.scheduler.". The schedule expression (cron for example) are specified within the task properties using the "spring.cloud.scheduler.cron.expression" as the key and the associated value would be the cron expression to be used.
      Parameters:
      scheduleName - A name to be associated with the schedule.
      taskDefinitionName - the name of the TaskDefinition to be scheduled.
      taskProperties - properties required for scheduling or launching a task.
      commandLineArgs - the command line args to be used when launching the task.
      platformName - the name of the platform where the schedule should be created.
    • schedule

      void schedule(String scheduleName, String taskDefinitionName, Map<String,String> taskProperties, List<String> commandLineArgs)
      Schedules the task specified with the taskDefinitionName with the default platform specific scheduler. To setup the task with the scheduler set the properties required to process the schedule within the taskProperties map. Each scheduler property should be prefixed with "spring.cloud.scheduler.". The schedule expression (cron for example) are specified within the task properties using the "spring.cloud.scheduler.cron.expression" as the key and the associated value would be the cron expression to be used.
      Parameters:
      scheduleName - A name to be associated with the schedule.
      taskDefinitionName - the name of the TaskDefinition to be scheduled.
      taskProperties - properties required for scheduling or launching a task.
      commandLineArgs - the command line args to be used when launching the task.
    • unschedule

      void unschedule(String scheduleName)
      Unschedule a schedule that has been created for the default platform.
      Parameters:
      scheduleName - the name of the schedule to be removed.
    • unschedule

      void unschedule(String scheduleName, String platformName)
      Unschedule a schedule that has been created.
      Parameters:
      scheduleName - the name of the schedule to be removed.
      platformName - the name of the platform from where the schedule will be destroyed.
    • unscheduleForTaskDefinition

      void unscheduleForTaskDefinition(String taskDefinitionName)
      Unschedule all schedules that have been created for this task definition name.
      Parameters:
      taskDefinitionName - the name of the task definition.
    • list

      List<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo> list(org.springframework.data.domain.Pageable pageable, String taskDefinitionName, String platformName)
      List all of the Schedules associated with the provided TaskDefinition.
      Parameters:
      pageable - Establish the pagination setup for the result set.
      taskDefinitionName - to retrieve Schedules for a specified taskDefinitionName.
      platformName - name of platform from which the schedules will be retrieved.
      Returns:
      A List of Schedules configured for the provided taskDefinitionName.
    • list

      org.springframework.data.domain.Page<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo> list(org.springframework.data.domain.Pageable pageable, String platformName)
      List all of the schedules registered with the system.
      Parameters:
      pageable - Establish the pagination setup for the result set.
      platformName - the name of the platform where schedules will be obtained.
      Returns:
      Paged items of schedules.
    • list

      org.springframework.data.domain.Page<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo> list(org.springframework.data.domain.Pageable pageable)
      List all of the schedules registered with the default platform.
      Parameters:
      pageable - Establish the pagination setup for the result set.
      Returns:
      Paged items of schedules.
    • list

      List<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo> list(String taskDefinitionName, String platformName)
      List all of the Schedules associated with the provided TaskDefinition up to the established maximum as specified SchedulerServiceProperties.maxSchedulesReturned.
      Parameters:
      taskDefinitionName - to retrieve Schedules for a specified taskDefinitionName.
      platformName - the name of the platform where schedules will be retrieved.
      Returns:
      A List of Schedules configured for the provided taskDefinitionName.
    • list

      List<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo> list(String taskDefinitionName)
      List all of the Schedules associated with the provided TaskDefinition for the default platform up to the established maximum as specified SchedulerServiceProperties.maxSchedulesReturned.
      Parameters:
      taskDefinitionName - to retrieve Schedules for a specified taskDefinitionName.
      Returns:
      A List of Schedules configured for the provided taskDefinitionName.
    • listForPlatform

      List<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo> listForPlatform(String platformName)
      List all of the schedules registered with the system up to the established maximum as specified SchedulerServiceProperties.maxSchedulesReturned.
      Parameters:
      platformName - the name for the platform where schedules will be retrieved.
      Returns:
      A List of Schedules for the given system.
    • list

      List<org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo> list()
      List all of the schedules registered with the default platform up to the established maximum as specified SchedulerServiceProperties.maxSchedulesReturned.
      Returns:
      A List of Schedules for the given system.
    • getSchedule

      org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo getSchedule(String scheduleName, String platformName)
      Retrieves the ScheduleInfo for the specified ScheduleName.
      Parameters:
      scheduleName - the name of schedule to retrieve.
      platformName - the name of the platform where this schedule will be obtained.
      Returns:
      ScheduleInfo for the scheduleName passed in.
    • getSchedule

      org.springframework.cloud.deployer.spi.scheduler.ScheduleInfo getSchedule(String scheduleName)
      Retrieves the ScheduleInfo for the specified ScheduleName from the default platform.
      Parameters:
      scheduleName - the name of schedule to retrieve.
      Returns:
      ScheduleInfo for the scheduleName passed in.