wt.workflow.engine
Class WfLink

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

public abstract class WfLink
extends ObjectToObjectLink
implements Externalizable

Abstract base class for non-control workflow link objects. Holds the event-action mapping (which is interpreted by the derived classes). Holds a pointer to the link template that instantiated it.

Supported API: false

Extendable: false

See Also:
Serialized Form

Field Summary
static String BACK_LOOP
          Label for the attribute; Determines if the link is used to create a "loop" or iteration.
private  boolean backLoop
           
private static String CLASSNAME
           
static String EVENT_ACTION_MAP
          Label for the attribute; Maps transitions in the source activity to transitions in the destination activity.
private static int EVENT_ACTION_MAP_UPPER_LIMIT
           
private  EventActionTable eventActionMap
           
static long EXTERNALIZATION_VERSION_UID
           
protected static long OLD_FORMAT_VERSION_UID
           
private static String RESOURCE
           
(package private) static long serialVersionUID
           
private  ObjectReference template
           
static String TEMPLATE
          Label for the attribute; Reference to the template used ot instantiate the link.
private static boolean VERBOSE
           
 
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
WfLink()
           
 
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.
 EventActionTable getEventActionMap()
          Gets the value of the attribute: EVENT_ACTION_MAP.
 ObjectReference getTemplate()
          Gets the value of the attribute: TEMPLATE.
 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.
 boolean isBackLoop()
          Gets the value of the attribute: BACK_LOOP.
 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(WfLink 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)
          Method used by the source activity to notify to the link a change of state.
protected  void receiveEventImmediate(Object event)
          Method used by the source activity to notify to the link a change of state in which the successor should execute its action without queuing or threading.
 void setBackLoop(boolean a_BackLoop)
          Sets the value of the attribute: BACK_LOOP.
 void setEventActionMap(EventActionTable a_EventActionMap)
          Sets the value of the attribute: EVENT_ACTION_MAP.
protected  void setTemplate(ObjectReference a_Template)
          Sets the value of the attribute: TEMPLATE.
 String toString()
          Returns a string representation of the connector 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.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, getConceptualClassname
 

Field Detail

RESOURCE

private static final String RESOURCE
See Also:
Constant Field Values

CLASSNAME

private static final String CLASSNAME

EVENT_ACTION_MAP

public static final String EVENT_ACTION_MAP
Label for the attribute; Maps transitions in the source activity to transitions in the destination activity.

Supported API: false

See Also:
Constant Field Values

EVENT_ACTION_MAP_UPPER_LIMIT

private static int EVENT_ACTION_MAP_UPPER_LIMIT

eventActionMap

private EventActionTable eventActionMap

TEMPLATE

public static final String TEMPLATE
Label for the attribute; Reference to the template used ot instantiate the link.

Supported API: false

See Also:
Constant Field Values

template

private ObjectReference template

BACK_LOOP

public static final String BACK_LOOP
Label for the attribute; Determines if the link is used to create a "loop" or iteration. When traversed causes all reachable activities to reset and all reachable connectors to enable.

Supported API: false

See Also:
Constant Field Values

backLoop

private boolean backLoop

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

VERBOSE

private static boolean VERBOSE
Constructor Detail

WfLink

public WfLink()
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 ObjectToObjectLink
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 ObjectToObjectLink
Parameters:
input -
Throws:
IOException
ClassNotFoundException

readVersion

protected boolean readVersion(WfLink 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 ObjectToObjectLink
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 ObjectToObjectLink
Parameters:
input -
Throws:
SQLException
DatastoreException

getEventActionMap

public EventActionTable getEventActionMap()
Gets the value of the attribute: EVENT_ACTION_MAP. Maps transitions in the source activity to transitions in the destination activity.

Supported API: false

Returns:
EventActionTable

setEventActionMap

public void setEventActionMap(EventActionTable a_EventActionMap)
Sets the value of the attribute: EVENT_ACTION_MAP. Maps transitions in the source activity to transitions in the destination activity.

Supported API: false

Parameters:
a_EventActionMap -

getTemplate

public ObjectReference getTemplate()
Gets the value of the attribute: TEMPLATE. Reference to the template used ot instantiate the link.

Supported API: false

Returns:
ObjectReference

setTemplate

protected void setTemplate(ObjectReference a_Template)
Sets the value of the attribute: TEMPLATE. Reference to the template used ot instantiate the link.

Supported API: false

Parameters:
a_Template -

isBackLoop

public boolean isBackLoop()
Gets the value of the attribute: BACK_LOOP. Determines if the link is used to create a "loop" or iteration. When traversed causes all reachable activities to reset and all reachable connectors to enable.

Supported API: false

Returns:
boolean

setBackLoop

public void setBackLoop(boolean a_BackLoop)
                 throws WTPropertyVetoException
Sets the value of the attribute: BACK_LOOP. Determines if the link is used to create a "loop" or iteration. When traversed causes all reachable activities to reset and all reachable connectors to enable.

Supported API: false

Parameters:
a_BackLoop -
Throws:
WTPropertyVetoException

receiveEvent

public void receiveEvent(Object event)
                  throws WTException
Method used by the source activity to notify to the link a change of state.

Supported API: false

Parameters:
event -
Throws:
WTException

toString

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

Supported API: false

Overrides:
toString in class WTObject
Returns:
String

receiveEventImmediate

protected void receiveEventImmediate(Object event)
                              throws WTException
Method used by the source activity to notify to the link a change of state in which the successor should execute its action without queuing or threading. Used in Lifecycle.

Supported API: false

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 ObjectToObjectLink
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 ObjectToObjectLink
Returns:
int

initialize

protected void initialize(NodeTemplateLink template,
                          WfNode source,
                          WfNode destination)
                   throws WTException
Supports initialization, following construction of an instance.

Parameters:
source -
destination -
Throws:
WTException