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

tv.amwa.maj.industry

## Interface WeakReferenceTarget

- All Known Subinterfaces:
    ApplicationPluginObject, ClassDefinition, CodecDefinition, CompositionPackage, ContainerDefinition, DataDefinition, DefinitionObject, ExtensionScheme, InterpolationDefinition, KLVDataDefinition, MaterialPackage, MetaDefinition, OperationDefinition, Package, Package, ParameterDefinition, PluginDefinition, PropertyDefinition, PropertyWrapperDefinition, QCompositionPackage, QMaterialPackage, SourcePackage, TaggedValueDefinition, TypeDefinition, TypeDefinitionCharacter, TypeDefinitionEnumeration, TypeDefinitionExtendibleEnumeration, TypeDefinitionFixedArray, TypeDefinitionIndirect, TypeDefinitionInteger, TypeDefinitionObjectReference, TypeDefinitionOpaque, TypeDefinitionRecord, TypeDefinitionRename, TypeDefinitionSet, TypeDefinitionStream, TypeDefinitionString, TypeDefinitionStrongObjectReference, TypeDefinitionVariableArray, TypeDefinitionWeakObjectReference
  All Known Implementing Classes:
    ApplicationPluginObjectImpl, ClassDefinitionImpl, CodecDefinitionImpl, CompositionPackageImpl, ContainerDefinitionImpl, DataDefinitionImpl, DefinitionObjectImpl, ExtensionSchemeImpl, InterpolationDefinitionImpl, KLVDataDefinitionImpl, MaterialPackageImpl, MetaDefinitionImpl, OperationDefinitionImpl, PackageImpl, ParameterDefinitionImpl, PluginDefinitionImpl, PropertyDefinitionImpl, PropertyWrapperDefinitionImpl, SingletonTypeDefinitionImpl, SourcePackageImpl, TaggedValueDefinitionImpl, TypeDefinitionCharacterImpl, TypeDefinitionEnumerationImpl, TypeDefinitionExtendibleEnumerationImpl, TypeDefinitionFixedArrayImpl, TypeDefinitionImpl, TypeDefinitionIndirectImpl, TypeDefinitionIntegerImpl, TypeDefinitionObjectReferenceImpl, TypeDefinitionOpaqueImpl, TypeDefinitionRecordImpl, TypeDefinitionRenameImpl, TypeDefinitionSetImpl, TypeDefinitionStreamImpl, TypeDefinitionStringImpl, TypeDefinitionStrongObjectReferenceImpl, TypeDefinitionVariableArrayImpl, TypeDefinitionWeakObjectReferenceImpl

      public interface WeakReferenceTarget

  Specifies that a metadata object can be the target of a weak reference. Any object implementing this interface may be the target of more than one weak reference and is not owned by the source of the reference.

  The value returned by the `getWeakTargetReference()` method is used by IO operations such as XML input and output. The unique identification for the target of the reference returned by `getAUID()` is used for creating and resolving `weak references`.

  In MAJ, resolution of references can be normally be achieved by using methods in the industry package. For example, `Warehouse.lookForType(String)` and `Warehouse.lookup(Class, String)`.

  See Also:
    `WeakReference`, `WeakReference.getTarget()`, `TypeDefinitionWeakObjectReference`, `Warehouse.lookForType(String)`, `Warehouse.lookForClass(String)`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `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.

- - ### Method Detail

    - #### getWeakTargetReference

          String getWeakTargetReference()

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

      Returns:
        A name to use to make weak reference to this object.

    - #### getAUID

          AUID getAUID()

      Returns the unique identifier of the target of the reference.

      Returns:
        Unique identifier of the target of the reference.

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