wt.workflow.engine
Class ActivityActivityLink

java.lang.Object
  extended bywt.fc.WTObject
      extended bywt.fc.ObjectToObjectLink
          extended bywt.workflow.engine.WfLink
              extended bywt.workflow.engine.ActivityActivityLink
All Implemented Interfaces:
BinaryLink, DisplayIdentification, Externalizable, Link, NetFactor, ObjectMappable, Persistable, Serializable

public class ActivityActivityLink
extends WfLink
implements Externalizable

The ActivityActivityLink represents associations between workflow steps. An ActivityActivityLink maintains a map between transitions in the source activity to transitions in the destination activity. This mapping is stored internally (eventActionMap) and is consulted whenever the receiveEvent method is executed. If a match is found the mapped transition is attempted at the destination activity.

Use the newActivityActivityLink static factory method(s), not the ActivityActivityLink constructor, to construct instances of this class. Instances must be constructed using the static factory(s), in order to ensure proper initialization of the instance.



Supported API: false

Extendable: false

See Also:
Serialized Form

Field Summary
private static String CLASSNAME
           
static String DESTINATION_ROLE
          Label for the attribute.
static long EXTERNALIZATION_VERSION_UID
           
protected static long OLD_FORMAT_VERSION_UID
           
private static String RESOURCE
           
(package private) static long serialVersionUID
           
static String SOURCE_ROLE
          Label for the attribute.
 
Fields inherited from class wt.workflow.engine.WfLink
BACK_LOOP, EVENT_ACTION_MAP, TEMPLATE
 
Fields inherited from class wt.fc.ObjectToObjectLink
ROLE_AOBJECT_REF, ROLE_BOBJECT_REF
 
Fields inherited from class wt.fc.WTObject
CREATE_TIMESTAMP, MODIFY_TIMESTAMP
 
Fields inherited from interface wt.fc.BinaryLink
ALL_ROLES, BOTH_ROLES, ROLE_AOBJECT_ROLE, ROLE_BOBJECT_ROLE
 
Fields inherited from interface wt.fc.Persistable
IDENTITY, PERSIST_INFO, TYPE
 
Fields inherited from interface wt.identity.DisplayIdentification
DISPLAY_IDENTIFIER, DISPLAY_IDENTITY, DISPLAY_TYPE
 
Constructor Summary
ActivityActivityLink()
           
 
Method Summary
 boolean equals(Object obj)
          Indicates whether the given object is equal to this object from a persistence perspective, by comparing the two objects ObjectIdentifiers.
 String getConceptualClassname()
          Deprecated.  
 WfActivity getDestination()
          Gets the object for the association that plays role: DESTINATION_ROLE.
 WfActivity getSource()
          Gets the object for the association that plays role: SOURCE_ROLE.
 int hashCode()
          Returns a hash code for this object based upon its ObjectIdentifier.
protected  void initialize(NodeTemplateLink template, WfNode source, WfNode destination)
          Supports initialization, following construction of an instance.
static ActivityActivityLink newActivityActivityLink(NodeTemplateLink template, WfNode source, WfNode destination)
          Constructs an ActivityActivityLink object given the template and the source and destination steps.
 void readExternal(ObjectInput input)
          Reads the non-transient fields of this class from an external source.
 void readExternal(PersistentRetrieveIfc input)
          Used by Persistent Data Service to populate the persistent attributes of this class from a persistent store.
