com.ibm.carma.ui.job
Class CustomActionJob<T extends CustomActionAccepter>

java.lang.Object
  extended by org.eclipse.core.runtime.PlatformObject
      extended by org.eclipse.core.internal.jobs.InternalJob
          extended by org.eclipse.core.runtime.jobs.Job
              extended by com.ibm.carma.ui.job.AbstractCarmaJob
                  extended by com.ibm.carma.ui.job.CustomActionJob<T>
All Implemented Interfaces:
java.lang.Comparable, org.eclipse.core.runtime.IAdaptable
Direct Known Subclasses:
CheckinJob, CheckoutJob, LockJob, UnlockJob

public class CustomActionJob<T extends CustomActionAccepter>
extends AbstractCarmaJob

Thic class is useful for creating a simple job to perform an action.

This Job when run will execute the performCommand action for each object passed into the Constructor. The Job will ensure that the connection is active and will handle Exceptions thrown by the performCommand method.

This class is intended to be subclassed. Extenders should override the performCommand method.


Field Summary
static java.lang.String COPYRIGHT
           
 
Fields inherited from class org.eclipse.core.runtime.jobs.Job
ASYNC_FINISH, BUILD, DECORATE, INTERACTIVE, LONG, NONE, RUNNING, SHORT, SLEEPING, WAITING
 
Constructor Summary
CustomActionJob(java.lang.String name, java.lang.String actionId, T[] resources)
          Creates a CustomActionJob
 
Method Summary
 CARMAReturn performCommand(T resource, org.eclipse.core.runtime.IProgressMonitor monitor)
          By default this method calls the generic perform command action, but can be overriden to call any method on the passed CARMA Resource
 
Methods inherited from class com.ibm.carma.ui.job.AbstractCarmaJob
displayCustomReturns, displayCustomReturns, displayCustomReturns, displayCustomReturns, getActionFromReturns, getActionName
 
Methods inherited from class org.eclipse.core.runtime.jobs.Job
addJobChangeListener, belongsTo, cancel, done, getJobManager, getName, getPriority, getProperty, getResult, getRule, getState, getThread, isBlocking, isSystem, isUser, join, removeJobChangeListener, schedule, schedule, setName, setPriority, setProgressGroup, setProperty, setRule, setSystem, setThread, setUser, shouldRun, shouldSchedule, sleep, wakeUp, wakeUp
 
Methods inherited from class org.eclipse.core.internal.jobs.InternalJob
compareTo, toString
 
Methods inherited from class org.eclipse.core.runtime.PlatformObject
getAdapter
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
 

Field Detail

COPYRIGHT

public static final java.lang.String COPYRIGHT
See Also:
Constant Field Values
Constructor Detail

CustomActionJob

public CustomActionJob(java.lang.String name,
                       java.lang.String actionId,
                       T[] resources)
Creates a CustomActionJob

Parameters:
name - The name of the Job
actionId - The actionId being performed by this Job
resources - The resources being acted upon
Method Detail

performCommand

public CARMAReturn performCommand(T resource,
                                  org.eclipse.core.runtime.IProgressMonitor monitor)
                           throws org.eclipse.core.runtime.CoreException,
                                  NotConnectedException,
                                  UnsupportedCARMAOperationException,
                                  NotSynchronizedException
By default this method calls the generic perform command action, but can be overriden to call any method on the passed CARMA Resource

Extenders are responsible for filling the custom parameters of the called action.

Parameters:
resource -
monitor -
Returns:
the CARMAReturn value associated with the call
Throws:
org.eclipse.core.runtime.CoreException
NotConnectedException
UnsupportedCARMAOperationException
NotSynchronizedException
See Also:
CustomActionUtil, CustomActionParameterDialog, CustomActionParameterManager