JavaTM 2 Platform
Standard Ed. 6

javax.imageio.metadata
介面 IIOMetadataFormat

所有已知實作類別:
IIOMetadataFormatImpl

public interface IIOMetadataFormat

描述從 IIOMetadata.getAsTree 返回並傳遞給 IIOMetadata.setFromTreemergeTree 的元資料文檔結構的物件。文檔結構通過以下事物描述:一個關於可能屬於某個給定父元素型別的子元素型別和數目的限制條件集合、可能屬於某個元素的屬性的名稱、型別和值、以及可能存儲在節點中的 Object 參考的型別和值。

N.B:實作此介面的類別應該套件含宣告為 public static getInstance() 的方法,該方法返回該類別的實例。通常,實作將僅建構單個實例並將其快取記憶體以備將來調用 getInstance 時使用。

可由此類別描述的結構是一個可以使用 XML 文檔型別定義 (DTD) 表示的子集,再加上一些關於屬性的資料型別的基本資訊和在節點中存儲 Object 參考的能力。將來,使用 XML 網要即可表示這些結構及其他結構。

IIOMetadataFormat 描述的結構與 DTD 之間的區別如下所示:


欄位摘要
static int CHILD_POLICY_ALL
          getChildPolicy 返回的常數,指示某個元素必須具有按順序排列的其每個合法子元素的單個實例。
static int CHILD_POLICY_CHOICE
          getChildPolicy 返回的常數,指示元素必須具有從其合法子元素中選擇的零個或一個子元素。
static int CHILD_POLICY_EMPTY
          getChildPolicy 返回的常數,指示某個元素不具有任何子元素。
static int CHILD_POLICY_MAX
          最大有效 CHILD_POLICY_* 常數,將用於範圍檢查。
static int CHILD_POLICY_REPEAT
          getChildPolicy 返回的常數,指示元素必須具有其唯一合法子元素的零個或多個實例。
static int CHILD_POLICY_SEQUENCE
          getChildPolicy 返回的常數,指示元素必須具有其所有合法子元素的實例序列。
static int CHILD_POLICY_SOME
          getChildPolicy 返回的常數,指示元素必須具有按順序排列的其每個合法子元素的零個或一個實例。
static int DATATYPE_BOOLEAN
          getAttributeDataType 返回的常數,指示屬性的值為 'true' 或 'false'。
static int DATATYPE_DOUBLE
          由 getAttributeDataType 返回的常數,指示屬性的值為雙精度十進制浮點數的字元串表示形式。
static int DATATYPE_FLOAT
          由 getAttributeDataType 返回的常數,指示屬性的值為十進制浮點數的字元串表示形式。
static int DATATYPE_INTEGER
          getAttributeDataType 返回的常數,指示屬性的值為整數的字元串表示形式。
static int DATATYPE_STRING
          getAttributeDataType 返回的常數,指示屬性的值為通用的 Unicode 字元串。
static int VALUE_ARBITRARY
          getAttributeValueTypegetObjectValueType 返回的常數,指示可以將屬性或使用者物件設置為單個任意值。
static int VALUE_ENUMERATION
          getAttributeValueTypegetObjectValueType 返回的常數,指示可以將屬性或使用者物件設置為許多列舉值之一。
static int VALUE_LIST
          getAttributeValueTypegetObjectValueType 返回的常數,指示可以將屬性或使用者物件設置為一個值的列表或陣列。
static int VALUE_NONE
          getObjectValueType 返回的常數,指示缺少使用者物件。
static int VALUE_RANGE
          getAttributeValueTypegetObjectValueType 返回的常數,指示可能將屬性或使用者物件設置為某個值範圍。
static int VALUE_RANGE_MAX_INCLUSIVE
          getAttributeValueTypegetObjectValueType 返回的常數,指示可將屬性或使用者物件設置為某個值範圍。
static int VALUE_RANGE_MAX_INCLUSIVE_MASK
          該值可以與 VALUE_RANGE 進行“或”運算來獲取 VALUE_RANGE_MAX_INCLUSIVE,可以與 VALUE_RANGE_MIN_INCLUSIVE 進行“或”運算來獲取 VALUE_RANGE_MIN_MAX_INCLUSIVE
static int VALUE_RANGE_MIN_INCLUSIVE
          getAttributeValueTypegetObjectValueType 返回的常數,指示可以將屬性或使用者物件設置為某個值範圍。
