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

tv.amwa.maj.model.impl

## Class ApplicationPluginObjectImpl

- java.lang.Object
- - tv.amwa.maj.model.impl.InterchangeObjectImpl
  - - tv.amwa.maj.model.impl.ApplicationObjectImpl
    - - tv.amwa.maj.model.impl.ApplicationPluginObjectImpl

- All Implemented Interfaces:
    Serializable, Cloneable, MediaEntity, MetadataObject, WeakReferenceTarget, XMLSerializable, ApplicationObject, ApplicationPluginObject, InterchangeObject

      @MediaClass(uuid1=218169601,
                  uuid2=257,
                  uuid3=24832,
                  uuid4={6,14,43,52,2,6,1,1},
                  definedName="ApplicationPluginObject",
                  symbol="ApplicationPluginObject",
                  description="Enables application-specific extensions to be associated with any interchange object.")
      public class ApplicationPluginObjectImpl
      extends ApplicationObjectImpl
      implements ApplicationPluginObject, Cloneable, Serializable, WeakReferenceTarget

  See Also:
    Serialized Form

- - ### Field Summary

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

      `ObjectClassPropertyID`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ApplicationPluginObjectImpl()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `ApplicationPluginObject` | `clone()` Create a cloned copy of this interchange object.
    `String` | `getApplicationEnvironmentID()` Returns the application environment identifier, an Uniform Resource Identifier (RFC 3986) that identifies the application to which the information in this plugin object applies.
    `AUID` | `getApplicationPluginInstanceID()` Returns the immutable identifier of this application metadata plug-in instance.
    `ExtensionScheme` | `getApplicationScheme()` Returns the application metadata scheme contained in this plugin object.
    `AUID` | `getAUID()` Returns the unique identifier of the target of the reference.
    `String` | `getWeakTargetReference()` Provides a name that can be used to make a weak object reference to an instance of the implementing class.
    `void` | `setApplicationEnvironmentID(String applicationEnvironmentID)` Sets the application environment identifier, an Uniform Resource Identifier (RFC 3986) that identifies the application to which the information in this plugin object applies.
    `void` | `setApplicationPluginInstanceID(AUID applicationPluginInstanceID)` Sets the immutable identifier of this application metadata plug-in instance.
    `void` | `setApplicationScheme(ExtensionScheme applicationScheme)` Sets the application metadata scheme contained in this plugin object.

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

      `appendXMLChildren, clearExtensionProperties, countExtensionProperties, getBaseClass, getExtensionProperty, getExtensionProperty, getExtensionPropertyIDs, getProperties, isExtensionPropertyPresent, isExtensionPropertyPresent, putExtensionProperty, putExtensionProperty, setBaseClass`

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

      `addApplicationPlugin, 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.ApplicationObject

      `clearExtensionProperties, countExtensionProperties, getBaseClass, getExtensionProperty, getExtensionProperty, getExtensionPropertyIDs, getProperties, isExtensionPropertyPresent, isExtensionPropertyPresent, putExtensionProperty, putExtensionProperty, setBaseClass`

    - ### 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`

    - ### Methods inherited from interface tv.amwa.maj.io.xml.XMLSerializable

      `appendXMLChildren, getComment`

