java.lang.Object
org.springframework.batch.core.configuration.support.GroupAwareJob
All Implemented Interfaces:
Job

public class GroupAwareJob extends Object implements Job
A Job that can optionally prepend a group name to another job's name, to make it fit a naming convention for type or origin. For example, the source job might be overnightJob and the group might be financeDepartment, which would result in a Job with identical functionality but named financeDepartment.overnightJob . The use of a "." separator for elements is deliberate, since it is a "safe" character in a URL.
Author:
Dave Syer, Mahmoud Ben Hassine
  • Constructor Details

    • GroupAwareJob

      public GroupAwareJob(Job delegate)
      Create a new Job with the delegate and no group name.
      Parameters:
      delegate - a delegate for the features of a regular Job
    • GroupAwareJob

      public GroupAwareJob(@Nullable String groupName, Job delegate)
      Create a new Job with the given group name and delegate.
      Parameters:
      groupName - the group name to prepend (can be null)
      delegate - a delegate for the features of a regular Job
  • Method Details

    • execute

      public void execute(JobExecution execution)
      Description copied from interface: Job
      Run the JobExecution and update the meta information, such as status and statistics, as necessary. This method should not throw any exceptions for failed execution. Clients should be careful to inspect the JobExecution status to determine success or failure.
      Specified by:
      execute in interface Job
      Parameters:
      execution - a JobExecution
    • getName

      public String getName()
      Concatenates the group name and the delegate job name (joining with a ".").
      Specified by:
      getName in interface Job
      See Also:
    • isRestartable

      public boolean isRestartable()
      Description copied from interface: Job
      Flag to indicate if this job can be restarted, at least in principle.
      Specified by:
      isRestartable in interface Job
      Returns:
      true if this job can be restarted after a failure. Defaults to true.
    • getJobParametersIncrementer

      @Nullable public JobParametersIncrementer getJobParametersIncrementer()
      Description copied from interface: Job
      If clients need to generate new parameters for the next execution in a sequence, they can use this incrementer. The return value may be null, when this job does not have a natural sequence.
      Specified by:
      getJobParametersIncrementer in interface Job
      Returns:
      an incrementer to be used for creating new parameters. Defaults to null.
    • getJobParametersValidator

      public JobParametersValidator getJobParametersValidator()
      Description copied from interface: Job
      A validator for the job parameters of a JobExecution. Clients of a Job may need to validate the parameters for a launch or before or during the execution.
      Specified by:
      getJobParametersValidator in interface Job
      Returns:
      a validator that can be used to check parameter values (never null). Defaults to DefaultJobParametersValidator.
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object