Package hudson.slaves

Class SimpleScheduledRetentionStrategy

All Implemented Interfaces:
ExtensionPoint, Describable<RetentionStrategy<?>>

public class SimpleScheduledRetentionStrategy extends RetentionStrategy<SlaveComputer>
RetentionStrategy that controls the agent based on a schedule.
Since:
1.275
Author:
Stephen Connolly
  • Constructor Details

    • SimpleScheduledRetentionStrategy

      @DataBoundConstructor public SimpleScheduledRetentionStrategy(String startTimeSpec, int upTimeMins, boolean keepUpWhenActive)
      Parameters:
      startTimeSpec - the crontab entry to be parsed
      Throws:
      IllegalArgumentException - if the crontab entry cannot be parsed
  • Method Details

    • getUpTimeMins

      public int getUpTimeMins()
    • isKeepUpWhenActive

      public boolean isKeepUpWhenActive()
    • getStartTimeSpec

      public String getStartTimeSpec()
    • readResolve

      protected Object readResolve() throws ObjectStreamException
      Throws:
      ObjectStreamException
    • isManualLaunchAllowed

      public boolean isManualLaunchAllowed(SlaveComputer c)
      Description copied from class: RetentionStrategy
      This method is called to determine whether manual launching of the agent is allowed right now.
      Overrides:
      isManualLaunchAllowed in class RetentionStrategy<SlaveComputer>
      Parameters:
      c - Computer for which this strategy is assigned. This computer may be online or offline. This object also exposes a bunch of properties that the callee can use to decide if manual launching is allowed.
      Returns:
      true if manual launching of the agent is allowed right now.
    • isAcceptingTasks

      public boolean isAcceptingTasks(SlaveComputer c)
      Description copied from class: RetentionStrategy
      Returns true if the computer is accepting tasks. Needed to allow retention strategies programmatic suspension of task scheduling that in preparation for going offline. Called by Computer.isAcceptingTasks()
      Overrides:
      isAcceptingTasks in class RetentionStrategy<SlaveComputer>
      Parameters:
      c - the computer.
      Returns:
      true if the computer is accepting tasks
      See Also:
    • check

      public long check(SlaveComputer c)
      Description copied from class: RetentionStrategy
      This method will be called periodically to allow this strategy to decide what to do with its owning agent.
      Specified by:
      check in class RetentionStrategy<SlaveComputer>
      Parameters:
      c - Computer for which this strategy is assigned. This computer may be online or offline. This object also exposes a bunch of properties that the callee can use to decide what action to take.
      Returns:
      The number of minutes after which the strategy would like to be checked again. The strategy may be rechecked earlier or later than this!