- - ### Constructor Detail

    - #### ApplicationPluginObjectImpl

          public ApplicationPluginObjectImpl()

  - ### Method Detail

    - #### getApplicationPluginInstanceID

          @MediaProperty(uuid1=85985025,
                         uuid2=3328,
                         uuid3=0,
                         uuid4={6,14,43,52,1,1,1,12},
                         definedName="ApplicationPluginInstanceID",
                         aliases="ApplicationPlug-InInstanceID",
                         typeName="AUID",
                         optional=false,
                         uniqueIdentifier=true,
                         pid=0,
                         symbol="ApplicationPluginInstanceID",
                         description="Immutable identifier of this application metadata plug-in instance.")
          public AUID getApplicationPluginInstanceID()

      Description copied from interface: `ApplicationPluginObject`

      Returns the immutable identifier of this application metadata plug-in instance.

      Specified by:
        `getApplicationPluginInstanceID` in interface `ApplicationPluginObject`
      Returns:
        Immutable identifier of this application metadata plug-in instance.

    - #### setApplicationPluginInstanceID

          @MediaPropertySetter(value="ApplicationPluginInstanceID")
          public void setApplicationPluginInstanceID(AUID applicationPluginInstanceID)
                                                                                                        throws NullPointerException

      Description copied from interface: `ApplicationPluginObject`

      Sets the immutable identifier of this application metadata plug-in instance.

      Specified by:
        `setApplicationPluginInstanceID` in interface `ApplicationPluginObject`
      Parameters:
        `applicationPluginInstanceID` - Immutable identifier of this application metadata plug-in instance.
      Throws:
        `NullPointerException` - Cannot set the identifier of this application plugin object using a `null` value.

    - #### getAUID

          public AUID getAUID()

      Description copied from interface: `WeakReferenceTarget`

      Returns the unique identifier of the target of the reference.

      Specified by:
        `getAUID` in interface `WeakReferenceTarget`
      Returns:
        Unique identifier of the target of the reference.

    - #### getApplicationEnvironmentID

          @MediaProperty(uuid1=85985025,
                         uuid2=3840,
                         uuid3=0,
                         uuid4={6,14,43,52,1,1,1,12},
                         definedName="ApplicationEnvironmentID",
                         typeName="UTF16String",
                         optional=true,
                         uniqueIdentifier=false,
                         pid=0,
                         symbol="ApplicationEnvironmentID",
                         description="Application environment identifier, an Uniform Resource Identifier (RFC 3986) that identifies the application to which the information in this plugin object applies.")
          public String getApplicationEnvironmentID()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          throws PropertyNotPresentException

      Description copied from interface: `ApplicationPluginObject`

      Returns the application environment identifier, an Uniform Resource Identifier (RFC 3986) that identifies the application to which the information in this plugin object applies. This is an optional property.

      Specified by:
        `getApplicationEnvironmentID` in interface `ApplicationPluginObject`
      Returns:
        Application environment identifier.
      Throws:
        `PropertyNotPresentException` - The optional application environment identifier property is not present for this application plugin.

    - #### setApplicationEnvironmentID

          @MediaPropertySetter(value="ApplicationEnvironmentID")
          public void setApplicationEnvironmentID(String applicationEnvironmentID)

      Description copied from interface: `ApplicationPluginObject`

      Sets the application environment identifier, an Uniform Resource Identifier (RFC 3986) that identifies the application to which the information in this plugin object applies. Set this optional property to `null` to omit it.

      Specified by:
        `setApplicationEnvironmentID` in interface `ApplicationPluginObject`
      Parameters:
        `applicationEnvironmentID` - Application environment identifier.

    - #### getApplicationScheme

          @MediaProperty(uuid1=67504131,
                         uuid2=0,
                         uuid3=0,
                         uuid4={6,14,43,52,1,1,1,12},
                         definedName="ApplicationScheme",
                         typeName="ExtensionSchemeWeakReference",
                         optional=false,
                         uniqueIdentifier=false,
                         pid=0,
                         symbol="ApplicationScheme",
                         description="Application metadata scheme contained in this plugin object.")
          public ExtensionScheme getApplicationScheme()

      Description copied from interface: `ApplicationPluginObject`

      Returns the application metadata scheme contained in this plugin object. Application metadata schemes are represented by extension schemes.

      Specified by:
        `getApplicationScheme` in interface `ApplicationPluginObject`
      Specified by:
        `getApplicationScheme` in class `ApplicationObjectImpl`
      Returns:
        Application metadata scheme contained in this plugin object.
      See Also:
        `ApplicationObject#setExensionScheme(tv.amwa.maj.meta.ExtensionScheme)`, `ExtensionScheme.getSchemeID()`, `Preface.getApplicationSchemes()`, `Root.getRootExtensions()`

    - #### setApplicationScheme

          @MediaPropertySetter(value="ApplicationScheme")
          public void setApplicationScheme(ExtensionScheme applicationScheme)
                                                                                    throws NullPointerException

      Description copied from interface: `ApplicationPluginObject`

      Sets the application metadata scheme contained in this plugin object. Application metadata schemes are represented by extension schemes.

      Specified by:
        `setApplicationScheme` in interface `ApplicationPluginObject`
      Parameters:
        `applicationScheme` - Identifier of the application metadata scheme contained in this plugin object.
      Throws:
        `NullPointerException` - Cannot set the application scheme using a `null` value.
      See Also:
        `ApplicationObject#setExensionScheme(tv.amwa.maj.meta.ExtensionScheme)`, `ExtensionScheme.getSchemeID()`, `Preface.getApplicationSchemes()`

    - #### getWeakTargetReference

          public String getWeakTargetReference()

      Description copied from interface: `WeakReferenceTarget`

      Provides a name that can be used to make a weak object reference to an instance of the implementing class.

      Specified by:
        `getWeakTargetReference` in interface `WeakReferenceTarget`
      Returns:
        A name to use to make weak reference to this object.

    - #### clone

          public ApplicationPluginObject 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 `ApplicationObject`
      Specified by:
        `clone` in interface `ApplicationPluginObject`
      Specified by:
        `clone` in interface `InterchangeObject`
      Overrides:
        `clone` in class `ApplicationObjectImpl`
      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.