Class ScheduledJobLockExecuter


  • public class ScheduledJobLockExecuter
    extends Object
    This class encapsulates the JobLockService usage in order to guarantee that a job is not executed simultaneously in more than one node in a cluster. After instantiated passing in constructor job to be executed, as well as the name of the to be locked job and the JobLockService, the execute method of this class will execute the job taking care of all cluster aware lockings.

    This code is based on original code by Derek Hulley on ContentStoreCleaner, extracting the generic locking code in order to be reused and avoid code duplication.

    Since:
    4.1.5
    Author:
    Rui Fernandes
    • Method Detail

      • execute

        public void execute​(org.quartz.JobExecutionContext jobContext)
                     throws org.quartz.JobExecutionException
        It will execute the job passed on instantiation taking care of all cluster aware lockings.
        Parameters:
        jobContext - the usual quartz job context
        Throws:
        org.quartz.JobExecutionException - thrown if the job fails to execute