模块 java.desktop

接口 IIOMetadataFormat

所有已知的实现类:
IIOMetadataFormatImpl

public interface IIOMetadataFormat
描述从 IIOMetadata.getAsTree 返回并传递给 IIOMetadata.setFromTreemergeTree 的元数据文档结构的对象。文档结构由一组约束来描述,这些约束可能属于给定父元素类型的子元素的类型和数量,可能属于元素的属性的名称、类型和值,以及Object的类型和值可能存储在节点中的引用。

注意:实现此接口的类应包含一个声明为 public static getInstance() 的方法,该方法返回该类的一个实例。通常,一个实现将只构造一个实例并将其缓存以供将来调用 getInstance

如果插件作为命名模块的一部分提供,该模块必须将包含实现类的包导出到

java.desktop
模块通过合格的出口。除非出于某些其他原因也需要,否则不建议进行不合格的导出。导出包失败会导致运行时访问失败。

此类可以描述的结构是使用 XML 文档类型定义 (DTD) 可表达的结构的子集,添加了一些关于属性数据类型的基本信息以及在节点内存储 Object 引用的能力。将来,XML 模式可用于表示这些结构以及许多其他结构。

IIOMetadataFormat 描述的结构和 DTD 之间的区别如下:

  • 元素不得包含文本或将文本与嵌入标签混合。
  • 元素的子元素必须符合一些简单模式中的一种,在 CHILD_* 常量的文档中有所描述;
  • 元素的内存表示可能包含对 Object 的引用。没有规定以文本方式表示此类对象。
  • 字段摘要

    字段
    修饰符和类型
    Field
    描述
    static final int
    getChildPolicy 返回的常量,指示元素必须按顺序具有其每个合法子元素的单个实例。
    static final int
    getChildPolicy 返回的常量,指示元素必须有零个或一个从其合法子元素中选择的子元素。
    static final int
    getChildPolicy 返回的常量,指示元素可能没有任何子元素。
    static final int
    最大的有效 CHILD_POLICY_* 常量,用于范围检查。
    static final int
    getChildPolicy 返回的常量,指示元素必须具有零个或多个其唯一合法子元素的实例。
    static final int
    getChildPolicy 返回的常量,指示元素必须具有其任何合法子元素的实例序列。
    static final int
    getChildPolicy 返回的常量,指示元素必须按顺序具有其每个合法子元素的零个或一个实例。
    static final int
    getAttributeDataType 返回的常量,指示属性的值是boolean“true”或“false”之一。
    static final int
    getAttributeDataType 返回的常量,指示属性的值是双精度十进制浮点数的字符串表示形式。
    static final int
    getAttributeDataType 返回的常量,指示属性的值是十进制浮点数的字符串表示形式。
    static final int
    getAttributeDataType 返回的常量,指示属性的值是整数的字符串表示形式。
    static final int
    getAttributeDataType 返回的常量,指示属性的值是通用 Unicode 字符串。
    static final int
    getAttributeValueTypegetObjectValueType 返回的常量,用于指示属性或用户对象可以设置为单个任意值。
    static final int
    getAttributeValueTypegetObjectValueType 返回的常量,用于指示属性或用户对象可以设置为多个枚举值之一。
    static final int
    getAttributeValueTypegetObjectValueType 返回的常量,用于指示属性或用户对象可以设置为值列表或数组。
    static final int
    getObjectValueType 返回的常量,用于指示不存在用户对象。
    static final int
    getAttributeValueTypegetObjectValueType 返回的常量,表示属性或用户对象可以设置一个值范围。
    static final int
    getAttributeValueTypegetObjectValueType 返回的常量,用于指示属性或用户对象可以设置为一个值范围。
    static final int
    可以与 VALUE_RANGE 进行或运算以获得 VALUE_RANGE_MAX_INCLUSIVE,并与 VALUE_RANGE_MIN_INCLUSIVE 进行或运算以获得 VALUE_RANGE_MIN_MAX_INCLUSIVE 的值。
    static final int
    getAttributeValueTypegetObjectValueType 返回的常量,用于指示属性或用户对象可以设置为一个值范围。
    static final int
    可以与 VALUE_RANGE 进行或运算以获得 VALUE_RANGE_MIN_INCLUSIVE,并与 VALUE_RANGE_MAX_INCLUSIVE 进行或运算以获得 VALUE_RANGE_MIN_MAX_INCLUSIVE 的值。
    static final int
    getAttributeValueTypegetObjectValueType 返回的常量,表示属性或用户对象可以设置一个值范围。
  • 方法总结

    修饰符和类型
    方法
    描述
    boolean
    canNodeAppear(String elementName, ImageTypeSpecifier imageType)
    如果允许元素(及其下方的子树)出现在由 ImageTypeSpecifier 定义的给定类型图像的元数据文档中,则返回 true
    int
    getAttributeDataType(String elementName, String attrName)
    返回以 DATATYPE_ 开头的常量之一,指示命名元素中给定属性值的格式和解释。
    getAttributeDefaultValue(String elementName, String attrName)
    返回命名属性的默认值,如果它没有明确出现在命名元素中,作为 String ,或者 null 如果没有默认值可用。
    getAttributeDescription(String elementName, String attrName, Locale locale)
    返回一个 String 包含命名属性的描述,或 null
    getAttributeEnumerations(String elementName, String attrName)
    返回一个 String 数组,其中包含命名元素中给定属性的合法枚举值。
    int
    getAttributeListMaxLength(String elementName, String attrName)
    返回可用于定义此属性的列表项的最大数量。
    int
    getAttributeListMinLength(String elementName, String attrName)
    返回可用于定义此属性的最小列表项数。
    getAttributeMaxValue(String elementName, String attrName)
    返回属性的最大合法值。
    getAttributeMinValue(String elementName, String attrName)
    返回属性的最小合法值。
    getAttributeNames(String elementName)
    返回一个 String 数组,列出可能与命名元素关联的属性名称。
    int
    getAttributeValueType(String elementName, String attrName)
    返回以 VALUE_ 开头的常量之一,指示命名元素中给定属性的值是否为任意值、是否限制在指定范围内、是否限制为一组枚举值之一,或者是否为空格分隔列表任意值。
    getChildNames(String elementName)
    返回一个 String 数组,指示允许作为命名元素子元素的元素的名称,按照它们应出现的顺序排列。
    int
    getChildPolicy(String elementName)
    返回以 CHILD_POLICY_ 开头的常量之一,指示指定元素的子元素的合法模式。
    getElementDescription(String elementName, Locale locale)
    返回包含命名元素或 null 描述的 String
    int
    返回具有子策略 CHILD_POLICY_REPEAT 的命名元素的最大子元素数。
    int
    返回具有子策略 CHILD_POLICY_REPEAT 的命名元素的最小子元素数。
    int
    返回可用于在命名元素中定义 Object 引用的数组元素的最大数量。
    int
    返回可用于在命名元素中定义 Object 引用的数组元素的最小数量。
    Class<?>
    getObjectClass(String elementName)
    返回存储在元素中的 Object 引用的 Class 类型。
    返回一个 Object s,其中包含命名元素中 Object 引用的默认值。
    返回一个 Object 数组,其中包含命名元素中 Object 引用的合法枚举值。
    getObjectMaxValue(String elementName)
    返回命名元素中 Object 引用的最大合法值。
    getObjectMinValue(String elementName)
    返回命名元素中 Object 引用的最小合法值。
    int
    getObjectValueType(String elementName)
    返回以 VALUE_ 开头的枚举值之一,指示 Object 引用允许的值类型(枚举、范围或数组)。
    返回格式的根元素的名称。
    boolean
    isAttributeRequired(String elementName, String attrName)
    如果命名属性必须存在于命名元素中,则返回 true
  • 字段详细信息

    • CHILD_POLICY_EMPTY

      static final int CHILD_POLICY_EMPTY
      getChildPolicy 返回的常量,指示元素可能没有任何子元素。换句话说,它必须是叶节点。
      参见:
    • CHILD_POLICY_ALL

      static final int CHILD_POLICY_ALL
      getChildPolicy 返回的常量,指示元素必须按顺序具有其每个合法子元素的单个实例。在 DTD 术语中,元素的内容由序列 a,b,c,d,... 定义。
      参见:
    • CHILD_POLICY_SOME

      static final int CHILD_POLICY_SOME
      getChildPolicy 返回的常量,指示元素必须按顺序具有其每个合法子元素的零个或一个实例。在 DTD 术语中,元素的内容由序列 a?,b?,c?,d?,... 定义。
      参见:
    • CHILD_POLICY_CHOICE

      static final int CHILD_POLICY_CHOICE
      getChildPolicy 返回的常量,指示元素必须有零个或一个从其合法子元素中选择的子元素。在 DTD 术语中,元素的内容由选择 a|b|c|d|... 定义。
      参见:
    • CHILD_POLICY_SEQUENCE

      static final int CHILD_POLICY_SEQUENCE
      getChildPolicy 返回的常量,指示元素必须具有其任何合法子元素的实例序列。在 DTD 术语中,元素的内容由序列 (a|b|c|d|...)* 定义。
      参见:
    • CHILD_POLICY_REPEAT

      static final int CHILD_POLICY_REPEAT
      getChildPolicy 返回的常量,指示元素必须具有零个或多个其唯一合法子元素的实例。在 DTD 术语中,元素的内容由带星号的表达式 a* 定义。
      参见:
    • CHILD_POLICY_MAX

      static final int CHILD_POLICY_MAX
      最大的有效 CHILD_POLICY_* 常量,用于范围检查。
      参见:
    • VALUE_NONE

      static final int VALUE_NONE
      getObjectValueType 返回的常量,用于指示不存在用户对象。
      参见:
    • VALUE_ARBITRARY

      static final int VALUE_ARBITRARY
      getAttributeValueTypegetObjectValueType 返回的常量,用于指示属性或用户对象可以设置为单个任意值。
      参见:
    • VALUE_RANGE

      static final int VALUE_RANGE
      getAttributeValueTypegetObjectValueType 返回的常量,表示属性或用户对象可以设置一个值范围。范围的最小值和最大值都是互斥的。建议整数范围在两端都包含在内,而排他范围仅用于浮点数据。
      参见:
    • VALUE_RANGE_MIN_INCLUSIVE_MASK

      static final int VALUE_RANGE_MIN_INCLUSIVE_MASK
      可以与 VALUE_RANGE 进行或运算以获得 VALUE_RANGE_MIN_INCLUSIVE,并与 VALUE_RANGE_MAX_INCLUSIVE 进行或运算以获得 VALUE_RANGE_MIN_MAX_INCLUSIVE 的值。

      类似地,该值可以与getAttributeValueTypegetObjectValueType的值相加,以确定范围的最小值是否包含在内。

      参见:
    • VALUE_RANGE_MAX_INCLUSIVE_MASK

      static final int VALUE_RANGE_MAX_INCLUSIVE_MASK
      可以与 VALUE_RANGE 进行或运算以获得 VALUE_RANGE_MAX_INCLUSIVE,并与 VALUE_RANGE_MIN_INCLUSIVE 进行或运算以获得 VALUE_RANGE_MIN_MAX_INCLUSIVE 的值。

      类似地,该值可以与getAttributeValueTypegetObjectValueType的值相加,以确定是否包含范围的最大值。

      参见:
    • VALUE_RANGE_MIN_INCLUSIVE

      static final int VALUE_RANGE_MIN_INCLUSIVE
      getAttributeValueTypegetObjectValueType 返回的常量,用于指示属性或用户对象可以设置为一个值范围。范围的最小值(但不是最大值)包括在内。
      参见:
    • VALUE_RANGE_MAX_INCLUSIVE

      static final int VALUE_RANGE_MAX_INCLUSIVE
      getAttributeValueTypegetObjectValueType 返回的常量,用于指示属性或用户对象可以设置为一个值范围。范围的最大值(但不是最小值)包括在内。
      参见:
    • VALUE_RANGE_MIN_MAX_INCLUSIVE

      static final int VALUE_RANGE_MIN_MAX_INCLUSIVE
      getAttributeValueTypegetObjectValueType 返回的常量,表示属性或用户对象可以设置一个值范围。范围的最小值和最大值都包括在内。建议整数范围在两端都包含在内,而排他范围仅用于浮点数据。
      参见:
    • VALUE_ENUMERATION

      static final int VALUE_ENUMERATION
      getAttributeValueTypegetObjectValueType 返回的常量,用于指示属性或用户对象可以设置为多个枚举值之一。在属性的情况下,这些值是Strings;对于对象,它们是实现给定类或接口的 Object

      DATATYPE_BOOLEAN 类型的属性值应标记为枚举。

      参见:
    • VALUE_LIST

      static final int VALUE_LIST
      getAttributeValueTypegetObjectValueType 返回的常量,用于指示属性或用户对象可以设置为值列表或数组。对于属性,列表将由 String 中以空格分隔的值组成;对于对象,将使用数组。
      参见:
    • DATATYPE_STRING

      static final int DATATYPE_STRING
      getAttributeDataType 返回的常量,指示属性的值是通用 Unicode 字符串。
      参见:
    • DATATYPE_BOOLEAN

      static final int DATATYPE_BOOLEAN
      getAttributeDataType 返回的常量,指示属性的值是boolean“true”或“false”之一。 DATATYPE_BOOLEAN 类型的属性值应标记为枚举,允许的值应为字符串文字值“TRUE”或“FALSE”,尽管插件也可以识别小写或混合大小写等价物。
      参见:
    • DATATYPE_INTEGER

      static final int DATATYPE_INTEGER
      getAttributeDataType 返回的常量,指示属性的值是整数的字符串表示形式。
      参见:
    • DATATYPE_FLOAT

      static final int DATATYPE_FLOAT
      getAttributeDataType 返回的常量,指示属性的值是十进制浮点数的字符串表示形式。
      参见:
    • DATATYPE_DOUBLE

      static final int DATATYPE_DOUBLE
      getAttributeDataType 返回的常量,指示属性的值是双精度十进制浮点数的字符串表示形式。
      参见:
  • 方法详情

    • getRootName

      String  getRootName()
      返回格式的根元素的名称。
      返回:
      一个String
    • canNodeAppear

      boolean canNodeAppear(String  elementName, ImageTypeSpecifier  imageType)
      如果允许元素(及其下方的子树)出现在由 ImageTypeSpecifier 定义的给定类型图像的元数据文档中,则返回 true。例如,元数据文档格式可能包含描述图像原色的元素,这在写入灰度图像时是不允许的。
      参数:
      elementName - 被查询元素的名称。
      imageType - 一个 ImageTypeSpecifier 指示将与元数据关联的图像类型。
      返回:
      true 如果节点对给定类型的图像有意义。
    • getElementMinChildren

      int getElementMinChildren(String  elementName)
      返回具有子策略 CHILD_POLICY_REPEAT 的命名元素的最小子元素数。例如,表示颜色原色信息的元素可能需要至少有 3 个子元素,每个元素对应一个原色。
      参数:
      elementName - 被查询元素的名称。
      返回:
      一个int
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果命名元素没有 CHILD_POLICY_REPEAT 的子策略。
    • getElementMaxChildren

      int getElementMaxChildren(String  elementName)
      返回具有子策略 CHILD_POLICY_REPEAT 的命名元素的最大子元素数。例如,表示 8 位调色板中条目的元素最多可重复 256 次。 Integer.MAX_VALUE 的值可用于指定没有上限。
      参数:
      elementName - 被查询元素的名称。
      返回:
      一个int
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果命名元素没有 CHILD_POLICY_REPEAT 的子策略。
    • getElementDescription

      String  getElementDescription(String  elementName, Locale  locale)
      返回包含命名元素或 null 描述的 String 。如果可能,描述将针对提供的 Locale 进行本地化。

      如果 localenull ,则将使用 Locale.getLocale 返回的当前默认值 Locale

      参数:
      elementName - 元素的名称。
      locale - 将尝试对其进行本地化的 Locale
      返回:
      元素描述。
      抛出:
      IllegalArgumentException - 如果 elementNamenull ,或者不是此格式的合法元素名称。
    • getChildPolicy

      int getChildPolicy(String  elementName)
      返回以 CHILD_POLICY_ 开头的常量之一,指示指定元素的子元素的合法模式。
      参数:
      elementName - 被查询元素的名称。
      返回:
      CHILD_POLICY_* 常量之一。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
    • getChildNames

      String [] getChildNames(String  elementName)
      返回一个 String 数组,指示允许作为命名元素子元素的元素的名称,按照它们应出现的顺序排列。如果该元素不能有子元素,则返回 null
      参数:
      elementName - 被查询元素的名称。
      返回:
      String 的数组,或 null。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
    • getAttributeNames

      String [] getAttributeNames(String  elementName)
      返回一个 String 数组,列出可能与命名元素关联的属性名称。
      参数:
      elementName - 被查询元素的名称。
      返回:
      String 的数组。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
    • getAttributeValueType

      int getAttributeValueType(String  elementName, String  attrName)
      返回以 VALUE_ 开头的常量之一,指示命名元素中给定属性的值是否为任意值、是否限制在指定范围内、是否限制为一组枚举值之一,或者是否为空格分隔列表任意值。
      参数:
      elementName - 被查询元素的名称。
      attrName - 被查询的属性的名称。
      返回:
      VALUE_* 常量之一。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果 attrNamenull 或者不是此元素的合法属性名称。
    • getAttributeDataType

      int getAttributeDataType(String  elementName, String  attrName)
      返回以 DATATYPE_ 开头的常量之一,指示命名元素中给定属性值的格式和解释。如果 getAttributeValueType 返回 VALUE_LIST ,则合法值是返回数据类型的空格分隔值列表。
      参数:
      elementName - 被查询元素的名称。
      attrName - 被查询的属性的名称。
      返回:
      DATATYPE_* 常量之一。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果 attrNamenull 或者不是此元素的合法属性名称。
    • isAttributeRequired

      boolean isAttributeRequired(String  elementName, String  attrName)
      如果命名属性必须存在于命名元素中,则返回 true
      参数:
      elementName - 被查询元素的名称。
      attrName - 被查询的属性的名称。
      返回:
      true 如果属性必须存在。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果 attrNamenull 或者不是此元素的合法属性名称。
    • getAttributeDefaultValue

      String  getAttributeDefaultValue(String  elementName, String  attrName)
      返回命名属性的默认值,如果它没有明确出现在命名元素中,作为 String ,或者 null 如果没有默认值可用。
      参数:
      elementName - 被查询元素的名称。
      attrName - 被查询的属性的名称。
      返回:
      包含默认值的 Stringnull
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果 attrNamenull 或者不是此元素的合法属性名称。
    • getAttributeEnumerations

      String [] getAttributeEnumerations(String  elementName, String  attrName)
      返回一个 String 数组,其中包含命名元素中给定属性的合法枚举值。仅当 getAttributeValueType 返回 VALUE_ENUMERATION 时才应调用此方法。
      参数:
      elementName - 被查询元素的名称。
      attrName - 被查询的属性的名称。
      返回:
      String 的数组。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果 attrNamenull 或者不是此元素的合法属性名称。
      IllegalArgumentException - 如果给定属性未定义为枚举。
    • getAttributeMinValue

      String  getAttributeMinValue(String  elementName, String  attrName)
      返回属性的最小合法值。该值是包含还是不包含可以由 getAttributeValueType 的值确定。该值作为 String 返回;它的解释取决于 getAttributeDataType 的值。只有在 getAttributeValueType 返回 VALUE_RANGE_* 时才应调用此方法。
      参数:
      elementName - 被查询元素的名称。
      attrName - 被查询的属性的名称。
      返回:
      a String 包含属性的最小合法值。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果 attrNamenull 或者不是此元素的合法属性名称。
      IllegalArgumentException - 如果给定属性未定义为范围。
    • getAttributeMaxValue

      String  getAttributeMaxValue(String  elementName, String  attrName)
      返回属性的最大合法值。该值是包含还是不包含可以由 getAttributeValueType 的值确定。该值作为 String 返回;它的解释取决于 getAttributeDataType 的值。只有在 getAttributeValueType 返回 VALUE_RANGE_* 时才应调用此方法。
      参数:
      elementName - 被查询元素的名称,如 String
      attrName - 被查询的属性的名称。
      返回:
      String 包含属性的最大合法值。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果 attrNamenull 或者不是此元素的合法属性名称。
      IllegalArgumentException - 如果给定属性未定义为范围。
    • getAttributeListMinLength

      int getAttributeListMinLength(String  elementName, String  attrName)
      返回可用于定义此属性的最小列表项数。该属性本身被定义为一个包含多个空格分隔项的String。仅当 getAttributeValueType 返回 VALUE_LIST 时才应调用此方法。
      参数:
      elementName - 被查询元素的名称。
      attrName - 被查询的属性的名称。
      返回:
      属性的最小合法列表项数。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果 attrNamenull 或者不是此元素的合法属性名称。
      IllegalArgumentException - 如果给定属性未定义为列表。
    • getAttributeListMaxLength

      int getAttributeListMaxLength(String  elementName, String  attrName)
      返回可用于定义此属性的列表项的最大数量。 Integer.MAX_VALUE 的值可用于指定没有上限。该属性本身被定义为一个包含多个空格分隔项的String。仅当 getAttributeValueType 返回 VALUE_LIST 时才应调用此方法。
      参数:
      elementName - 被查询元素的名称。
      attrName - 被查询的属性的名称。
      返回:
      属性的最大合法列表项数。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果 attrNamenull 或者不是此元素的合法属性名称。
      IllegalArgumentException - 如果给定属性未定义为列表。
    • getAttributeDescription

      String  getAttributeDescription(String  elementName, String  attrName, Locale  locale)
      返回一个 String 包含命名属性的描述,或 null 。如果可能,描述将针对提供的 Locale 进行本地化。

      如果 localenull ,则将使用 Locale.getLocale 返回的当前默认值 Locale

      参数:
      elementName - 元素的名称。
      attrName - 属性的名称。
      locale - 将尝试对其进行本地化的 Locale
      返回:
      属性说明。
      抛出:
      IllegalArgumentException - 如果 elementNamenull ,或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果 attrNamenull 或者不是此元素的合法属性名称。
    • getObjectValueType

      int getObjectValueType(String  elementName)
      返回以 VALUE_ 开头的枚举值之一,指示 Object 引用允许的值类型(枚举、范围或数组)。如果没有对象值可以存储在给定元素中,则此方法的结果将为 VALUE_NONE

      Object 其合法值定义为范围的引用必须实现 Comparable 接口。

      参数:
      elementName - 被查询元素的名称。
      返回:
      VALUE_* 常量之一。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      参见:
    • getObjectClass

      Class <?> getObjectClass(String  elementName)
      返回存储在元素中的 Object 引用的 Class 类型。如果此元素可能不包含 Object 引用,则会抛出 IllegalArgumentException。如果类类型是数组,则此字段指示基础类类型(e.g,对于 int 的数组,此方法将返回 int.class )。

      Object 其合法值定义为范围的引用必须实现 Comparable 接口。

      参数:
      elementName - 被查询元素的名称。
      返回:
      一个 Class 对象。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果命名元素不能包含对象值 (IE,如果getObjectValueType(elementName) == VALUE_NONE)。
    • getObjectDefaultValue

      Object  getObjectDefaultValue(String  elementName)
      返回一个 Object s,其中包含命名元素中 Object 引用的默认值。
      参数:
      elementName - 被查询元素的名称。
      返回:
      一个Object
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果命名元素不能包含对象值 (IE,如果getObjectValueType(elementName) == VALUE_NONE)。
    • getObjectEnumerations

      Object [] getObjectEnumerations(String  elementName)
      返回一个 Object 数组,其中包含命名元素中 Object 引用的合法枚举值。仅当 getObjectValueType 返回 VALUE_ENUMERATION 时才应调用此方法。

      与接受枚举值的节点关联的 Object 必须等于此方法返回的值之一,如 == 运算符所定义(与 Object.equals 方法相反)。

      参数:
      elementName - 被查询元素的名称。
      返回:
      Object 的数组。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果命名元素不能包含对象值 (IE,如果getObjectValueType(elementName) == VALUE_NONE)。
      IllegalArgumentException - 如果 Object 未定义为枚举。
    • getObjectMinValue

      Comparable <?> getObjectMinValue(String  elementName)
      返回命名元素中 Object 引用的最小合法值。该值是包含还是不包含可以由 getObjectValueType 的值确定。仅当 getObjectValueType 返回以 VALUE_RANGE 开头的常量之一时,才应调用此方法。
      参数:
      elementName - 被查询元素的名称。
      返回:
      属性的最小合法值。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果命名元素不能包含对象值 (IE,如果getObjectValueType(elementName) == VALUE_NONE)。
      IllegalArgumentException - 如果 Object 未定义为范围。
    • getObjectMaxValue

      Comparable <?> getObjectMaxValue(String  elementName)
      返回命名元素中 Object 引用的最大合法值。该值是包含还是不包含可以由 getObjectValueType 的值确定。仅当 getObjectValueType 返回以 VALUE_RANGE 开头的常量之一时,才应调用此方法。
      参数:
      elementName - 被查询元素的名称。
      返回:
      属性的最小合法值。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果命名元素不能包含对象值 (IE,如果getObjectValueType(elementName) == VALUE_NONE)。
      IllegalArgumentException - 如果 Object 未定义为范围。
    • getObjectArrayMinLength

      int getObjectArrayMinLength(String  elementName)
      返回可用于在命名元素中定义 Object 引用的数组元素的最小数量。仅当 getObjectValueType 返回 VALUE_LIST 时才应调用此方法。
      参数:
      elementName - 被查询元素的名称。
      返回:
      Object 引用的最小有效数组长度。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果命名元素不能包含对象值 (IE,如果getObjectValueType(elementName) == VALUE_NONE)。
      IllegalArgumentException - 如果 Object 不是数组。
    • getObjectArrayMaxLength

      int getObjectArrayMaxLength(String  elementName)
      返回可用于在命名元素中定义 Object 引用的数组元素的最大数量。 Integer.MAX_VALUE 的值可用于指定没有上限。仅当 getObjectValueType 返回 VALUE_LIST 时才应调用此方法。
      参数:
      elementName - 被查询元素的名称。
      返回:
      Object 参考的最大有效数组长度。
      抛出:
      IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名称。
      IllegalArgumentException - 如果命名元素不能包含对象值 (IE,如果getObjectValueType(elementName) == VALUE_NONE)。
      IllegalArgumentException - 如果 Object 不是数组。