Package hudson.slaves
Class SimpleScheduledRetentionStrategy
- java.lang.Object
-
- hudson.model.AbstractDescribableImpl<RetentionStrategy<?>>
-
- hudson.slaves.RetentionStrategy<SlaveComputer>
-
- hudson.slaves.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
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SimpleScheduledRetentionStrategy.DescriptorImpl
-
Nested classes/interfaces inherited from class hudson.slaves.RetentionStrategy
RetentionStrategy.Always, RetentionStrategy.Demand
-
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
-
-
Field Summary
-
Fields inherited from class hudson.slaves.RetentionStrategy
INSTANCE, LIST, NOOP
-
-
Constructor Summary
Constructors Constructor Description SimpleScheduledRetentionStrategy(String startTimeSpec, int upTimeMins, boolean keepUpWhenActive)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description long
check(SlaveComputer c)
This method will be called periodically to allow this strategy to decide what to do with its owning agent.String
getStartTimeSpec()
int
getUpTimeMins()
boolean
isKeepUpWhenActive()
boolean
isManualLaunchAllowed(SlaveComputer c)
This method is called to determine whether manual launching of the agent is allowed right now.protected Object
readResolve()
-
Methods inherited from class hudson.slaves.RetentionStrategy
all, isAcceptingTasks, start
-
Methods inherited from class hudson.model.AbstractDescribableImpl
getDescriptor
-
-
-
-
Constructor Detail
-
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 Detail
-
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 classRetentionStrategy<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.
-
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 classRetentionStrategy<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!
-
-