static int VALUE_RANGE_MIN_INCLUSIVE_MASK
          該值可以與 VALUE_RANGE 進行“或”運算來獲取 VALUE_RANGE_MIN_INCLUSIVE,可以與 VALUE_RANGE_MAX_INCLUSIVE 進行“或”運算來獲取 VALUE_RANGE_MIN_MAX_INCLUSIVE
static int VALUE_RANGE_MIN_MAX_INCLUSIVE
          getAttributeValueTypegetObjectValueType 返回的常數,指示可以將屬性或使用者物件設置為某個值範圍。
 
方法摘要
 boolean canNodeAppear(String elementName, ImageTypeSpecifier imageType)
          如果允許元素(和它下面的子階層樹)在給定型別(由 ImageTypeSpecifier 定義)的圖像的元資料文檔中出現,則返回 true
 int getAttributeDataType(String elementName, String attrName)
          返回以 DATATYPE_ 開頭的常數之一,指示指定元素中給定屬性的值的格式和解釋。
 String getAttributeDefaultValue(String elementName, String attrName)
          如果指定屬性不顯式存在於指定元素中,則以 String 的形式返回其預設值;如果不存在可用的預設值,則返回 null
 String getAttributeDescription(String elementName, String attrName, Locale locale)
          返回包含指定屬性的描述的 String,或者 null
 String[] getAttributeEnumerations(String elementName, String attrName)
          返回一個 String 陣列,其包含指定元素中給定屬性的合法列舉值。
 int getAttributeListMaxLength(String elementName, String attrName)
          返回可用於定義此屬性的最大列表項數。
 int getAttributeListMinLength(String elementName, String attrName)
          返回可用於定義此屬性的最小列表項數。
 String getAttributeMaxValue(String elementName, String attrName)
          返回屬性的最大合法值。
 String getAttributeMinValue(String elementName, String attrName)
          返回屬性的最小合法值。
 String[] getAttributeNames(String elementName)
          返回一個 String 陣列,該陣列列出了與指定元素關聯的屬性的名稱。
 int getAttributeValueType(String elementName, String attrName)
          返回以 VALUE_ 開頭的常數之一,指示指定元素中給定屬性的值是任意值、被限制在指定範圍中的值、被限制為一組列舉值之一,還是一個任意值的以空白分隔的列表。
 String[] getChildNames(String elementName)
          返回一個按出現順序排列的 String 陣列,指示允許作為指定元素子元素的元素的名稱。
 int getChildPolicy(String elementName)
          返回以 CHILD_POLICY_ 開頭的常數之一,指示指定元素子元素的合法網要。
 String getElementDescription(String elementName, Locale locale)
          返回包含指定元素的描述的 String,或者 null
 int getElementMaxChildren(String elementName)
          返回使用子策略 CHILD_POLICY_REPEAT 的指定元素的最大子元素數。
 int getElementMinChildren(String elementName)
          返回使用子策略 CHILD_POLICY_REPEAT 的指定元素的最小子元素數。
 int getObjectArrayMaxLength(String elementName)
          返回指定元素中可用於定義 Object 參考的最大陣列元素數。
 int getObjectArrayMinLength(String elementName)
          返回指定元素中可用於定義 Object 參考的最小陣列元素數。
 Class<?> getObjectClass(String elementName)
          返回存儲在元素中的 Class 型別的 Object 參考。
 Object getObjectDefaultValue(String elementName)
          返回包含指定元素中 Object 參考的預設值的 Object
 Object[] getObjectEnumerations(String elementName)
          返回一個 Object 陣列,該陣列包含指定元素中 Object 參考的合法列舉值。
 Comparable<?> getObjectMaxValue(String elementName)
          返回指定元素中 Object 參考的最大合法值。
 Comparable<?> getObjectMinValue(String elementName)
          返回指定元素中 Object 參考的最小合法值。
 int getObjectValueType(String elementName)
          返回以 VALUE_ 開頭的列舉值之一,指示允許用於 Object 參考的值(列舉、範圍或陣列)的型別。
 String getRootName()
          返回格式的根元素的名稱。
 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_MAX_INCLUSIVE, 常數欄位值

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 返回的常數,指示可以將屬性或使用者物件設置為許多列舉值之一。對於屬性來說,這些值為 String;對於物件,其為實作給定類別或介面的 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 返回的常數,指示屬性的值為 '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)
返回包含指定元素的描述的 String,或者 null。如果可能,應將該描述本地化為提供的 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 - 要查詢的屬性的名稱。
返回:
包含預設值的 String,或者 null
拋出:
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 - 要查詢的屬性的名稱。
返回:
包含屬性的最小合法值的 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 或者不是此格式的合法元素名稱。
另請參見:
Comparable

