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

tv.amwa.maj.extensions.example.impl

## Class PersonImpl

- java.lang.Object
- - tv.amwa.maj.model.impl.InterchangeObjectImpl
  - - tv.amwa.maj.model.impl.DescriptiveObjectImpl
    - - tv.amwa.maj.extensions.example.impl.ContributorImpl
      - - tv.amwa.maj.extensions.example.impl.PersonImpl

- All Implemented Interfaces:
    Serializable, Cloneable, CommonConstants, Contributor, Person, MediaEntity, MetadataObject, XMLSerializable, DescriptiveObject, InterchangeObject

      @MediaClass(definedName="Person",
                  uuid1=253759745,
                  uuid2=259,
                  uuid3=0,
                  uuid4={6,14,43,52,2,83,1,1},
                  description="Person who makes and/or contributes a resource.",
                  namespace="http://amwa.tv/maj/extensions/example",
                  prefix="eg",
                  symbol="Person")
      public class PersonImpl
      extends ContributorImpl
      implements Person, CommonConstants, Serializable, XMLSerializable, Cloneable

  Person who makes and/or contributes a resource. Implementation.

  See Also:
    Serialized Form

- - ### Field Summary

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

      `ObjectClassPropertyID`

    - ### Fields inherited from interface tv.amwa.maj.constant.CommonConstants

      `AAF_METADICT_NAMESPACE, AAF_METADICT_PREFIX, AAF_XML_NAMESPACE, AAF_XML_PREFIX, ApplicationPluginObjectID, ApplicationPluginsID, MAX_NUM_RGBA_COMPS, MemberOfID, ObjectClassID, ParentClassID, PropertiesID, XMLClassIDAsAttributeName`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PersonImpl()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Person` | `clone()` Create a cloned copy of this interchange object.
    `DateStruct` | `getDOB()` Returns the date of birth of the person.
    `String` | `getEmail()` Returns the contact e-mail address for the person.
    `void` | `setDOB(DateStruct dOB)` Sets the date of birth of the person.
    `void` | `setEmail(String email)` Sets the contact e-mail address for the person.

    - ### Methods inherited from class tv.amwa.maj.extensions.example.impl.ContributorImpl

      `getName, setName`

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

      `getLinkedDescriptiveObjectPluginID, setLinkedDescriptiveObjectPluginID`

    - ### 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.extensions.example.Contributor

      `getName, setName`

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

      `getLinkedDescriptiveObjectPluginID, setLinkedDescriptiveObjectPluginID`

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

    - #### PersonImpl

          public PersonImpl()

  - ### Method Detail

    - #### getDOB

          @MediaProperty(definedName="DOB",
                         uuid1=253759745,
                         uuid2=259,
                         uuid3=512,
                         uuid4={6,14,43,52,1,1,1,1},
                         typeName="DateStruct",
                         optional=true,
                         uniqueIdentifier=false,
                         pid=0,
                         description="Date of birth of the person.",
                         symbol="DOB")
          public DateStruct getDOB()
                                                                                                                                                                                                                                                                                                                                                                                                                      throws PropertyNotPresentException

      Description copied from interface: `Person`

      Returns the date of birth of the person.

      This is an optional property.

      Specified by:
        `getDOB` in interface `Person`
      Returns:
        Date of birth of the person.
      Throws:
        `PropertyNotPresentException` - The optional d o b property is not present for this person.

    - #### setDOB

          @MediaPropertySetter(value="DOB")
          public void setDOB(DateStruct dOB)

      Description copied from interface: `Person`

      Sets the date of birth of the person.

      Set this optional property to `null` to omit it.

      Specified by:
        `setDOB` in interface `Person`
      Parameters:
        `dOB` - Date of birth of the person.

    - #### getEmail

          @MediaProperty(definedName="Email",
                         uuid1=253759745,
                         uuid2=259,
                         uuid3=256,
                         uuid4={6,14,43,52,1,1,1,1},
                         typeName="UTF16String",
                         optional=true,
                         uniqueIdentifier=false,
                         pid=0,
                         description="Contact e-mail address for the person.",
                         symbol="Email")
          public String getEmail()
                                                                                                                                                                                                                                                                                                                                                                                                                                   throws PropertyNotPresentException

      Description copied from interface: `Person`

      Returns the contact e-mail address for the person.

      This is an optional property.

      Specified by:
        `getEmail` in interface `Person`
      Returns:
        Contact e-mail address for the person.
      Throws:
        `PropertyNotPresentException` - The optional email property is not present for this person.

    - #### setEmail

          @MediaPropertySetter(value="Email")
          public void setEmail(String email)

      Description copied from interface: `Person`

      Sets the contact e-mail address for the person.

      Set this optional property to `null` to omit it.

      Specified by:
        `setEmail` in interface `Person`
      Parameters:
        `email` - Contact e-mail address for the person.

    - #### clone

          public Person clone()

      Description copied from interface: `InterchangeObject`

      Create a cloned copy of this interchange object.

      Specified by:
        `clone` in interface `Contributor`
      Specified by:
        `clone` in interface `Person`
      Specified by:
        `clone` in interface `MediaEntity`
      Specified by:
        `clone` in interface `DescriptiveObject`
      Specified by:
        `clone` in interface `InterchangeObject`
      Overrides:
        `clone` in class `ContributorImpl`
      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.