public abstract class IIOMetadataFormatImpl extends Objectimplements IIOMetadataFormat
IIOMetadataFormat interface. In addition, a static instance representing the standard, plug-in neutral
javax_imageio_1.0 format is provided by the
getStandardFormatInstance method.
In order to supply localized descriptions of elements and attributes, a ResourceBundle with a base name of this.getClass().getName() + "Resources" should be supplied via the usual mechanism used by ResourceBundle.getBundle. Briefly, the subclasser supplies one or more additional classes according to a naming convention (by default, the fully-qualified name of the subclass extending IIMetadataFormatImpl, plus the string "Resources", plus the country, language, and variant codes separated by underscores). At run time, calls to getElementDescription or getAttributeDescription will attempt to load such classes dynamically according to the supplied locale, and will use either the element name, or the element name followed by a '/' character followed by the attribute name as a key. This key will be supplied to the ResourceBundle's getString method, and the resulting localized description of the node or attribute is returned.
The subclass may supply a different base name for the resource bundles using the setResourceBaseName method.
A subclass may choose its own localization mechanism, if so desired, by overriding the supplied implementations of getElementDescription and getAttributeDescription.
ResourceBundle.getBundle(String,Locale)
| Modifier and Type | Field and Description |
|---|---|
static String |
standardMetadataFormatName
A
String constant containing the standard format name,
"javax_imageio_1.0".
|
CHILD_POLICY_ALL, CHILD_POLICY_CHOICE, CHILD_POLICY_EMPTY, CHILD_POLICY_MAX, CHILD_POLICY_REPEAT, CHILD_POLICY_SEQUENCE, CHILD_POLICY_SOME, DATATYPE_BOOLEAN, DATATYPE_DOUBLE, DATATYPE_FLOAT, DATATYPE_INTEGER, DATATYPE_STRING, VALUE_ARBITRARY, VALUE_ENUMERATION, VALUE_LIST, VALUE_NONE, VALUE_RANGE, VALUE_RANGE_MAX_INCLUSIVE, VALUE_RANGE_MAX_INCLUSIVE_MASK, VALUE_RANGE_MIN_INCLUSIVE, VALUE_RANGE_MIN_INCLUSIVE_MASK, VALUE_RANGE_MIN_MAX_INCLUSIVE| Constructor and Description |
|---|
IIOMetadataFormatImpl(String
Constructs a blank
IIOMetadataFormatImpl instance, with a given root element name and child policy (other than
CHILD_POLICY_REPEAT).
|
IIOMetadataFormatImpl(String
Constructs a blank
IIOMetadataFormatImpl instance, with a given root element name and a child policy of
CHILD_POLICY_REPEAT.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
addAttribute(String
Adds a new attribute to a previously defined element that will be defined by a list of values.
|
protected void |
addAttribute(String
Adds a new attribute to a previously defined element that may be set to an arbitrary value.
|
protected void |
addAttribute(String
Adds a new attribute to a previously defined element that will be defined by a set of enumerated values.
|
protected void |
addAttribute(String
Adds a new attribute to a previously defined element that will be defined by a range of values.
|
protected void |
addBooleanAttribute(String
Adds a new attribute to a previously defined element that will be defined by the enumerated values
TRUE and
FALSE, with a datatype of
DATATYPE_BOOLEAN.
|
protected void |
addChildElement(String
Adds an existing element to the list of legal children for a given parent node type.
|
protected void |
addElement(String
Adds a new element type to this metadata document format with a child policy other than
CHILD_POLICY_REPEAT.
|
protected void |
addElement(String
Adds a new element type to this metadata document format with a child policy of
CHILD_POLICY_REPEAT.
|
protected void |
addObjectValue(String
Allows an
Object reference of a given class type to be stored in nodes implementing the named element.
|
protected <T> void |
addObjectValue(String
Allows an
Object reference of a given class type to be stored in nodes implementing the named element.
|
protected <T> void |
addObjectValue(String
Allows an
Object reference of a given class type to be stored in nodes implementing the named element.
|
protected <T extends Object |
addObjectValue(String
Allows an
Object reference of a given class type to be stored in nodes implementing the named element.
|
abstract boolean |
canNodeAppear(String
Returns
true if the element (and the subtree below it) is allowed to appear in a metadata document for an image of the given type, defined by an
ImageTypeSpecifier.
|
int |
getAttributeDataType(String
Returns one of the constants starting with
DATATYPE_, indicating the format and interpretation of the value of the given attribute within the named element.
|
String |
getAttributeDefaultValue(String
Returns the default value of the named attribute, if it is not explicitly present within the named element, as a
String, or
null if no default value is available.
|
String |
getAttributeDescription(String
Returns a
String containing a description of the named attribute, or
null.
|
String |
getAttributeEnumerations(String
Returns an array of
Strings containing the legal enumerated values for the given attribute within the named element.
|
int |
getAttributeListMaxLength(String
Returns the maximum number of list items that may be used to define this attribute.
|
int |
getAttributeListMinLength(String
Returns the minimum number of list items that may be used to define this attribute.
|
String |
getAttributeMaxValue(String
Returns the maximum legal value for the attribute.
|
String |
getAttributeMinValue(String
Returns the minimum legal value for the attribute.
|
String |
getAttributeNames(String
Returns an array of
Strings listing the names of the attributes that may be associated with the named element.
|
int |
getAttributeValueType(String
Returns one of the constants starting with
VALUE_, indicating whether the values of the given attribute within the named element are arbitrary, constrained to lie within a specified range, constrained to be one of a set of enumerated values, or are a whitespace-separated list of arbitrary values.
|
String |
getChildNames(String
Returns an array of
Strings indicating the names of the element which are allowed to be children of the named element, in the order in which they should appear.
|
int |
getChildPolicy(String
Returns one of the constants starting with
CHILD_POLICY_, indicating the legal pattern of children for the named element.
|
String |
getElementDescription(String
Returns a
String containing a description of the named element, or
null.
|
int |
getElementMaxChildren(String
Returns the maximum number of children of the named element with child policy
CHILD_POLICY_REPEAT.
|
int |
getElementMinChildren(String
Returns the minimum number of children of the named element with child policy
CHILD_POLICY_REPEAT.
|
int |
getObjectArrayMaxLength(String
Returns the maximum number of array elements that may be used to define the
Object reference within the named element.
|
int |
getObjectArrayMinLength(String
Returns the minimum number of array elements that may be used to define the
Object reference within the named element.
|
Class |
getObjectClass(String
Returns the
Class type of the
Object reference stored within the element.
|
Object |
getObjectDefaultValue(String
Returns an
Objects containing the default value for the
Object reference within the named element.
|
Object |
getObjectEnumerations(String
Returns an array of
Objects containing the legal enumerated values for the
Object reference within the named element.
|
Comparable |
getObjectMaxValue(String
Returns the maximum legal value for the
Object reference within the named element.
|
Comparable |
getObjectMinValue(String
Returns the minimum legal value for the
Object reference within the named element.
|
int |
getObjectValueType(String
Returns one of the enumerated values starting with
VALUE_, indicating the type of values (enumeration, range, or array) that are allowed for the
Object reference.
|
protected String |
getResourceBaseName()
Returns the currently set base name for locating
ResourceBundles.
|
String |
getRootName()
Returns the name of the root element of the format.
|
static IIOMetadataFormat |
getStandardFormatInstance()
Returns an
IIOMetadataFormat object describing the standard, plug-in neutral
javax.imageio_1.0 metadata document format described in the comment of the
javax.imageio.metadata package.
|
boolean |
isAttributeRequired(String
Returns
true if the named attribute must be present within the named element.
|
protected void |
removeAttribute(String
Removes an attribute from a previously defined element.
|
protected void |
removeElement(String
Removes an element from the format.
|
protected void |
removeObjectValue(String
Disallows an
Object reference from being stored in nodes implementing the named element.
|
protected void |
setResourceBaseName(String
Sets a new base name for locating
ResourceBundles containing descriptions of elements and attributes for this format.
|
public static final StringstandardMetadataFormatName
String constant containing the standard format name,
"javax_imageio_1.0".
public IIOMetadataFormatImpl(StringrootName, int childPolicy)
IIOMetadataFormatImpl instance, with a given root element name and child policy (other than
CHILD_POLICY_REPEAT). Additional elements, and their attributes and
Object reference information may be added using the various
add methods.
rootName - the name of the root element.
childPolicy - one of the
CHILD_POLICY_* constants, other than
CHILD_POLICY_REPEAT.
IllegalArgumentException - if
rootName is
null.
IllegalArgumentException - if
childPolicy is not one of the predefined constants.
public IIOMetadataFormatImpl(StringrootName, int minChildren, int maxChildren)
IIOMetadataFormatImpl instance, with a given root element name and a child policy of
CHILD_POLICY_REPEAT. Additional elements, and their attributes and
Object reference information may be added using the various
add methods.
rootName - the name of the root element.
minChildren - the minimum number of children of the node.
maxChildren - the maximum number of children of the node.
IllegalArgumentException - if
rootName is
null.
IllegalArgumentException - if
minChildren is negative or larger than
maxChildren.
protected void setResourceBaseName(StringresourceBaseName)
ResourceBundles containing descriptions of elements and attributes for this format.
Prior to the first time this method is called, the base name will be equal to this.getClass().getName() + "Resources".
resourceBaseName - a
String containing the new base name.
IllegalArgumentException - if
resourceBaseName is
null.
getResourceBaseName()
protected StringgetResourceBaseName()
ResourceBundles.
String containing the base name.
setResourceBaseName(java.lang.String)
protected void addElement(StringelementName, String parentName, int childPolicy)
CHILD_POLICY_REPEAT.
elementName - the name of the new element.
parentName - the name of the element that will be the parent of the new element.
childPolicy - one of the
CHILD_POLICY_* constants, other than
CHILD_POLICY_REPEAT, indicating the child policy of the new element.
IllegalArgumentException - if
parentName is
null, or is not a legal element name for this format.
IllegalArgumentException - if
childPolicy is not one of the predefined constants.
protected void addElement(StringelementName, String parentName, int minChildren, int maxChildren)
CHILD_POLICY_REPEAT.
elementName - the name of the new element.
parentName - the name of the element that will be the parent of the new element.
minChildren - the minimum number of children of the node.
maxChildren - the maximum number of children of the node.
IllegalArgumentException - if
parentName is
null, or is not a legal element name for this format.
IllegalArgumentException - if
minChildren is negative or larger than
maxChildren.
protected void addChildElement(StringelementName, String parentName)
parentName - the name of the element that will be the new parent of the element.
elementName - the name of the element to be added as a child.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
IllegalArgumentException - if
parentName is
null, or is not a legal element name for this format.
protected void removeElement(StringelementName)
elementName - the name of the element to be removed.
protected void addAttribute(StringelementName, String attrName, int dataType, boolean required, String defaultValue)
elementName - the name of the element.
attrName - the name of the attribute being added.
dataType - the data type (string format) of the attribute, one of the
DATATYPE_* constants.
required -
true if the attribute must be present.
defaultValue - the default value for the attribute, or
null.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
IllegalArgumentException - if
attrName is
null.
IllegalArgumentException - if
dataType is not one of the predefined constants.
protected void addAttribute(StringelementName, String attrName, int dataType, boolean required, String defaultValue, List <String > enumeratedValues)
elementName - the name of the element.
attrName - the name of the attribute being added.
dataType - the data type (string format) of the attribute, one of the
DATATYPE_* constants.
required -
true if the attribute must be present.
defaultValue - the default value for the attribute, or
null.
enumeratedValues - a
List of
Strings containing the legal values for the attribute.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
IllegalArgumentException - if
attrName is
null.
IllegalArgumentException - if
dataType is not one of the predefined constants.
IllegalArgumentException - if
enumeratedValues is
null.
IllegalArgumentException - if
enumeratedValues does not contain at least one entry.
IllegalArgumentException - if
enumeratedValues contains an element that is not a
String or is
null.
protected void addAttribute(StringelementName, String attrName, int dataType, boolean required, String defaultValue, String minValue, String maxValue, boolean minInclusive, boolean maxInclusive)
elementName - the name of the element.
attrName - the name of the attribute being added.
dataType - the data type (string format) of the attribute, one of the
DATATYPE_* constants.
required -
true if the attribute must be present.
defaultValue - the default value for the attribute, or
null.
minValue - the smallest (inclusive or exclusive depending on the value of
minInclusive) legal value for the attribute, as a
String.
maxValue - the largest (inclusive or exclusive depending on the value of
minInclusive) legal value for the attribute, as a
String.
minInclusive -
true if
minValue is inclusive.
maxInclusive -
true if
maxValue is inclusive.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
IllegalArgumentException - if
attrName is
null.
IllegalArgumentException - if
dataType is not one of the predefined constants.
protected void addAttribute(StringelementName, String attrName, int dataType, boolean required, int listMinLength, int listMaxLength)
elementName - the name of the element.
attrName - the name of the attribute being added.
dataType - the data type (string format) of the attribute, one of the
DATATYPE_* constants.
required -
true if the attribute must be present.
listMinLength - the smallest legal number of list items.
listMaxLength - the largest legal number of list items.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
IllegalArgumentException - if
attrName is
null.
IllegalArgumentException - if
dataType is not one of the predefined constants.
IllegalArgumentException - if
listMinLength is negative or larger than
listMaxLength.
protected void addBooleanAttribute(StringelementName, String attrName, boolean hasDefaultValue, boolean defaultValue)
TRUE and
FALSE, with a datatype of
DATATYPE_BOOLEAN.
elementName - the name of the element.
attrName - the name of the attribute being added.
hasDefaultValue -
true if a default value should be present.
defaultValue - the default value for the attribute as a
boolean, ignored if
hasDefaultValue is
false.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
IllegalArgumentException - if
attrName is
null.
protected void removeAttribute(StringelementName, String attrName)
elementName - the name of the element.
attrName - the name of the attribute being removed.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
protected <T> void addObjectValue(StringelementName, Class <T> classType, boolean required, T defaultValue)
Object reference of a given class type to be stored in nodes implementing the named element. The value of the
Object is unconstrained other than by its class type.
If an Object reference was previously allowed, the previous settings are overwritten.
T - the type of the object.
elementName - the name of the element.
classType - a
Class variable indicating the legal class type for the object value.
required -
true if an object value must be present.
defaultValue - the default value for the
Object reference, or
null.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
protected <T> void addObjectValue(StringelementName, Class <T> classType, boolean required, T defaultValue, List <? extends T> enumeratedValues)
Object reference of a given class type to be stored in nodes implementing the named element. The value of the
Object must be one of the values given by
enumeratedValues.
If an Object reference was previously allowed, the previous settings are overwritten.
T - the type of the object.
elementName - the name of the element.
classType - a
Class variable indicating the legal class type for the object value.
required -
true if an object value must be present.
defaultValue - the default value for the
Object reference, or
null.
enumeratedValues - a
List of
Objects containing the legal values for the object reference.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
IllegalArgumentException - if
enumeratedValues is
null.
IllegalArgumentException - if
enumeratedValues does not contain at least one entry.
IllegalArgumentException - if
enumeratedValues contains an element that is not an instance of the class type denoted by
classType or is
null.
protected <T extends Object& Comparable <? super T>> void addObjectValue(String elementName, Class <T> classType, T defaultValue, Comparable <? super T> minValue, Comparable <? super T> maxValue, boolean minInclusive, boolean maxInclusive)
Object reference of a given class type to be stored in nodes implementing the named element. The value of the
Object must be within the range given by
minValue and
maxValue. Furthermore, the class type must implement the
Comparable interface.
If an Object reference was previously allowed, the previous settings are overwritten.
T - the type of the object.
elementName - the name of the element.
classType - a
Class variable indicating the legal class type for the object value.
defaultValue - the default value for the
minValue - the smallest (inclusive or exclusive depending on the value of
minInclusive) legal value for the object value, as a
String.
maxValue - the largest (inclusive or exclusive depending on the value of
minInclusive) legal value for the object value, as a
String.
minInclusive -
true if
minValue is inclusive.
maxInclusive -
true if
maxValue is inclusive.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
protected void addObjectValue(StringelementName, Class <?> classType, int arrayMinLength, int arrayMaxLength)
Object reference of a given class type to be stored in nodes implementing the named element. The value of the
Object must an array of objects of class type given by
classType, with at least
arrayMinLength and at most
arrayMaxLength elements.
If an Object reference was previously allowed, the previous settings are overwritten.
elementName - the name of the element.
classType - a
Class variable indicating the legal class type for the object value.
arrayMinLength - the smallest legal length for the array.
arrayMaxLength - the largest legal length for the array.
IllegalArgumentException - if
elementName is not a legal element name for this format.
protected void removeObjectValue(StringelementName)
Object reference from being stored in nodes implementing the named element.
elementName - the name of the element.
IllegalArgumentException - if
elementName is not a legal element name for this format.
public StringgetRootName()
IIOMetadataFormat
getRootName in interface
IIOMetadataFormat
String.
public abstract boolean canNodeAppear(StringelementName, ImageTypeSpecifier imageType)
IIOMetadataFormat
true if the element (and the subtree below it) is allowed to appear in a metadata document for an image of the given type, defined by an
ImageTypeSpecifier. For example, a metadata document format might contain an element that describes the primary colors of the image, which would not be allowed when writing a grayscale image.
canNodeAppear in interface
IIOMetadataFormat
elementName - the name of the element being queried.
imageType - an
ImageTypeSpecifier indicating the type of the image that will be associated with the metadata.
true if the node is meaningful for images of the given type.
public int getElementMinChildren(StringelementName)
IIOMetadataFormat
CHILD_POLICY_REPEAT. For example, an element representing color primary information might be required to have at least 3 children, one for each primary.
getElementMinChildren in interface
IIOMetadataFormat
elementName - the name of the element being queried.
int.
public int getElementMaxChildren(StringelementName)
IIOMetadataFormat
CHILD_POLICY_REPEAT. For example, an element representing an entry in an 8-bit color palette might be allowed to repeat up to 256 times. A value of
Integer.MAX_VALUE may be used to specify that there is no upper bound.
getElementMaxChildren in interface
IIOMetadataFormat
elementName - the name of the element being queried.
int.
public StringgetElementDescription(String elementName, Locale locale)
String containing a description of the named element, or
null. The description will be localized for the supplied
Locale if possible.
The default implementation will first locate a ResourceBundle using the current resource base name set by setResourceBaseName and the supplied Locale, using the fallback mechanism described in the comments for ResourceBundle.getBundle. If a ResourceBundle is found, the element name will be used as a key to its getString method, and the result returned. If no ResourceBundle is found, or no such key is present, null will be returned.
If locale is null, the current default Locale returned by Locale.getLocale will be used.
getElementDescription in interface
IIOMetadataFormat
elementName - the name of the element.
locale - the
Locale for which localization will be attempted.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
setResourceBaseName(java.lang.String)
public int getChildPolicy(StringelementName)
IIOMetadataFormat
CHILD_POLICY_, indicating the legal pattern of children for the named element.
getChildPolicy in interface
IIOMetadataFormat
elementName - the name of the element being queried.
CHILD_POLICY_* constants.
public String[] getChildNames(String elementName)
IIOMetadataFormat
Strings indicating the names of the element which are allowed to be children of the named element, in the order in which they should appear. If the element cannot have children,
null is returned.
getChildNames in interface
IIOMetadataFormat
elementName - the name of the element being queried.
Strings, or null.
public String[] getAttributeNames(String elementName)
IIOMetadataFormat
Strings listing the names of the attributes that may be associated with the named element.
getAttributeNames in interface
IIOMetadataFormat
elementName - the name of the element being queried.
Strings.
public int getAttributeValueType(StringelementName, String attrName)
IIOMetadataFormat
VALUE_, indicating whether the values of the given attribute within the named element are arbitrary, constrained to lie within a specified range, constrained to be one of a set of enumerated values, or are a whitespace-separated list of arbitrary values.
getAttributeValueType in interface
IIOMetadataFormat
elementName - the name of the element being queried.
attrName - the name of the attribute being queried.
VALUE_* constants.
public int getAttributeDataType(StringelementName, String attrName)
IIOMetadataFormat
DATATYPE_, indicating the format and interpretation of the value of the given attribute within the named element. If
getAttributeValueType returns
VALUE_LIST, then the legal value is a whitespace-spearated list of values of the returned datatype.
getAttributeDataType in interface
IIOMetadataFormat
elementName - the name of the element being queried.
attrName - the name of the attribute being queried.
DATATYPE_* constants.
public boolean isAttributeRequired(StringelementName, String attrName)
IIOMetadataFormat
true if the named attribute must be present within the named element.
isAttributeRequired in interface
IIOMetadataFormat
elementName - the name of the element being queried.
attrName - the name of the attribute being queried.
true if the attribute must be present.
public StringgetAttributeDefaultValue(String elementName, String attrName)
IIOMetadataFormat
String, or
null if no default value is available.
getAttributeDefaultValue in interface
IIOMetadataFormat
elementName - the name of the element being queried.
attrName - the name of the attribute being queried.
String containing the default value, or
null.
public String[] getAttributeEnumerations(String elementName, String attrName)
IIOMetadataFormat
Strings containing the legal enumerated values for the given attribute within the named element. This method should only be called if
getAttributeValueType returns
VALUE_ENUMERATION.
getAttributeEnumerations in interface
IIOMetadataFormat
elementName - the name of the element being queried.
attrName - the name of the attribute being queried.
Strings.
public StringgetAttributeMinValue(String elementName, String attrName)
IIOMetadataFormat
getAttributeValueType. The value is returned as a
String; its interpretation is dependent on the value of
getAttributeDataType. This method should only be called if
getAttributeValueType returns
VALUE_RANGE_*.
getAttributeMinValue in interface
IIOMetadataFormat
elementName - the name of the element being queried.
attrName - the name of the attribute being queried.
String containing the smallest legal value for the attribute.
public StringgetAttributeMaxValue(String elementName, String attrName)
IIOMetadataFormat
getAttributeValueType. The value is returned as a
String; its interpretation is dependent on the value of
getAttributeDataType. This method should only be called if
getAttributeValueType returns
VALUE_RANGE_*.
getAttributeMaxValue in interface
IIOMetadataFormat
elementName - the name of the element being queried, as a
String.
attrName - the name of the attribute being queried.
String containing the largest legal value for the attribute.
public int getAttributeListMinLength(StringelementName, String attrName)
IIOMetadataFormat
String containing multiple whitespace-separated items. This method should only be called if
getAttributeValueType returns
VALUE_LIST.
getAttributeListMinLength in interface
IIOMetadataFormat
elementName - the name of the element being queried.
attrName - the name of the attribute being queried.
public int getAttributeListMaxLength(StringelementName, String attrName)
IIOMetadataFormat
Integer.MAX_VALUE may be used to specify that there is no upper bound. The attribute itself is defined as a
String containing multiple whitespace-separated items. This method should only be called if
getAttributeValueType returns
VALUE_LIST.
getAttributeListMaxLength in interface
IIOMetadataFormat
elementName - the name of the element being queried.
attrName - the name of the attribute being queried.
public StringgetAttributeDescription(String elementName, String attrName, Locale locale)
String containing a description of the named attribute, or
null. The description will be localized for the supplied
Locale if possible.
The default implementation will first locate a ResourceBundle using the current resource base name set by setResourceBaseName and the supplied Locale, using the fallback mechanism described in the comments for ResourceBundle.getBundle. If a ResourceBundle is found, the element name followed by a "/" character followed by the attribute name (elementName + "/" + attrName) will be used as a key to its getString method, and the result returned. If no ResourceBundle is found, or no such key is present, null will be returned.
If locale is null, the current default Locale returned by Locale.getLocale will be used.
getAttributeDescription in interface
IIOMetadataFormat
elementName - the name of the element.
attrName - the name of the attribute.
locale - the
Locale for which localization will be attempted, or
null.
IllegalArgumentException - if
elementName is
null, or is not a legal element name for this format.
IllegalArgumentException - if
attrName is
null or is not a legal attribute name for this element.
setResourceBaseName(java.lang.String)
public int getObjectValueType(StringelementName)
IIOMetadataFormat
VALUE_, indicating the type of values (enumeration, range, or array) that are allowed for the
Object reference. If no object value can be stored within the given element, the result of this method will be
VALUE_NONE.
Object references whose legal values are defined as a range must implement the Comparable interface.
getObjectValueType in interface
IIOMetadataFormat
elementName - the name of the element being queried.
VALUE_* constants.
Comparable
public Class<?> getObjectClass(String elementName)
IIOMetadataFormat
Class type of the
Object reference stored within the element. If this element may not contain an
Object reference, an
IllegalArgumentException will be thrown. If the class type is an array, this field indicates the underlying class type (
e.g, for an array of
ints, this method would return
int.class).
Object references whose legal values are defined as a range must implement the Comparable interface.
getObjectClass in interface
IIOMetadataFormat
elementName - the name of the element being queried.
Class object.
public ObjectgetObjectDefaultValue(String elementName)
IIOMetadataFormat
Objects containing the default value for the
Object reference within the named element.
getObjectDefaultValue in interface
IIOMetadataFormat
elementName - the name of the element being queried.
Object.
public Object[] getObjectEnumerations(String elementName)
IIOMetadataFormat
Objects containing the legal enumerated values for the
Object reference within the named element. This method should only be called if
getObjectValueType returns
VALUE_ENUMERATION.
The Object associated with a node that accepts enumerated values must be equal to one of the values returned by this method, as defined by the == operator (as opposed to the Object.equals method).
getObjectEnumerations in interface
IIOMetadataFormat
elementName - the name of the element being queried.
Objects.
public Comparable<?> getObjectMinValue(String elementName)
IIOMetadataFormat
Object reference within the named element. Whether this value is inclusive or exclusive may be determined by the value of
getObjectValueType. This method should only be called if
getObjectValueType returns one of the constants starting with
VALUE_RANGE.
getObjectMinValue in interface
IIOMetadataFormat
elementName - the name of the element being queried.
public Comparable<?> getObjectMaxValue(String elementName)
IIOMetadataFormat
Object reference within the named element. Whether this value is inclusive or exclusive may be determined by the value of
getObjectValueType. This method should only be called if
getObjectValueType returns one of the constants starting with
VALUE_RANGE.
getObjectMaxValue in interface
IIOMetadataFormat
elementName - the name of the element being queried.
public int getObjectArrayMinLength(StringelementName)
IIOMetadataFormat
Object reference within the named element. This method should only be called if
getObjectValueType returns
VALUE_LIST.
getObjectArrayMinLength in interface
IIOMetadataFormat
elementName - the name of the element being queried.
Object reference.
public int getObjectArrayMaxLength(StringelementName)
IIOMetadataFormat
Object reference within the named element. A value of
Integer.MAX_VALUE may be used to specify that there is no upper bound. This method should only be called if
getObjectValueType returns
VALUE_LIST.
getObjectArrayMaxLength in interface
IIOMetadataFormat
elementName - the name of the element being queried.
Object reference.
public static IIOMetadataFormatgetStandardFormatInstance()
IIOMetadataFormat object describing the standard, plug-in neutral
javax.imageio_1.0 metadata document format described in the comment of the
javax.imageio.metadata package.
IIOMetadataFormat instance.