Class DefaultJobLeaderIdService

  • All Implemented Interfaces:
    JobLeaderIdService

    public class DefaultJobLeaderIdService
    extends Object
    implements JobLeaderIdService
    Service which retrieves for a registered job the current job leader id (the leader id of the job manager responsible for the job). The leader id will be exposed as a future via the getLeaderId(JobID). The future will only be completed with an exception in case the service will be stopped.
    • Method Detail

      • start

        public void start​(JobLeaderIdActions initialJobLeaderIdActions)
                   throws Exception
        Description copied from interface: JobLeaderIdService
        Start the service with the given job leader actions.
        Specified by:
        start in interface JobLeaderIdService
        Parameters:
        initialJobLeaderIdActions - to use for job leader id actions
        Throws:
        Exception - which is thrown when clearing up old state
      • isStarted

        public boolean isStarted()
        Checks whether the service has been started.
        Returns:
        True if the service has been started; otherwise false
      • clear

        public void clear()
                   throws Exception
        Description copied from interface: JobLeaderIdService
        Stop and clear the currently registered job leader id listeners.
        Specified by:
        clear in interface JobLeaderIdService
        Throws:
        Exception - which is thrown in case a retrieval service cannot be stopped properly
      • addJob

        public void addJob​(JobID jobId)
                    throws Exception
        Description copied from interface: JobLeaderIdService
        Add a job to be monitored to retrieve the job leader id.
        Specified by:
        addJob in interface JobLeaderIdService
        Parameters:
        jobId - identifying the job to monitor
        Throws:
        Exception - if the job could not be added to the service
      • removeJob

        public void removeJob​(JobID jobId)
                       throws Exception
        Description copied from interface: JobLeaderIdService
        Remove the given job from being monitored by the service.
        Specified by:
        removeJob in interface JobLeaderIdService
        Parameters:
        jobId - identifying the job to remove from monitor
        Throws:
        Exception - if removing the job fails
      • containsJob

        public boolean containsJob​(JobID jobId)
        Description copied from interface: JobLeaderIdService
        Check whether the given job is being monitored or not.
        Specified by:
        containsJob in interface JobLeaderIdService
        Parameters:
        jobId - identifying the job
        Returns:
        True if the job is being monitored; otherwise false
      • isValidTimeout

        public boolean isValidTimeout​(JobID jobId,
                                      UUID timeoutId)
        Description copied from interface: JobLeaderIdService
        Checks whether the given timeoutId for the given jobId is valid or not.
        Specified by:
        isValidTimeout in interface JobLeaderIdService
        Parameters:
        jobId - jobId identifying the job for which the timeout should be checked
        timeoutId - timeoutId specifying the timeout which should be checked for its validity
        Returns:
        true if the timeout is valid; otherwise false