org.apache.oozie.action.control
Class ControlNodeActionExecutor
java.lang.Object
org.apache.oozie.action.ActionExecutor
org.apache.oozie.action.control.ControlNodeActionExecutor
- Direct Known Subclasses:
- EndActionExecutor, ForkActionExecutor, JoinActionExecutor, KillActionExecutor, StartActionExecutor
public abstract class ControlNodeActionExecutor
- extends ActionExecutor
Base action executor for control nodes: START/END/KILL/FORK/JOIN
This action executor, similar to FsActionExecutor
, is completed during the
ActionExecutor.start(Context, WorkflowAction)
.
By hooking control nodes to an action executor, control nodes get WF action entries in the DB.
Methods inherited from class org.apache.oozie.action.ActionExecutor |
convertException, disableInit, enableInit, getActionDir, getActionDirPath, getActionSignal, getMaxRetries, getOozieConf, getOozieRuntimeDir, getOozieSystemId, getRetryInterval, getType, initActionType, registerError, resetInitInfo, setMaxRetries, setRetryInterval |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ControlNodeActionExecutor
public ControlNodeActionExecutor(String type)
start
public void start(ActionExecutor.Context context,
org.apache.oozie.client.WorkflowAction action)
throws ActionExecutorException
- Description copied from class:
ActionExecutor
- Start an action. The
ActionExecutor.Context.setStartData(java.lang.String, java.lang.String, java.lang.String)
method must be called within this method. If the
action has completed, the ActionExecutor.Context.setExecutionData(java.lang.String, java.util.Properties)
method must be called within this method.
- Specified by:
start
in class ActionExecutor
- Parameters:
context
- executor context.action
- the action to start.
- Throws:
ActionExecutorException
- thrown if the action could not start.
end
public void end(ActionExecutor.Context context,
org.apache.oozie.client.WorkflowAction action)
throws ActionExecutorException
- Description copied from class:
ActionExecutor
- End an action after it has executed. The
ActionExecutor.Context.setEndData(org.apache.oozie.client.WorkflowAction.Status, java.lang.String)
method must be called within this
method.
- Specified by:
end
in class ActionExecutor
- Parameters:
context
- executor context.action
- the action to end.
- Throws:
ActionExecutorException
- thrown if the action could not end.
check
public void check(ActionExecutor.Context context,
org.apache.oozie.client.WorkflowAction action)
throws ActionExecutorException
- Description copied from class:
ActionExecutor
- Check if an action has completed. This method must be implemented by Async Action Executors. If the action
has completed, the
ActionExecutor.Context.setExecutionData(java.lang.String, java.util.Properties)
method must be called within this method. If the action
has not completed, the ActionExecutor.Context.setExternalStatus(java.lang.String)
method must be called within this method.
- Specified by:
check
in class ActionExecutor
- Parameters:
context
- executor context.action
- the action to end.
- Throws:
ActionExecutorException
- thrown if the action could not be checked.
kill
public void kill(ActionExecutor.Context context,
org.apache.oozie.client.WorkflowAction action)
throws ActionExecutorException
- Description copied from class:
ActionExecutor
- Kill an action. The
ActionExecutor.Context.setEndData(org.apache.oozie.client.WorkflowAction.Status, java.lang.String)
method must be called within this method.
- Specified by:
kill
in class ActionExecutor
- Parameters:
context
- executor context.action
- the action to kill.
- Throws:
ActionExecutorException
- thrown if the action could not be killed.
isCompleted
public boolean isCompleted(String externalStatus)
- Description copied from class:
ActionExecutor
- Return if the external status indicates that the action has completed.
- Specified by:
isCompleted
in class ActionExecutor
- Parameters:
externalStatus
- external status to check.
- Returns:
- if the external status indicates that the action has completed.
Copyright © 2013 Apache Software Foundation. All Rights Reserved.