public class ActionCheckXCommand extends ActionXCommand<Void>
Ensures the action is in
RUNNING state before executing
ActionExecutor.check(org.apache.oozie.action.ActionExecutor.Context, org.apache.oozie.client.WorkflowAction)
ActionXCommand.ActionExecutorContext, ActionXCommand.ForkedActionExecutorContext| Modifier and Type | Field and Description |
|---|---|
static String |
EXEC_DATA_MISSING |
RECOVERY_ID_SEPARATOR, RETRYINSTR_FAILED_JOBS_COUNTER_NAME, INSTR_KILLED_JOBS_COUNTER_NAME, INSTR_SUCCEEDED_JOBS_COUNTER_NAME, KEEP_WF_ACTION_DIRDEFAULT_LOCK_TIMEOUT, DEFAULT_REQUEUE_DELAY, dryrun, eventService, instrumentation, LOG| Constructor and Description |
|---|
ActionCheckXCommand(String actionId) |
ActionCheckXCommand(String actionId,
int checkDelay) |
ActionCheckXCommand(String actionId,
int priority,
int checkDelay) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
eagerLoadState()
Load the necessary state to perform an eager precondition check.
|
protected void |
eagerVerifyPrecondition()
Verify the precondition for the command before obtaining a lock.
|
protected Void |
execute()
Command execution body.
|
String |
getEntityKey()
Return the entity key for the command.
|
String |
getKey()
Get command key
|
protected long |
getRetryInterval() |
protected boolean |
isLockRequired()
Indicate if the the command requires locking.
|
protected void |
loadState()
Load the necessary state to perform the precondition check and to execute the command.
|
protected void |
setLogInfo()
Set the thread local logInfo with the context of this command and reset log prefix.
|
protected void |
verifyPrecondition()
Verify the precondition for the command after a lock has been obtain, just before executing the command.
|
addActionCron, failJob, failJob, handleError, handleNonTransient, handleTransient, handleUserRetry, incrActionCounter, queueCommandForTransientFailuregenerateEvent, generateEvent, generateEvent, updateParentIfNecessary, updateParentIfNecessarycall, executeInterrupts, getCreatedTime, getInstrumentation, getLockTimeOut, getLog, getName, getPriority, getRequeueDelay, getType, inInterruptMode, isReQueueRequired, queue, queue, resetUsed, setInterruptMode, toStringpublic static final String EXEC_DATA_MISSING
public ActionCheckXCommand(String actionId)
public ActionCheckXCommand(String actionId, int priority, int checkDelay)
public ActionCheckXCommand(String actionId, int checkDelay)
protected void setLogInfo()
XCommandsetLogInfo in class XCommand<Void>protected void eagerLoadState() throws CommandException
XCommandThis implementation does a NOP.
Subclasses should override this method and load the state needed to do an eager precondition check.
A trivial implementation is calling {link #loadState}.
eagerLoadState in class XCommand<Void>CommandExceptionprotected void eagerVerifyPrecondition() throws CommandException, PreconditionException
XCommandThis implementation does a NOP.
A trivial implementation is calling {link #verifyPrecondition}.
eagerVerifyPrecondition in class XCommand<Void>CommandException - thrown if the precondition is not met.PreconditionExceptionprotected boolean isLockRequired()
XCommandSubclasses should override this method if they require locking.
isLockRequired in class XCommand<Void>true/falsepublic String getEntityKey()
XCommandgetEntityKey in interface XCallable<Void>getEntityKey in class XCommand<Void>protected void loadState() throws CommandException
XCommandSubclasses must implement this method and load the state needed to do the precondition check and execute the command.
loadState in class XCommand<Void>CommandExceptionprotected void verifyPrecondition() throws CommandException, PreconditionException
XCommandverifyPrecondition in class XCommand<Void>CommandException - thrown if the precondition is not met.PreconditionExceptionprotected Void execute() throws CommandException
XCommandThis method will be invoked after the {link #loadState} and {link #verifyPrecondition} methods.
If the command requires locking, this method will be invoked ONLY if the lock has been acquired.
execute in class XCommand<Void>CommandException - thrown if the command execution failed.protected long getRetryInterval()
Copyright © 2018 Apache Software Foundation. All rights reserved.