DescriptiveObjectImpl (Media Authoring with Java API)
Date: 2016-02-05

tv.amwa.maj.model.impl

## Class DescriptiveObjectImpl

- java.lang.Object
- - tv.amwa.maj.model.impl.InterchangeObjectImpl
  - - tv.amwa.maj.model.impl.DescriptiveObjectImpl

- All Implemented Interfaces:
    Serializable, Cloneable, MediaEntity, MetadataObject, DescriptiveObject, InterchangeObject
  Direct Known Subclasses:
    ContributorImpl

      @MediaClass(uuid1=218170368,
                  uuid2=0,
                  uuid3=0,
                  uuid4={6,14,43,52,2,6,1,1},
                  definedName="DescriptiveObject",
                  description="Extended by objects that represent descriptive metadata.",
                  symbol="DescriptiveObject",
                  isConcrete=false)
      public class DescriptiveObjectImpl
      extends InterchangeObjectImpl
      implements DescriptiveObject, Serializable

  Implements an item of descriptive metadata in a descriptive framework.

  See Also:
    `TypeDefinitions.DescriptiveObjectStrongReference`, `TypeDefinitions.DescriptiveObjectStrongReferenceSet`, `TypeDefinitions.DescriptiveObjectStrongReferenceVector`, Serialized Form

- - ### Field Summary

    - ### Fields inherited from class tv.amwa.maj.model.impl.InterchangeObjectImpl

      `ObjectClassPropertyID`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DescriptiveObjectImpl()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `DescriptiveObject` | `clone()` Create a cloned copy of this interchange object.
    `AUID` | `getLinkedDescriptiveObjectPluginID()` Returns the identifier of the descriptive marker that indirectly strongly references this descriptive object instance.
    `void` | `setLinkedDescriptiveObjectPluginID(AUID linkedDescriptiveObjectPluginID)` Sets the identifier of the descriptive marker that indirectly strongly references this descriptive object instance.

    - ### Methods inherited from class tv.amwa.maj.model.impl.InterchangeObjectImpl

      `addApplicationPlugin, appendXMLChildren, clearApplicationPlugins, containsApplicationPlugin, containsApplicationPlugin, countApplicationPlugins, deepEquals, disableGenerationTracking, enableGenerationTracking, equals, getApplicationPlugins, getComment, getGeneration, getLinkedGenerationID, getLinkedGenerationIDString, getObjectClass, getPersistentID, getPersistentIndex, hashCode, isGenerationTracked, removeApplicationPlugin, removeApplicationPlugin, setLinkedGenerationID, setLinkedGenerationIDString, setObjectClass, setPersistentID, setPersistentIndex, toString`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface tv.amwa.maj.model.InterchangeObject

      `addApplicationPlugin, clearApplicationPlugins, containsApplicationPlugin, containsApplicationPlugin, countApplicationPlugins, deepEquals, disableGenerationTracking, enableGenerationTracking, equals, getApplicationPlugins, getGeneration, getLinkedGenerationID, getObjectClass, isGenerationTracked, removeApplicationPlugin, removeApplicationPlugin, setLinkedGenerationID, setObjectClass, toString`

    - ### Methods inherited from interface tv.amwa.maj.industry.MediaEntity

      `getPersistentID, setPersistentIndex`

- - ### Constructor Detail

    - #### DescriptiveObjectImpl

          public DescriptiveObjectImpl()

  - ### Method Detail

    - #### getLinkedDescriptiveObjectPluginID

          @MediaProperty(uuid1=85985025,
                         uuid2=4352,
                         uuid3=0,
                         uuid4={6,14,43,52,1,1,1,12},
                         definedName="LinkedDescriptiveObjectPluginID",
                         aliases="LinkedDescriptiveObjectPlug-InID",
                         typeName="AUID",
                         optional=true,
                         uniqueIdentifier=false,
                         pid=0,
                         symbol="LinkedDescriptiveObjectPluginID",
                         description="Descriptive marker that indirectly strongly references this descriptive object instance.")
          public AUID getLinkedDescriptiveObjectPluginID()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    throws PropertyNotPresentException

      Description copied from interface: `DescriptiveObject`

      Returns the identifier of the descriptive marker that indirectly strongly references this descriptive object instance. This is an optional property.

      Specified by:
        `getLinkedDescriptiveObjectPluginID` in interface `DescriptiveObject`
      Returns:
        Identifier of the descriptive marker that indirectly strongly references this descriptive object instance.
      Throws:
        `PropertyNotPresentException` - The optional linked descriptive object plugin is not present for this descriptive object.
      See Also:
        `DescriptiveMarker.getDescriptiveMetadataPluginID()`

    - #### setLinkedDescriptiveObjectPluginID

          @MediaPropertySetter(value="LinkedDescriptiveObjectPluginID")
          public void setLinkedDescriptiveObjectPluginID(AUID linkedDescriptiveObjectPluginID)

      Description copied from interface: `DescriptiveObject`

      Sets the identifier of the descriptive marker that indirectly strongly references this descriptive object instance. Set this optional property to `null` to omit it.

      Specified by:
        `setLinkedDescriptiveObjectPluginID` in interface `DescriptiveObject`
      Parameters:
        `linkedDescriptiveObjectPluginID` - Identifier of the descriptive marker that indirectly strongly references this descriptive object instance.

    - #### clone

          public DescriptiveObject clone()

      Description copied from interface: `InterchangeObject`

      Create a cloned copy of this interchange object.

      Specified by:
        `clone` in interface `MediaEntity`
      Specified by:
        `clone` in interface `DescriptiveObject`
      Specified by:
        `clone` in interface `InterchangeObject`
      Overrides:
        `clone` in class `InterchangeObjectImpl`
      Returns:
        Cloned copy of this interchange object.

(c)2007-2016 Richard Cartwright, all rights reserved. Licensed under Apache 2 license and subject to the AMWA IPR policy.