wt.folder
Class SubFolderIdentity

java.lang.Object
  extended bywt.fc.IdentificationObject
      extended bywt.folder.SubFolderIdentity
All Implemented Interfaces:
Externalizable, IdentificationObjectNamespace, NetFactor, Serializable, WTContainerNamespace

public final class SubFolderIdentity
extends IdentificationObject
implements WTContainerNamespace, Externalizable

Defines the unique Identity of a SubFolder. A SubFolder's identity consists of it's own name plus a reference to it's parent folder. This constrains SubFolders to be unique amongst all the SubFolders in a Folder. The true uniqueness constraint for the SubFolder is provided by the SubFolderLink, not the SubFolder itself.

Use the newSubFolderIdentity static factory method(s), not the SubFolderIdentity 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:
SubFolder, SubFolderLink, Serialized Form

Field Summary
private static String CLASSNAME
           
private  WTContainedIdentified containedIdentified
           
private  WTContainerRef containerReference
           
static long EXTERNALIZATION_VERSION_UID
           
private  String name
           
static String NAME
           
private static int NAME_UPPER_LIMIT
           
private  WTContainerRef namespaceReference
           
protected static long OLD_FORMAT_VERSION_UID
           
private static String RESOURCE
           
(package private) static long serialVersionUID
           
 
Fields inherited from class wt.fc.IdentificationObject
 
Fields inherited from interface wt.inf.container.WTContainerNamespace
CONTAINED_IDENTIFIED, CONTAINER_REFERENCE, NAMESPACE_ID, NAMESPACE_REFERENCE
 
Constructor Summary
SubFolderIdentity()
           
 
Method Summary
private  void containerReferenceValidate(WTContainerRef a_ContainerReference)
           
 String getConceptualClassname()
          Deprecated.  
 WTContainedIdentified getContainedIdentified()
          Gets the value of the attribute: containedIdentified; A callback to the WTContainedIdentified object that this is a namespace for.
 WTContainerRef getContainerReference()
          Gets the value of the attribute: containerReference; The container that the WTContainedIdentified object is contained by.
 String getIdentity()
          Returns the SubFolders name.
 String getName()
          Gets the value of the attribute: name; Attribute used for changing the name of the SubFolder.
 WTContainerRef getNamespaceReference()
          Gets the value of the attribute: namespaceReference; This property is used internally by the container service's identity processing.
protected  void initialize(SubFolder subfolder)
          Supports initialization, following construction of an instance.
private  void namespaceReferenceValidate(WTContainerRef a_NamespaceReference)
           
private  void nameValidate(String a_Name)
           
