org.apache.oozie.command.bundle
Class BundleStartXCommand

java.lang.Object
  extended by org.apache.oozie.command.XCommand<T>
      extended by org.apache.oozie.command.TransitionXCommand<Void>
          extended by org.apache.oozie.command.StartTransitionXCommand
              extended by org.apache.oozie.command.bundle.BundleStartXCommand
All Implemented Interfaces:
Callable<Void>, XCallable<Void>

public class BundleStartXCommand
extends StartTransitionXCommand

The command to start Bundle job


Field Summary
 
Fields inherited from class org.apache.oozie.command.TransitionXCommand
insertList, job, updateList
 
Fields inherited from class org.apache.oozie.command.XCommand
DEFAULT_LOCK_TIMEOUT, DEFAULT_REQUEUE_DELAY, dryrun, eventService, instrumentation, INSTRUMENTATION_GROUP, LOG, logInfo
 
Constructor Summary
BundleStartXCommand(String jobId)
          The constructor for class BundleStartXCommand
BundleStartXCommand(String jobId, boolean dryrun)
          The constructor for class BundleStartXCommand
 
Method Summary
 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.
 String getEntityKey()
          Return the entity key for the command.
 org.apache.oozie.client.Job getJob()
          Get the Job for the command.
 String getKey()
          Get command key
protected  boolean isLockRequired()
          Indicate if the the command requires locking.
 void loadState()
          Load the necessary state to perform the precondition check and to execute the command.
 void notifyParent()
          This will be used to notify the parent about the status of that perticular job.
 void performWrites()
          This will be used to perform atomically all the writes within this command.
 void StartChildren()
          Start actions associated with the job
 void updateJob()
          Update the parent job.
protected  void verifyPrecondition()
          Verify the precondition for the command after a lock has been obtain, just before executing the command.
 
Methods inherited from class org.apache.oozie.command.StartTransitionXCommand
execute, transitToNext
 
Methods inherited from class org.apache.oozie.command.TransitionXCommand
generateEvents, setJob
 
Methods inherited from class org.apache.oozie.command.XCommand
call, executeInterrupts, getCreatedTime, getInstrumentation, getLockTimeOut, getLog, getName, getPriority, getRequeueDelay, getType, inInterruptMode, isReQueueRequired, queue, queue, resetUsed, setInterruptMode
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BundleStartXCommand

public BundleStartXCommand(String jobId)
The constructor for class BundleStartXCommand

Parameters:
jobId - the bundle job id

BundleStartXCommand

public BundleStartXCommand(String jobId,
                           boolean dryrun)
The constructor for class BundleStartXCommand

Parameters:
jobId - the bundle job id
dryrun - true if dryrun is enable
Method Detail

getEntityKey

public String getEntityKey()
Description copied from class: XCommand
Return the entity key for the command.

Specified by:
getEntityKey in interface XCallable<Void>
Specified by:
getEntityKey in class XCommand<Void>
Returns:
the entity key for the command.

getKey

public String getKey()
Description copied from class: XCommand
Get command key

Specified by:
getKey in interface XCallable<Void>
Overrides:
getKey in class XCommand<Void>
Returns:
command key

isLockRequired

protected boolean isLockRequired()
Description copied from class: XCommand
Indicate if the the command requires locking.

Subclasses should override this method if they require locking.

Specified by:
isLockRequired in class XCommand<Void>
Returns:
true/false

verifyPrecondition

protected void verifyPrecondition()
                           throws CommandException,
                                  PreconditionException
Description copied from class: XCommand
Verify the precondition for the command after a lock has been obtain, just before executing the command.

Specified by:
verifyPrecondition in class XCommand<Void>
Throws:
CommandException - thrown if the precondition is not met.
PreconditionException

eagerVerifyPrecondition

protected void eagerVerifyPrecondition()
                                throws CommandException,
                                       PreconditionException
Description copied from class: XCommand
Verify the precondition for the command before obtaining a lock.

This implementation does a NOP.

A trivial implementation is calling {link #verifyPrecondition}.

Overrides:
eagerVerifyPrecondition in class XCommand<Void>
Throws:
CommandException - thrown if the precondition is not met.
PreconditionException

loadState

public void loadState()
               throws CommandException
Description copied from class: XCommand
Load the necessary state to perform the precondition check and to execute the command.

Subclasses must implement this method and load the state needed to do the precondition check and execute the command.

Specified by:
loadState in class XCommand<Void>
Throws:
CommandException

eagerLoadState

public void eagerLoadState()
                    throws CommandException
Description copied from class: XCommand
Load the necessary state to perform an eager precondition check.

This 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}.

Overrides:
eagerLoadState in class XCommand<Void>
Throws:
CommandException

StartChildren

public void StartChildren()
                   throws CommandException
Description copied from class: StartTransitionXCommand
Start actions associated with the job

Specified by:
StartChildren in class StartTransitionXCommand
Throws:
CommandException - thrown if failed to start actions

notifyParent

public void notifyParent()
Description copied from class: TransitionXCommand
This will be used to notify the parent about the status of that perticular job.

Specified by:
notifyParent in class TransitionXCommand<Void>

performWrites

public void performWrites()
                   throws CommandException
Description copied from class: TransitionXCommand
This will be used to perform atomically all the writes within this command.

Specified by:
performWrites in class TransitionXCommand<Void>
Throws:
CommandException

getJob

public org.apache.oozie.client.Job getJob()
Description copied from class: TransitionXCommand
Get the Job for the command.

Overrides:
getJob in class TransitionXCommand<Void>
Returns:
the job

updateJob

public void updateJob()
               throws CommandException
Description copied from class: TransitionXCommand
Update the parent job.

Specified by:
updateJob in class TransitionXCommand<Void>
Throws:
CommandException


Copyright © 2013 Apache Software Foundation. All Rights Reserved.