public class DefaultPlanManager extends java.lang.Object implements PlanManager
PlanManager
.
Encapsulates the plan and a strategy for executing that plan.Modifier and Type | Method and Description |
---|---|
static DefaultPlanManager |
createInterrupted(Plan plan)
Creates a new plan manager for the provided
Plan , which will be set to an interrupted state. |
static DefaultPlanManager |
createProceeding(Plan plan)
Creates a new plan manager for the provided
Plan , which will not be set to an interrupted state. |
java.util.Collection<? extends Step> |
getCandidates(java.util.Collection<PodInstanceRequirement> dirtyAssets)
Determines the next
Step s that should be considered for scheduling. |
java.util.Set<PodInstanceRequirement> |
getDirtyAssets()
Returns a
Set of assets that are dirty, i.e. |
Plan |
getPlan() |
void |
update(Protos.TaskStatus status)
Notifies constituent elements of TaskStatus updates.
|
public static DefaultPlanManager createProceeding(Plan plan)
Plan
, which will not be set to an interrupted state.public static DefaultPlanManager createInterrupted(Plan plan)
Plan
, which will be set to an interrupted state.public Plan getPlan()
getPlan
in interface PlanManager
public java.util.Collection<? extends Step> getCandidates(java.util.Collection<PodInstanceRequirement> dirtyAssets)
PlanManager
Step
s that should be considered for scheduling. Step
s that are being selected
by other PlanManager
s are provided as dirtyAssets
as a hint to this PlanManager
to assist
with scheduling.getCandidates
in interface PlanManager
dirtyAssets
- Other Step
s/assets that are already claimed for scheduling elsewhereStep
s that can be scheduled or an empty Collection when there is no Step
to
schedule, which may happen if for example all incomplete Step
s are already being worked on by
other PlanManager
spublic void update(Protos.TaskStatus status)
PlanManager
update
in interface PlanManager
status
- A TaskStatus from Mesos.public java.util.Set<PodInstanceRequirement> getDirtyAssets()
PlanManager
Set
of assets that are dirty, i.e. being worked upon by the Plan
that this
PlanManager
is working on.getDirtyAssets
in interface PlanManager
Set
containing assets that are dirty