wt.epm.structure
Class EPMVariantLink

java.lang.Object
  extended bywt.fc.WTObject
      extended bywt.fc.ObjectToObjectLink
          extended bywt.epm.structure.EPMVariantLink
All Implemented Interfaces:
Archiveable, BinaryLink, DisplayIdentification, EPMObject, Externalizable, Link, NetFactor, ObjectMappable, Persistable, Serializable

public final class EPMVariantLink
extends ObjectToObjectLink
implements EPMObject, Archiveable, Externalizable

Denotes that an EPMDocument is a variant of another.

Use the newEPMVariantLink static factory method(s), not the EPMVariantLink 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: true

Extendable: false

See Also:
Serialized Form

Field Summary
private static String CLASSNAME
           
static long EXTERNALIZATION_VERSION_UID
           
static String GENERIC_ROLE
          Label for the attribute.
protected static long OLD_FORMAT_VERSION_UID
           
static long R70_EXTERNALIZATION_VERSION_UID
           
private  boolean required
           
static String REQUIRED
          Label for the attribute; Designates that the authoring application requires the generic in order to work with the variant.
private static String RESOURCE
           
(package private) static long serialVersionUID
           
static String VARIANT_ROLE
          Label for the attribute.
 
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.epm.EPMObject
AUTHORING_APPLICATION, OWNER_APPLICATION, UNSPECIFIED
 
Fields inherited from interface wt.fc.Persistable
IDENTITY, PERSIST_INFO, TYPE
 
Fields inherited from interface wt.fc.BinaryLink
ALL_ROLES, BOTH_ROLES, ROLE_AOBJECT_ROLE, ROLE_BOBJECT_ROLE
 
Fields inherited from interface wt.identity.DisplayIdentification
DISPLAY_IDENTIFIER, DISPLAY_IDENTITY, DISPLAY_TYPE
 
Constructor Summary
EPMVariantLink()
           
 
Method Summary
 void checkAttributes()
          Validate the values of this Persistable object's attributes.
 boolean equals(Object obj)
          Indicates whether the given object is equal to this object from a persistence perspective, by comparing the two objects ObjectIdentifiers.
 EPMAuthoringAppType getAuthoringApplication()
          Gets the value of the attribute: AUTHORING_APPLICATION.
 String getConceptualClassname()
          Deprecated.  
 EPMDocumentMaster getGeneric()
          Gets the object for the association that plays role: GENERIC_ROLE.
 EPMApplicationType getOwnerApplication()
          Gets the value of the attribute: OWNER_APPLICATION.
 EPMDocument getVariant()
          Gets the object for the association that plays role: VARIANT_ROLE.
 int hashCode()
          Returns a hash code for this object based upon its ObjectIdentifier.
 void initialize(EPMDocument variant, EPMDocumentMaster generic)
           
 boolean isRequired()
          Gets the value of the attribute: REQUIRED.
static EPMVariantLink newEPMVariantLink(EPMDocument variant, EPMDocumentMaster generic)
          Constructs an EPM Variant link.
 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(EPMVariantLink thisObject, ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source.
 void setGeneric(EPMDocumentMaster generic)
          Sets the object for the association that plays role: GENERIC_ROLE.
 void setRequired(boolean a_Required)
          Sets the value of the attribute: REQUIRED.
 void setVariant(EPMDocument variant)
          Sets the object for the association that plays role: VARIANT_ROLE.
 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
finalize, getClassInfo, getCreateTimestamp, getDisplayIdentifier, getDisplayIdentity, getDisplayType, getIdentity, getModifyTimestamp, getPersistInfo, getType, initialize, readVersion, setPersistInfo, toString
 
Methods inherited from class java.lang.Object
clone, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface wt.fc.Persistable
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

VARIANT_ROLE

public static final String VARIANT_ROLE
Label for the attribute.

Supported API: false

See Also:
Constant Field Values

GENERIC_ROLE

public static final String GENERIC_ROLE
Label for the attribute.

Supported API: false

See Also:
Constant Field Values

REQUIRED

public static final String REQUIRED
Label for the attribute; Designates that the authoring application requires the generic in order to work with the variant.

Supported API: false

See Also:
Constant Field Values

required

private boolean required

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

R70_EXTERNALIZATION_VERSION_UID

public static final long R70_EXTERNALIZATION_VERSION_UID
See Also:
Constant Field Values
Constructor Detail

EPMVariantLink

public EPMVariantLink()
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(EPMVariantLink 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

getVariant

public EPMDocument getVariant()
Gets the object for the association that plays role: VARIANT_ROLE.

Supported API: false

Returns:
EPMDocument

setVariant

public void setVariant(EPMDocument variant)
                throws WTPropertyVetoException
Sets the object for the association that plays role: VARIANT_ROLE.

Supported API: false

Parameters:
variant -
Throws:
WTPropertyVetoException

getGeneric

public EPMDocumentMaster getGeneric()
Gets the object for the association that plays role: GENERIC_ROLE.

Supported API: false

Returns:
EPMDocumentMaster

setGeneric

public void setGeneric(EPMDocumentMaster generic)
                throws WTPropertyVetoException
Sets the object for the association that plays role: GENERIC_ROLE.

Supported API: false

Parameters:
generic -
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

isRequired

public boolean isRequired()
Gets the value of the attribute: REQUIRED. Designates that the authoring application requires the generic in order to work with the variant.

Supported API: false

Returns:
boolean

setRequired

public void setRequired(boolean a_Required)
                 throws WTPropertyVetoException
Sets the value of the attribute: REQUIRED. Designates that the authoring application requires the generic in order to work with the variant.

Supported API: false

Parameters:
a_Required -
Throws:
WTPropertyVetoException

newEPMVariantLink

public static EPMVariantLink newEPMVariantLink(EPMDocument variant,
                                               EPMDocumentMaster generic)
                                        throws WTException
Constructs an EPM Variant link. By default, this constructor sets 'required' to false.

Supported API: false

Parameters:
variant -
generic -
Returns:
EPMVariantLink
Throws:
WTException

getOwnerApplication

public EPMApplicationType getOwnerApplication()
Gets the value of the attribute: OWNER_APPLICATION. Indicate that the named application owns the object.

The parameter is an EPMApplicationType, so that any sort of checking can be done at run-time.

Supported API: true

Specified by:
getOwnerApplication in interface EPMObject
Returns:
EPMApplicationType

getAuthoringApplication

public EPMAuthoringAppType getAuthoringApplication()
Gets the value of the attribute: AUTHORING_APPLICATION. Indicates that the named application authored the object.

The parameter is an EPMAuthoringAppType, so that any sort of checking can be done at run-time.

Supported API: true

Specified by:
getAuthoringApplication in interface EPMObject
Returns:
EPMAuthoringAppType

checkAttributes

public void checkAttributes()
                     throws InvalidAttributeException
Validate the values of this Persistable object's attributes.

In particular, this must check that the modifications to the object were made by an approved application.

Supported API: true

Specified by:
checkAttributes in interface EPMObject
Overrides:
checkAttributes in class WTObject
Throws:
InvalidAttributeException

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

public void initialize(EPMDocument variant,
                       EPMDocumentMaster generic)
                throws WTException
Throws:
WTException