Media Authoring
with Java API

tv.amwa.maj.entity
Class DefinitionObject

java.lang.Object
  extended by tv.amwa.maj.entity.InterchangeObject
      extended by tv.amwa.maj.entity.DefinitionObject
All Implemented Interfaces:
Serializable, Cloneable, DefinitionType, MAJCommon, DefinitionObject, InterchangeObject, XMLSerializable
Direct Known Subclasses:
CodecDefinition, ContainerDefinition, DataDefinition, InterpolationDefinition, KLVDataDefinition, OperationDefinition, ParameterDefinition, PluginDefinition, TaggedValueDefinition

@AAFClass(uuid1=218169601,
          uuid2=257,
          uuid3=6656,
          uuid4={6,14,43,52,2,6,1,1},
          definedName="DefinitionObject",
          description="The DefinitionObject class defines an item to be referenced.")
public abstract class DefinitionObject
extends InterchangeObject
implements DefinitionObject, DefinitionType, Serializable, Cloneable, MAJCommon

Implements a definition to be referenced.

THE COMMENTS FOR THIS CLASS ARE INCOMPLETE.

Author:
Richard Cartwright
See Also:
Serialized Form

Nested Class Summary
static class DefinitionObject.DefinitionObjectXMLHandler
           
 
Nested classes/interfaces inherited from class tv.amwa.maj.entity.InterchangeObject
InterchangeObject.InterchangeObjectXMLHandler
 
Constructor Summary
DefinitionObject()
           
 
Method Summary
 void appendXMLChildren(Node parent)
          Append child elements to the given parent node to serialize the value of an object to an XML fragment.
 DefinitionObject clone()
          Creates a cloned copy of this entity.
 boolean equals(Object o)
          Two definitions are equal if and only if their AUID identifications are equals.
 AUID getAUID()
          Returns the identification of the definition.
 String getDescription()
          Returns the optional description of the definition.
 String getLocalizedUID()
           
 String getName()
          Returns the name of the definition.
 int hashCode()
          Returns a hash code value for this interchange object.
 void setDescription(String description)
          Sets the description of this definition, which provides an explanation of the use of the item being defined.
 void setLocalizedUID(String localizedUID)
           
 void setName(String name)
          Sets the display name of this definition.
 
Methods inherited from class tv.amwa.maj.entity.InterchangeObject
castFromInterface, countProperties, createOptionalPropertyValue, disableGenerationTracking, enableGenerationTracking, getDefinition, getGeneration, getGenerationAUID, getProperties, getPropertyValue, isGenerationTracked, isPropertyPresent, omitOpionalProperty, registerImplementation, setPropertiesFromInterface, setPropertyValue, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface tv.amwa.maj.iface.InterchangeObject
countProperties, createOptionalPropertyValue, disableGenerationTracking, enableGenerationTracking, getDefinition, getGeneration, getGenerationAUID, getProperties, getPropertyValue, isGenerationTracked, isPropertyPresent, omitOpionalProperty, setPropertyValue
 
Methods inherited from interface tv.amwa.maj.entity.MAJCommon
toString
 

Constructor Detail

DefinitionObject

public DefinitionObject()
Method Detail

getAUID

@AAFProperty(uuid1=16848131,
             uuid2=0,
             uuid3=0,
             uuid4={6,14,43,52,1,1,1,2},
             definedName="Identification",
             typeName="AUID",
             optional=false,
             uniqueIdentifier=true,
             pid=6913)
public AUID getAUID()
Description copied from interface: DefinitionType

Returns the identification of the definition. This is normally a registered SMPTE universal label.

Specified by:
getAUID in interface DefinitionType
Specified by:
getAUID in interface DefinitionObject
Returns:
Identification of the definition.

getName

@AAFProperty(uuid1=17236226,
             uuid2=769,
             uuid3=0,
             uuid4={6,14,43,52,1,1,1,2},
             definedName="Name",
             typeName="String",
             optional=false,
             uniqueIdentifier=false,
             pid=6914)
public String getName()
Description copied from interface: DefinitionType

Returns the name of the definition.

Specified by:
getName in interface DefinitionType
Specified by:
getName in interface DefinitionObject
Returns:
Name of the definition.

setName

public void setName(String name)
             throws NullPointerException
Description copied from interface: DefinitionObject

Sets the display name of this definition.

Specified by:
setName in interface DefinitionObject
Parameters:
name - The display name of the item being defined.
Throws:
NullPointerException - The given display name is null.

getDescription

@AAFProperty(uuid1=50463489,
             uuid2=513,
             uuid3=0,
             uuid4={6,14,43,52,1,1,1,2},
             definedName="Description",
             typeName="String",
             optional=true,
             uniqueIdentifier=false,
             pid=6915)
public String getDescription()
                      throws PropertyNotPresentException
Description copied from interface: DefinitionType

Returns the optional description of the definition.

Specified by:
getDescription in interface DefinitionType
Specified by:
getDescription in interface DefinitionObject
Returns:
Description of the definition.
Throws:
PropertyNotPresentException - The optional name property is not present for the definition.

setDescription

public void setDescription(String description)
Description copied from interface: DefinitionObject

Sets the description of this definition, which provides an explanation of the use of the item being defined. Set this optional property to null to omit it.

Specified by:
setDescription in interface DefinitionObject
Parameters:
description - An explanation of the use of the item being defined.

getLocalizedUID

public String getLocalizedUID()

setLocalizedUID

public void setLocalizedUID(String localizedUID)

equals

public boolean equals(Object o)

Two definitions are equal if and only if their AUID identifications are equals.

Specified by:
equals in interface MAJCommon
Overrides:
equals in class Object
Parameters:
o - Object to test for equality with.
Returns:
Is the given object equals to this value?
See Also:
Object.equals(java.lang.Object)

hashCode

public int hashCode()
Description copied from interface: MAJCommon

Returns a hash code value for this interchange object.

Specified by:
hashCode in interface MAJCommon
Overrides:
hashCode in class Object
Returns:
Hash code value for this interchange object.
See Also:
Object.hashCode()

clone

public DefinitionObject clone()
Description copied from interface: MAJCommon

Creates a cloned copy of this entity. The clone will be initialized to have the same value as this value but exists independently from then on. Changes to this value will not effect the clone and changes to the clone will not effect this. MAJ API clones are true deep clones with no shared references to areas of memory within the original.

This method does not throw a CloneNotSupportedException as all entity values must implement the Cloneable interface. If a cloning error does occur, a null value will be returned but this is very unlikely to happen.

Specified by:
clone in interface MAJCommon
Overrides:
clone in class Object
Returns:
Independent clone of this value, which is a deep copy.
See Also:
Object.clone()

appendXMLChildren

public void appendXMLChildren(Node parent)
Description copied from interface: XMLSerializable

Append child elements to the given parent node to serialize the value of an object to an XML fragment. Methods of the XMLBuilder class are provided to help with this process.

Specified by:
appendXMLChildren in interface XMLSerializable
Overrides:
appendXMLChildren in class InterchangeObject
Parameters:
parent - XML parent element to append child nodes to.

Media Authoring
with Java API

(c) 2007-2008 Richard Cartwright, all rights reserved. Subject to the terms of the AAF SDK Public Source License.