|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectgr.uoa.di.madgik.execution.plan.element.PlanElementBase
gr.uoa.di.madgik.execution.plan.element.ConditionalPlanElement
public class ConditionalPlanElement
This class represents a set of flows that are only executed in case their respective conditions are met.
The element follows the known pattern of if (IfFlow) / else if
(ElseIfFlows) / else (ElseFlow) construct.
The if (IfFlow) and else if (ElseIfFlows) flows
are only executed in case their respective conditions are met. The else flow (ElseFlow)
can be left null. When the execution is started, the conditions of the ConditionalFlows are initialized
using the ConditionalFlow.InitializeCondition() method. After that the if (IfFlow)
/ else if (ElseIfFlows) conditions are evaluated in turn until the first condition
that is evaluated o true is found. The respective flow is executed. If none of the conditions are met, the else flow
(ElseFlow) is executed if it is available.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class gr.uoa.di.madgik.execution.plan.element.PlanElementBase |
|---|
PlanElementBase.ClockType |
| Nested classes/interfaces inherited from interface gr.uoa.di.madgik.execution.plan.element.IPlanElement |
|---|
IPlanElement.PlanElementType |
| Field Summary | |
|---|---|
IPlanElement |
ElseFlow
The Else flow. |
List<ConditionalFlow> |
ElseIfFlows
The Else if flows. |
ConditionalFlow |
IfFlow
The If flow. |
| Constructor Summary | |
|---|---|
ConditionalPlanElement()
|
|
| Method Summary | |
|---|---|
void |
ExecuteExtender(ExecutionHandle Handle)
Execute extender. |
void |
FromXML(Element XML)
Populate the element from its xml serialization as returned by IPlanElement.ToXML() |
void |
FromXML(String XML)
Populate the element from its xml serialization as returned by IPlanElement.ToXML() |
List<ContingencyTrigger> |
GetContingencyTriggers()
Gets the contingency triggers. |
org.slf4j.Logger |
GetExtenderLogger()
Gets the extender logger. |
String |
GetID()
Gets the id. |
Set<String> |
GetModifiedVariableNames()
Gets the modified variable names of the element and of the elements contained. |
String |
GetName()
Gets the name. |
Set<String> |
GetNeededVariableNames()
Gets the needed variable names of the element and of the elements contained. |
IPlanElement.PlanElementType |
GetPlanElementType()
Gets the plan element type. |
IPlanElement |
Locate(String ID)
Locate the plan element with the provided id. |
Set<IPlanElement> |
LocateActionElements()
Retrieves the Action elements under this elements |
void |
SetContingencyResourcePick(ExecutionHandle Handle,
String Pick)
Sets the picked resource in case the IContingencyReaction.ReactionType#Pick reaction is supported |
void |
SetName(String Name)
Sets the name. |
IContingencyReaction.ReactionType[] |
SupportedContingencyTriggers()
Retrieves the supported contingency triggers. |
boolean |
SupportsContingencyTriggers()
Checks if the element supports contingency triggers. |
String |
ToXML()
Serialize to xml the element and all its contained elements |
void |
Validate()
Validate the element and any sub element it contains |
void |
ValidatePreExecution(ExecutionHandle Handle)
Validate the element and any sub element it contains before it is executed |
| Methods inherited from class gr.uoa.di.madgik.execution.plan.element.PlanElementBase |
|---|
CheckStatus, Execute, ExecuteWithStateAwareness, GetPerformanceEvent, RegisterToRunningActionElementsRestriction, ResetClocks, StartClock, StopClock, UnregisterToRunningActionElementsRestriction, update |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public ConditionalFlow IfFlow
public List<ConditionalFlow> ElseIfFlows
public IPlanElement ElseFlow
| Constructor Detail |
|---|
public ConditionalPlanElement()
| Method Detail |
|---|
public void FromXML(String XML)
throws ExecutionSerializationException
IPlanElementIPlanElement.ToXML()
XML - the xML serialization
ExecutionSerializationException - A serialization error occurred
public void FromXML(Element XML)
throws ExecutionSerializationException
IPlanElementIPlanElement.ToXML()
XML - the xML serialization
ExecutionSerializationException - A serialization error occurredpublic String GetID()
IPlanElement
public String GetName()
IPlanElement
public IPlanElement.PlanElementType GetPlanElementType()
IPlanElement
public IPlanElement Locate(String ID)
IPlanElement
ID - the iD
public Set<IPlanElement> LocateActionElements()
IPlanElement
public void SetName(String Name)
IPlanElement
Name - the name
public String ToXML()
throws ExecutionSerializationException
IPlanElement
ExecutionSerializationException - A serialization error occurred
public void Validate()
throws ExecutionValidationException
IPlanElement
ExecutionValidationException - A validation error occurredpublic IContingencyReaction.ReactionType[] SupportedContingencyTriggers()
IPlanElement
public boolean SupportsContingencyTriggers()
IPlanElement
public List<ContingencyTrigger> GetContingencyTriggers()
IPlanElement
public void SetContingencyResourcePick(ExecutionHandle Handle,
String Pick)
throws ExecutionRunTimeException
IPlanElementIContingencyReaction.ReactionType#Pick reaction is supported
Handle - the execution handle handlePick - the picked resource
ExecutionRunTimeException - A runtime error occurredpublic Set<String> GetNeededVariableNames()
IPlanElement
public Set<String> GetModifiedVariableNames()
IPlanElement
public org.slf4j.Logger GetExtenderLogger()
PlanElementBase
GetExtenderLogger in class PlanElementBase
public void ExecuteExtender(ExecutionHandle Handle)
throws ExecutionRunTimeException,
ExecutionInternalErrorException,
ExecutionCancelException,
ExecutionBreakException
PlanElementBase
ExecuteExtender in class PlanElementBaseHandle - the execution handle
ExecutionRunTimeException - A runtime error occurred
ExecutionInternalErrorException - An internal error occurred
ExecutionCancelException - The execution was canceled
ExecutionBreakException - The execution was terminated
public void ValidatePreExecution(ExecutionHandle Handle)
throws ExecutionValidationException
IPlanElement
Handle - the execution handle
ExecutionValidationException - A validation error occurred
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||