getObjectClass

Class<?> getObjectClass(String elementName)
返回存儲在元素中的 Class 型別的 Object 參考。如果此元素不能包含 Object 參考,則拋出 IllegalArgumentException。如果類別型別為陣列,則此欄位指示底層類別型別(例如,對於 int 的陣列,此方法將返回 int.class)。

合法值被定義為範圍的 Object 參考必須實作 Comparable 介面。

參數:
elementName - 要查詢的元素的名稱。
返回:
Class 物件。
拋出:
IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名稱。
IllegalArgumentException - 如果指定元素無法包含物件值(,如果 getObjectValueType(elementName) == VALUE_NONE)。

getObjectDefaultValue

Object getObjectDefaultValue(String elementName)
返回包含指定元素中 Object 參考的預設值的 Object

參數:
elementName - 要查詢的元素的名稱。
返回:
Object 物件。
拋出:
IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名稱。
IllegalArgumentException - 如果指定元素無法包含物件值(,如果 getObjectValueType(elementName) == VALUE_NONE)。

getObjectEnumerations

Object[] getObjectEnumerations(String elementName)
返回一個 Object 陣列,該陣列包含指定元素中 Object 參考的合法列舉值。只應在 getObjectValueType 返回 VALUE_ENUMERATION的情況下調用此方法。

與接受列舉值的節點關聯的 Object 必須等於此方法返回的值之一,這裡的等於是由 == 運算符(而不是 Object.equals 方法)定義的。

參數:
elementName - 要查詢的元素的名稱。
返回:
Object 陣列。
拋出:
IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名稱。
IllegalArgumentException - 如果指定元素無法包含物件值(,如果 getObjectValueType(elementName) == VALUE_NONE)。
IllegalArgumentException - 如果沒有將 Object 定義為列舉。

getObjectMinValue

Comparable<?> getObjectMinValue(String elementName)
返回指定元素中 Object 參考的最小合法值。是否包括此值可由 getObjectValueType 的值確定。只應在 getObjectValueType 返回以 VALUE_RANGE 開頭的常數之一的情況下調用此方法。

參數:
elementName - 要查詢的元素的名稱。
返回:
屬性的最小合法值。
拋出:
IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名稱。
IllegalArgumentException - 如果指定元素無法包含物件值(,如果 getObjectValueType(elementName) == VALUE_NONE)。
IllegalArgumentException - 如果沒有將 Object 定義為範圍。

getObjectMaxValue

Comparable<?> getObjectMaxValue(String elementName)
返回指定元素中 Object 參考的最大合法值。是否包括此值可由 getObjectValueType 的值確定。只應在 getObjectValueType 返回以 VALUE_RANGE 開頭的常數之一的情況下調用此方法。

參數:
elementName - 要查詢的元素的名稱。
返回:
屬性的最小合法值。
拋出:
IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名稱。
IllegalArgumentException - 如果指定元素無法包含物件值(,如果 getObjectValueType(elementName) == VALUE_NONE)。
IllegalArgumentException - 如果沒有將 Object 定義為範圍。

getObjectArrayMinLength

int getObjectArrayMinLength(String elementName)
返回指定元素中可用於定義 Object 參考的最小陣列元素數。只應在 getObjectValueType 返回 VALUE_LIST 的情況下調用此方法。

參數:
elementName - 要查詢的元素的名稱。
返回:
Object 參考的最小有效陣列長度。
拋出:
IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名稱。
IllegalArgumentException - 如果指定元素無法包含物件值(,如果 getObjectValueType(elementName) == VALUE_NONE)。
IllegalArgumentException - 如果 Object 不是陣列。

getObjectArrayMaxLength

int getObjectArrayMaxLength(String elementName)
返回指定元素中可用於定義 Object 參考的最大陣列元素數。Integer.MAX_VALUE 的值可用於指定不存在上限。只應在 getObjectValueType 返回 VALUE_LIST 的情況下調用此方法。

參數:
elementName - 要查詢的元素的名稱。
返回:
Object 參考的最大有效陣列長度。
拋出:
IllegalArgumentException - 如果 elementNamenull 或者不是此格式的合法元素名稱。
IllegalArgumentException - 如果指定元素無法包含物件值(,如果 getObjectValueType(elementName) == VALUE_NONE)。
IllegalArgumentException - 如果 Object 不是陣列。

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only