protected static SubFolderIdentity newSubFolderIdentity(SubFolder subfolder)
          Factory method to construct the object.
 void readExternal(ObjectInput input)
          Reads the non-transient fields of this class from an external source.
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(SubFolderIdentity thisObject, ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source.
 void setContainedIdentified(WTContainedIdentified a_ContainedIdentified)
          Sets the value of the attribute: containedIdentified; A callback to the WTContainedIdentified object that this is a namespace for.
 void setContainerReference(WTContainerRef a_ContainerReference)
          Sets the value of the attribute: containerReference; The container that the WTContainedIdentified object is contained by.
 void setName(String a_Name)
          Sets the value of the attribute: name; Attribute used for changing the name of the SubFolder.
 void setNamespaceReference(WTContainerRef a_NamespaceReference)
          Sets the value of the attribute: namespaceReference; This property is used internally by the container service's identity processing.
protected  void setToObject(Identified obj)
          Updates the SubFolder to change it's name.
 void writeExternal(ObjectOutput output)
          Writes the non-transient fields of this class to an external source.
 
Methods inherited from class wt.fc.IdentificationObject
changeIdentity, checkIdentity, createKey, getClassInfo, getKeyClassName, getSemanticKey, initialize, readVersion, setAdditionalKeyAttributes, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

RESOURCE

private static final String RESOURCE
See Also:
Constant Field Values

CLASSNAME

private static final String CLASSNAME

name

private String name

containedIdentified

private WTContainedIdentified containedIdentified

containerReference

private WTContainerRef containerReference

namespaceReference

private WTContainerRef namespaceReference

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

NAME_UPPER_LIMIT

private static int NAME_UPPER_LIMIT

NAME

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

SubFolderIdentity

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

readVersion

protected boolean readVersion(SubFolderIdentity 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

getConceptualClassname

public String getConceptualClassname()
Deprecated.  

Returns the conceptual (modeled) name for the class.

Supported API: false

Specified by:
getConceptualClassname in interface NetFactor
Returns:
String

getName

public String getName()
Gets the value of the attribute: name; Attribute used for changing the name of the SubFolder.

Supported API: false

Returns:
String

setName

public void setName(String a_Name)
             throws WTPropertyVetoException
Sets the value of the attribute: name; Attribute used for changing the name of the SubFolder.

Supported API: false

Parameters:
a_Name -
Throws:
WTPropertyVetoException

nameValidate

private void nameValidate(String a_Name)
                   throws WTPropertyVetoException
Parameters:
a_Name -
Throws:
WTPropertyVetoException

setToObject

protected void setToObject(Identified obj)
                    throws WTException
Updates the SubFolder to change it's name.

Supported API: false

Specified by:
setToObject in class IdentificationObject
Parameters:
obj -
Throws:
WTException

getIdentity

public String getIdentity()
Returns the SubFolders name.

Supported API: false

Specified by:
getIdentity in class IdentificationObject
Returns:
String

newSubFolderIdentity

protected static SubFolderIdentity newSubFolderIdentity(SubFolder subfolder)
                                                 throws WTException
Factory method to construct the object. This is used only by the SubFolder to provide it's identification object.

Supported API: false

Parameters:
subfolder -
Returns:
SubFolderIdentity
Throws:
WTException

initialize

protected void initialize(SubFolder subfolder)
                   throws WTException
Supports initialization, following construction of an instance. Invoked by "new" factory having the same signature.

Supported API: false

Parameters:
subfolder -
Throws:
WTException

getContainedIdentified

public WTContainedIdentified getContainedIdentified()
Gets the value of the attribute: containedIdentified; A callback to the WTContainedIdentified object that this is a namespace for. This property is used internally and never needs to be set by callers.

Supported API: false

Specified by:
getContainedIdentified in interface WTContainerNamespace
Returns:
WTContainedIdentified

setContainedIdentified

public void setContainedIdentified(WTContainedIdentified a_ContainedIdentified)
                            throws WTPropertyVetoException
Sets the value of the attribute: containedIdentified; A callback to the WTContainedIdentified object that this is a namespace for. This property is used internally and never needs to be set by callers.

Supported API: false

Specified by:
setContainedIdentified in interface WTContainerNamespace
Parameters:
a_ContainedIdentified -
Throws:
WTPropertyVetoException

getContainerReference

public WTContainerRef getContainerReference()
Gets the value of the attribute: containerReference; The container that the WTContainedIdentified object is contained by. Setting this property and then calling IdentityService.changeIdentity will update the object's container reference.

Supported API: false

Specified by:
getContainerReference in interface WTContainerNamespace
Returns:
WTContainerRef

setContainerReference

public void setContainerReference(WTContainerRef a_ContainerReference)
                           throws WTPropertyVetoException
Sets the value of the attribute: containerReference; The container that the WTContainedIdentified object is contained by. Setting this property and then calling IdentityService.changeIdentity will update the object's container reference.

Supported API: false

Specified by:
setContainerReference in interface WTContainerNamespace
Parameters:
a_ContainerReference -
Throws:
WTPropertyVetoException

containerReferenceValidate

private void containerReferenceValidate(WTContainerRef a_ContainerReference)
                                 throws WTPropertyVetoException
Parameters:
a_ContainerReference -
Throws:
WTPropertyVetoException

getNamespaceReference

public WTContainerRef getNamespaceReference()
Gets the value of the attribute: namespaceReference; This property is used internally by the container service's identity processing. Callers should never need to set it.

A reference to the WTContainer that serves as a namespace for the WTContainedIdentified object. This value is typically derivable from WTContainerHelper.service.getNamespace, except for situations where a container and its children are being re-namespaced as part of a single transaction.

Supported API: false

Specified by:
getNamespaceReference in interface WTContainerNamespace
Returns:
WTContainerRef

setNamespaceReference

public void setNamespaceReference(WTContainerRef a_NamespaceReference)
                           throws WTPropertyVetoException
Sets the value of the attribute: namespaceReference; This property is used internally by the container service's identity processing. Callers should never need to set it.

A reference to the WTContainer that serves as a namespace for the WTContainedIdentified object. This value is typically derivable from WTContainerHelper.service.getNamespace, except for situations where a container and its children are being re-namespaced as part of a single transaction.

Supported API: false

Specified by:
setNamespaceReference in interface WTContainerNamespace
Parameters:
a_NamespaceReference -
Throws:
WTPropertyVetoException

namespaceReferenceValidate

private void namespaceReferenceValidate(WTContainerRef a_NamespaceReference)
                                 throws WTPropertyVetoException
Parameters:
a_NamespaceReference -
Throws:
WTPropertyVetoException