public interface ApplicationObject extends InterchangeObject
Common properties of application plugin objects and application referenced objects. These classes provide the mechanism to decorate interchange objects with application-specific extension metadata.
ExtensionScheme| Modifier and Type | Method and Description |
|---|---|
void |
clearExtensionProperties()
Clear all extension properties from this application object, effectively omitting
them all.
|
ApplicationObject |
clone()
Create a cloned copy of this application object.
|
int |
countExtensionProperties()
Returns the number of extension properties that are present for this application
object.
|
ClassDefinition |
getBaseClass()
Returns the class identifier of the immediate superclass that this object extends.
|
PropertyValue |
getExtensionProperty(AUID propertyID)
Get the value of an extension property by its property identifier.
|
PropertyValue |
getExtensionProperty(String propertyName)
Get the value of an extension property by its property name.
|
Set<AUID> |
getExtensionPropertyIDs()
Returns the set of extension property identifiers for present properties of this
application object.
|
SortedMap<? extends PropertyDefinition,? extends PropertyValue> |
getProperties()
Creates a map of all present property definitions
of this application object and their current values.
|
boolean |
isExtensionPropertyPresent(AUID propertyID)
Determines whether the given property identifier is for a present property of the
application object.
|
boolean |
isExtensionPropertyPresent(String propertyName)
Determines whether the given property name is for a present property of the
application object.
|
void |
putExtensionProperty(AUID propertyID,
PropertyValue propertyValue)
Put an extension property value into this application object by property identifier, either
creating the property the property and making it present, or updating its value.
|
void |
putExtensionProperty(String propertyName,
PropertyValue propertyValue)
Put an extension property value into this application object by property name, either
creating the property the property and making it present, or updating its value.
|
void |
setBaseClass(ClassDefinition baseClass)
Sets the class identifier of the immediate superclass that this object extends.
|
addApplicationPlugin, clearApplicationPlugins, containsApplicationPlugin, containsApplicationPlugin, countApplicationPlugins, deepEquals, disableGenerationTracking, enableGenerationTracking, equals, getApplicationPlugins, getGeneration, getLinkedGenerationID, getObjectClass, isGenerationTracked, removeApplicationPlugin, removeApplicationPlugin, setLinkedGenerationID, setObjectClass, toStringgetPersistentID, setPersistentIndexClassDefinition getBaseClass() throws PropertyNotPresentException
Returns the class identifier of the immediate superclass that this object extends. This is an optional property.
PropertyNotPresentException - The optional base class property is not present for
this application object.InterchangeObject.getObjectClass()void setBaseClass(ClassDefinition baseClass)
Sets the class identifier of the immediate superclass that this object extends. Set
this optional property to null to omit it.
baseClass - Class identifier of the immediate superclass that this object extends.InterchangeObject.setObjectClass(ClassDefinition)void putExtensionProperty(AUID propertyID, PropertyValue propertyValue) throws IllegalArgumentException, NullPointerException, IllegalPropertyValueException
Put an extension property value into this application object by property identifier, either creating the property the property and making it present, or updating its value. The property should be within the context of the defined extension scheme.
Note that the property value cannot itself be null but the value it wraps
may be null, depending on the type and property definition. Property values
can be created with the TypeDefinition.createValue(Object) method.
propertyID - Identifier of the property to add or update.propertyValue - Value of the property to update.IllegalArgumentException - The given property identifier is not found within an appropriate
context.NullPointerException - One or both of the property identifier or value is/are null.IllegalPropertyValueException - The given property value does not match the type defined for
the property.putExtensionProperty(String, PropertyValue),
getExtensionProperty(AUID)void putExtensionProperty(String propertyName, PropertyValue propertyValue) throws IllegalArgumentException, NullPointerException, IllegalPropertyValueException
Put an extension property value into this application object by property name, either creating the property the property and making it present, or updating its value. The property should be within the context of the defined extension scheme.
Note that the property value cannot itself be null but the value it wraps
may be null, depending on the type and property definition. Property values
can be created with the TypeDefinition.createValue(Object) method.
propertyName - Identifier of the property to add or update.propertyValue - Value of the property to update.IllegalArgumentException - The given property identifier is not known in the extension scheme.NullPointerException - One or both of the property identifier or value is/are null.IllegalPropertyValueException - The given property value does not match the type defined for
the property.putExtensionProperty(AUID, PropertyValue),
getExtensionProperty(String)PropertyValue getExtensionProperty(AUID propertyID) throws NullPointerException, PropertyNotPresentException, IllegalArgumentException
Get the value of an extension property by its property identifier.
propertyID - Identifier of the extension property to retrieve the value of.NullPointerException - Cannot retrieve an extension property using a null
identifier.PropertyNotPresentException - The given property identifier is not present for
this application object.IllegalArgumentException - The given property identifier is not known in the extension
scheme.getExtensionProperty(String),
putExtensionProperty(String, PropertyValue)PropertyValue getExtensionProperty(String propertyName) throws NullPointerException, PropertyNotPresentException, IllegalArgumentException
Get the value of an extension property by its property name.
propertyName - Name of the extension property to retrieve the value of.NullPointerException - Cannot retrieve an extension property using a null
name.PropertyNotPresentException - The given property name is not present for
this application object.IllegalArgumentException - The given property identifier is not known in the extension
scheme.getExtensionProperty(AUID),
putExtensionProperty(String, PropertyValue)boolean isExtensionPropertyPresent(AUID propertyID) throws NullPointerException, IllegalArgumentException
Determines whether the given property identifier is for a present property of the
application object. A property is present when it exists in the extension properties
and its value is not null.
propertyID - Property identifier to check if the property is present.NullPointerException - Cannot check for the presence of a property using a null
identifier.IllegalArgumentException - The given property identifier does not match one
known in the associated extension scheme.isExtensionPropertyPresent(String),
getExtensionProperty(AUID)boolean isExtensionPropertyPresent(String propertyName) throws NullPointerException, IllegalArgumentException
Determines whether the given property name is for a present property of the
application object. A property is present when it exists in the extension properties
and its value is not null.
propertyName - Property identifier to check if the property is present.NullPointerException - Cannot check for the presence of a property using a null
identifier.IllegalArgumentException - The given property identifier does not match one
known in the associated extension scheme.isExtensionPropertyPresent(AUID),
getExtensionProperty(String)int countExtensionProperties()
Returns the number of extension properties that are present for this application object.
void clearExtensionProperties()
Clear all extension properties from this application object, effectively omitting them all.
Set<AUID> getExtensionPropertyIDs()
Returns the set of extension property identifiers for present properties of this
application object. This set can be used to iterate through all of the property
values with getExtensionProperty(AUID).
SortedMap<? extends PropertyDefinition,? extends PropertyValue> getProperties()
Creates a map of all present property definitions of this application object and their current values.
ApplicationObject clone()
Create a cloned copy of this application object.
clone in interface InterchangeObjectclone in interface MediaEntity(c)2007-2016 Richard Cartwright, all rights reserved. Licensed under Apache 2 license and subject to the AMWA IPR policy.