Rational Developer for Power Systems Software
V7.6

com.ibm.etools.iseries.remotebuild.actions
Class PushAction

java.lang.Object
  extended by Action
      extended by com.ibm.etools.iseries.remotebuild.actions.RBAction
          extended by com.ibm.etools.iseries.remotebuild.actions.ResourceAction
              extended by com.ibm.etools.iseries.remotebuild.actions.PushAction
Direct Known Subclasses:
PushChangesAction, PushSelectedAction

public abstract class PushAction
extends ResourceAction

PushAction is the abstract superclass of any action that pushes a list of resources to a host system. It provides the skeleton operation and various utility functions for use by subclasses.

Push actions will check for dirty editors prior to running.

The selection used by this action consists of AbstractISeriesResources. The selection may span multiple projects. Each project is pushed individually.

The resource on the target system is checked prior to its local counterpart being pushed. If there is a conflict -- then a conflict resolution dialog a presented if a shell has been set. If there is no shell, then the pushed takes place.

Setting the properties of a resource may or may not be possible. If not a dialog is presented if setting the property on the target caused a problem. The dialog is shown only if a shell is present.


Field Summary
static String copyright
           
 
Constructor Summary
PushAction()
           
 
Method Summary
protected abstract  RBStatus checkResources(List deltas)
          Checks a list of deltas just prior to being pushed.
protected abstract  Collection<String> getPushedProperties(RBResourceDelta delta)
           
protected abstract  String getTaskName()
          Gets the name of this task for display in the progress monitor.
protected  void markDescendants(RBResourceDelta delta, RBMarking marking)
          Marks a resource's descendants using the supplied marking as a template.
protected abstract  void markResources(RBResourceDelta delta)
          Propagates the intent marks in the delta tree.
 void run()
          Run the action.
 void setProgressMonitor(IProgressMonitor mon)
           
protected  void verifyAncestors(RBResourceDelta delta)
          Propagates an intent marking to a delta's ancestors.
 
Methods inherited from class com.ibm.etools.iseries.remotebuild.actions.ResourceAction
connect, getSelection, setSelection
 
Methods inherited from class com.ibm.etools.iseries.remotebuild.actions.RBAction
getRunnableContext, getShell, getStatus, isCanceled, setCanceled, setRunnableContext, setShell, setStatus, showStatusMessage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

copyright

public static final String copyright
See Also:
Constant Field Values
Constructor Detail

PushAction

public PushAction()
Method Detail

checkResources

protected abstract RBStatus checkResources(List deltas)
Checks a list of deltas just prior to being pushed. Returns an OK status if the push may proceed. If an error status is returned the message is displayed and the operation terminates after the user dismisses the dialog.


getTaskName

protected abstract String getTaskName()
Gets the name of this task for display in the progress monitor.


getPushedProperties

protected abstract Collection<String> getPushedProperties(RBResourceDelta delta)

setProgressMonitor

public void setProgressMonitor(IProgressMonitor mon)

run

public final void run()
Run the action.


verifyAncestors

protected final void verifyAncestors(RBResourceDelta delta)
Propagates an intent marking to a delta's ancestors.


markDescendants

protected final void markDescendants(RBResourceDelta delta,
                                     RBMarking marking)
Marks a resource's descendants using the supplied marking as a template. Does not mark the resource itself.


markResources

protected abstract void markResources(RBResourceDelta delta)
Propagates the intent marks in the delta tree.


Rational Developer for Power Systems Software
V7.6

Copyright © 2011 IBM Corp. All Rights Reserved.

Note: This documentation is for part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.