private  boolean readOldVersion(ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source, which is not the current version.
protected  boolean readVersion(ActivityActivityLink thisObject, ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source.
 void receiveEvent(Object event)
          Processes events in the source by finding the corresponding action (if there is one) and activating the destination.
 void setDestination(WfActivity destination)
          Sets the object for the association that plays role: DESTINATION_ROLE.
 void setSource(WfActivity source)
          Sets the object for the association that plays role: SOURCE_ROLE.
 String toString()
          Returns a string representation of the execution object.
 void writeExternal(ObjectOutput output)
          Writes the non-transient fields of this class to an external source.
 void writeExternal(PersistentStoreIfc output)
          Used by Persistent Data Service to obtain the values of the persistent attributes of this class, so they can be written to a persistent store.
 
Methods inherited from class wt.workflow.engine.WfLink
getEventActionMap, getTemplate, isBackLoop, readVersion, receiveEventImmediate, setBackLoop, setEventActionMap, setTemplate
 
Methods inherited from class wt.fc.ObjectToObjectLink
appendJoinCriteria, appendRoleCriteria, duplicate, getAllObjects, getJoinValues, getLinkInfo, getObject, getOtherObject, getRemoteRoleAObjectId, getRemoteRoleBObjectId, getRole, getRoleAObject, getRoleAObjectId, getRoleAObjectRef, getRoleBObject, getRoleBObjectId, getRoleBObjectRef, getRoleIdName, getRoleObject, initialize, isRoleANonpersistentProxy, isRoleBNonpersistentProxy, readVersion, setRoleAObject, setRoleAObjectRef, setRoleBObject, setRoleBObjectRef, setRoleObject
 
Methods inherited from class wt.fc.WTObject
checkAttributes, finalize, getClassInfo, getCreateTimestamp, getDisplayIdentifier, getDisplayIdentity, getDisplayType, getIdentity, getModifyTimestamp, getPersistInfo, getType, initialize, readVersion, setPersistInfo
 
Methods inherited from class java.lang.Object
clone, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface wt.fc.Persistable
checkAttributes, getIdentity, getPersistInfo, getType, setPersistInfo
 
Methods inherited from interface wt.fc.NetFactor
getClassInfo
 

Field Detail

RESOURCE

private static final String RESOURCE
See Also:
Constant Field Values

CLASSNAME

private static final String CLASSNAME

SOURCE_ROLE

public static final String SOURCE_ROLE
Label for the attribute.

Supported API: false

See Also:
Constant Field Values

DESTINATION_ROLE

public static final String DESTINATION_ROLE
Label for the attribute.

Supported API: false

See Also:
Constant Field Values

serialVersionUID

static final long serialVersionUID
See Also:
Constant Field Values

EXTERNALIZATION_VERSION_UID

public static final long EXTERNALIZATION_VERSION_UID
See Also:
Constant Field Values

OLD_FORMAT_VERSION_UID

protected static final long OLD_FORMAT_VERSION_UID
See Also:
Constant Field Values
Constructor Detail

ActivityActivityLink

public ActivityActivityLink()
Method Detail

writeExternal

public void writeExternal(ObjectOutput output)
                   throws IOException
Writes the non-transient fields of this class to an external source.

Supported API: false

Specified by:
writeExternal in interface Externalizable
Overrides:
writeExternal in class WfLink
Parameters:
output -
Throws:
IOException

readExternal

public void readExternal(ObjectInput input)
                  throws IOException,
                         ClassNotFoundException
Reads the non-transient fields of this class from an external source.

Supported API: false

Specified by:
readExternal in interface Externalizable
Overrides:
readExternal in class WfLink
Parameters:
input -
Throws:
IOException
ClassNotFoundException

readVersion

protected boolean readVersion(ActivityActivityLink thisObject,
                              ObjectInput input,
                              long readSerialVersionUID,
                              boolean passThrough,
                              boolean superDone)
                       throws IOException,
                              ClassNotFoundException
Reads the non-transient fields of this class from an external source.

Supported API: false

Parameters:
thisObject -
input -
readSerialVersionUID -
passThrough -
superDone -
Returns:
boolean
Throws:
IOException
ClassNotFoundException

readOldVersion

private boolean readOldVersion(ObjectInput input,
                               long readSerialVersionUID,
                               boolean passThrough,
                               boolean superDone)
                        throws IOException,
                               ClassNotFoundException
Reads the non-transient fields of this class from an external source, which is not the current version.

Parameters:
input -
readSerialVersionUID -
passThrough -
superDone -
Returns:
boolean
Throws:
IOException
ClassNotFoundException

writeExternal

public void writeExternal(PersistentStoreIfc output)
                   throws SQLException,
                          DatastoreException
Used by Persistent Data Service to obtain the values of the persistent attributes of this class, so they can be written to a persistent store.

(Not intended for general use.)

Supported API: false

Specified by:
writeExternal in interface ObjectMappable
Overrides:
writeExternal in class WfLink
Parameters:
output -
Throws:
SQLException
DatastoreException

readExternal

public void readExternal(PersistentRetrieveIfc input)
                  throws SQLException,
                         DatastoreException
Used by Persistent Data Service to populate the persistent attributes of this class from a persistent store.

(Not intended for general use.)

Supported API: false

Specified by:
readExternal in interface ObjectMappable
Overrides:
readExternal in class WfLink
Parameters:
input -
Throws:
SQLException
DatastoreException

getSource

public WfActivity getSource()
Gets the object for the association that plays role: SOURCE_ROLE.

Supported API: false

Returns:
WfActivity

setSource

public void setSource(WfActivity source)
               throws WTPropertyVetoException
Sets the object for the association that plays role: SOURCE_ROLE.

Supported API: false

Parameters:
source -
Throws:
WTPropertyVetoException

getDestination

public WfActivity getDestination()
Gets the object for the association that plays role: DESTINATION_ROLE.

Supported API: false

Returns:
WfActivity

setDestination

public void setDestination(WfActivity destination)
                    throws WTPropertyVetoException
Sets the object for the association that plays role: DESTINATION_ROLE.

Supported API: false

Parameters:
destination -
Throws:
WTPropertyVetoException

getConceptualClassname

public String getConceptualClassname()
Deprecated.  

Returns the conceptual (modeled) name for the class.

Supported API: false

Specified by:
getConceptualClassname in interface NetFactor
Returns:
String

newActivityActivityLink

public static ActivityActivityLink newActivityActivityLink(NodeTemplateLink template,
                                                           WfNode source,
                                                           WfNode destination)
                                                    throws WTException
Constructs an ActivityActivityLink object given the template and the source and destination steps. If the source is not a router node, the event-action action map is initialized to COMPLETE-START.

Supported API: false

Parameters:
template -
source -
destination -
Returns:
ActivityActivityLink
Throws:
WTException

initialize

protected void initialize(NodeTemplateLink template,
                          WfNode source,
                          WfNode destination)
                   throws WTException
Supports initialization, following construction of an instance. Invoked by "new" factory having the same signature.

Supported API: false

Overrides:
initialize in class WfLink
Parameters:
template -
source -
destination -
Throws:
WTException

toString

public String toString()
Returns a string representation of the execution object. Used mostly for debugging purposes: not appropriate for GUI use.

Supported API: false

Overrides:
toString in class WfLink
Returns:
String

receiveEvent

public void receiveEvent(Object event)
                  throws WTException
Processes events in the source by finding the corresponding action (if there is one) and activating the destination. In case of ActivityActivityLink objects the event is a transition or a user-defined event while the action is a state transition.

Supported API: false

Overrides:
receiveEvent in class WfLink
Parameters:
event -
Throws:
WTException

equals

public boolean equals(Object obj)
Indicates whether the given object is equal to this object from a persistence perspective, by comparing the two objects ObjectIdentifiers. Changed or stale copies are still considered equal by this method. Delegates to PersistenceHelper.equals(Persistable,Object).

Warning: Certain core Windchill operations may depend upon equals being ObjectIdentifier-based. Changes to the default implementation should be done with care, if at all.

Supported API: false

Overrides:
equals in class WfLink
Parameters:
obj -
Returns:
boolean

hashCode

public int hashCode()
Returns a hash code for this object based upon its ObjectIdentifier. Delegates to PersistenceHelper.hashCode(Persistable).

Warning: Certain core Windchill operations may depend upon hashCode being ObjectIdentifier-based. Changes to the default implementation should be done with care, if at all.

Supported API: false

Overrides:
hashCode in class WfLink
Returns:
int