- java.lang.Object
-
- javax.imageio.metadata.IIOMetadataFormatImpl
-
- すべての実装されたインタフェース:
IIOMetadataFormat
public abstract class IIOMetadataFormatImpl extends Object implements IIOMetadataFormat
IIOMetadataFormat
インタフェースの再使用可能な実装を提供する具象クラスです。 さらに、標準の、プラグインに依存しないjavax_imageio_1.0
形式を表す静的インスタンスがgetStandardFormatInstance
メソッドにより提供されます。ローカライズされた要素と属性の説明を提供するためには、
this.getClass().getName()+"Resources"
のベース名を持つResourceBundle
を、ResourceBundle.getBundle
で使用される通常のメカニズムを介して提供する必要があります。 つまり、サブクラサーは命名規則に従って1つまたは複数の追加クラスを提供します(デフォルトでは、IIMetadataFormatImpl
、文字列"Resources"、国、言語、およびバリアントのアンダースコアで区切られたコードを拡張するサブクラスの完全指定名)。 実行時には、getElementDescription
またはgetAttributeDescription
の呼出しによって、指定されたロケールに従ってこのようなクラスの動的なロードが試行され、要素名、またはあとに「/」文字と属性名が続く要素名がキーとして使用されます。 このキーはResourceBundle
のgetString
メソッドに提供され、ローカライズされたノードまたは属性の説明が返されます。サブクラスは、
setResourceBaseName
メソッドを使用してリソース・バンドルの異なるベース名を提供できます。必要に応じて、サブクラスは、
getElementDescription
およびgetAttributeDescription
の提供された実装をオーバーライドして、独自のローカリゼーション・メカニズムを選択できます。
-
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 static String
standardMetadataFormatName
標準の形式名"javax_imageio_1.0"
が格納されているString
定数。-
インタフェース javax.imageio.metadata.IIOMetadataFormatで宣言されたフィールド
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
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 IIOMetadataFormatImpl(String rootName, int childPolicy)
指定されたルート要素名と子ポリシー(CHILD_POLICY_REPEAT
以外)を使用して、空白のIIOMetadataFormatImpl
インスタンスを構築します。IIOMetadataFormatImpl(String rootName, int minChildren, int maxChildren)
指定されたルート要素名とCHILD_POLICY_REPEAT
の子ポリシーを使用して、空白のIIOMetadataFormatImpl
インスタンスを構築します。
-
メソッドのサマリー
すべてのメソッド 静的メソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 protected void
addAttribute(String elementName, String attrName, int dataType, boolean required, int listMinLength, int listMaxLength)
新しい属性を、値のリストで定義される事前に定義された要素に追加します。protected void
addAttribute(String elementName, String attrName, int dataType, boolean required, String defaultValue)
新しい属性を、任意の値に設定できる事前に定義された要素に追加します。protected void
addAttribute(String elementName, String attrName, int dataType, boolean required, String defaultValue, String minValue, String maxValue, boolean minInclusive, boolean maxInclusive)
新しい属性を、値の範囲で定義される事前に定義された要素に追加します。protected void
addAttribute(String elementName, String attrName, int dataType, boolean required, String defaultValue, List<String> enumeratedValues)
新しい属性を、列挙値のセットで定義される事前に定義された要素に追加します。protected void
addBooleanAttribute(String elementName, String attrName, boolean hasDefaultValue, boolean defaultValue)
新しい属性を、DATATYPE_BOOLEAN
のデータ型で、列挙値TRUE
およびFALSE
で定義される事前に定義された要素に追加します。protected void
addChildElement(String elementName, String parentName)
既存の要素を、指定された親ノードの型の有効な子のリストに追加します。protected void
addElement(String elementName, String parentName, int childPolicy)
CHILD_POLICY_REPEAT
以外の子ポリシーを持つこのメタデータ・ドキュメント形式に新しい要素型を追加します。protected void
addElement(String elementName, String parentName, int minChildren, int maxChildren)
CHILD_POLICY_REPEAT
の子ポリシーを持つこのメタデータ・ドキュメント形式に新しい要素型を追加します。protected void
addObjectValue(String elementName, Class<?> classType, int arrayMinLength, int arrayMaxLength)
指定されたクラス型のObject
参照を、名前付き要素を実装するノードに格納できるようにします。protected <T> void
addObjectValue(String elementName, Class<T> classType, boolean required, T defaultValue)
指定されたクラス型のObject
参照を、名前付き要素を実装するノードに格納できるようにします。protected <T> void
addObjectValue(String elementName, Class<T> classType, boolean required, T defaultValue, List<? extends T> enumeratedValues)
指定されたクラス型のObject
参照を、名前付き要素を実装するノードに格納できるようにします。protected <T extends Object & Comparable<? super T>>
voidaddObjectValue(String elementName, Class<T> classType, T defaultValue, Comparable<? super T> minValue, Comparable<? super T> maxValue, boolean minInclusive, boolean maxInclusive)
指定されたクラス型のObject
参照を、名前付き要素を実装するノードに格納できるようにします。String
getAttributeDescription(String elementName, String attrName, Locale locale)
名前付き属性の説明を格納したString
、またはnull
を返します。String
getElementDescription(String elementName, Locale locale)
名前付き要素の説明を格納したString
、またはnull
を返します。protected String
getResourceBaseName()
ResourceBundle
を検索するための、現在設定されているベース名を返します。static IIOMetadataFormat
getStandardFormatInstance()
javax.imageio.metadata
パッケージのコメントに記述されている、標準の、プラグインに依存しないjavax.imageio_1.0
メタデータ・ドキュメント形式を記述するIIOMetadataFormat
オブジェクトを返します。protected void
removeAttribute(String elementName, String attrName)
事前に定義された要素から属性を削除します。protected void
removeElement(String elementName)
形式から要素を削除します。protected void
removeObjectValue(String elementName)
Object
参照を、名前付き要素を実装するノードに格納できないようにします。protected void
setResourceBaseName(String resourceBaseName)
この形式の要素と属性の説明が格納されているResourceBundle
を検索するための新しいベース名を設定します。-
クラス java.lang.Objectで宣言されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
インタフェース javax.imageio.metadata.IIOMetadataFormatで宣言されたメソッド
canNodeAppear, getAttributeDataType, getAttributeDefaultValue, getAttributeEnumerations, getAttributeListMaxLength, getAttributeListMinLength, getAttributeMaxValue, getAttributeMinValue, getAttributeNames, getAttributeValueType, getChildNames, getChildPolicy, getElementMaxChildren, getElementMinChildren, getObjectArrayMaxLength, getObjectArrayMinLength, getObjectClass, getObjectDefaultValue, getObjectEnumerations, getObjectMaxValue, getObjectMinValue, getObjectValueType, getRootName, isAttributeRequired
-
-
-
-
コンストラクタの詳細
-
IIOMetadataFormatImpl
public IIOMetadataFormatImpl(String rootName, int childPolicy)
指定されたルート要素名と子ポリシー(CHILD_POLICY_REPEAT
以外)を使用して、空白のIIOMetadataFormatImpl
インスタンスを構築します。 追加要素と、その属性およびObject
参照情報は、各種のadd
メソッドを使用して追加できます。- パラメータ:
rootName
- ルート要素の名前。childPolicy
-CHILD_POLICY_REPEAT
以外の、CHILD_POLICY_*
定数の1つ。- 例外:
IllegalArgumentException
-rootName
がnull
の場合。IllegalArgumentException
-childPolicy
が事前に定義された定数の1つでない場合。
-
IIOMetadataFormatImpl
public IIOMetadataFormatImpl(String rootName, int minChildren, int maxChildren)
指定されたルート要素名とCHILD_POLICY_REPEAT
の子ポリシーを使用して、空白のIIOMetadataFormatImpl
インスタンスを構築します。 追加要素と、その属性およびObject
参照情報は、各種のadd
メソッドを使用して追加できます。- パラメータ:
rootName
- ルート要素の名前。minChildren
- ノードの子の最小数。maxChildren
- ノードの子の最大数。- 例外:
IllegalArgumentException
-rootName
がnull
の場合。IllegalArgumentException
-minChildren
が負の値の場合、またはmaxChildren
より大きい場合。
-
-
メソッドの詳細
-
setResourceBaseName
protected void setResourceBaseName(String resourceBaseName)
この形式の要素と属性の説明が格納されているResourceBundle
を検索するための新しいベース名を設定します。最初にこのメソッドを呼び出すまでは、ベース名は
this.getClass().getName()+"Resources"
に等しくなっています。- パラメータ:
resourceBaseName
- 新しいベース名が格納されているString
。- 例外:
IllegalArgumentException
-resourceBaseName
がnull
の場合。- 関連項目:
getResourceBaseName()
-
getResourceBaseName
protected String getResourceBaseName()
ResourceBundle
を検索するための、現在設定されているベース名を返します。- 戻り値:
- ベース名が格納されている
String
。 - 関連項目:
setResourceBaseName(java.lang.String)
-
addElement
protected void addElement(String elementName, String parentName, int childPolicy)
CHILD_POLICY_REPEAT
以外の子ポリシーを持つこのメタデータ・ドキュメント形式に新しい要素型を追加します。- パラメータ:
elementName
- 新しい要素の名前。parentName
- 新しい要素の親になる要素の名前。childPolicy
- 新しい要素の子ポリシーを示す、CHILD_POLICY_REPEAT
以外のCHILD_POLICY_*
定数の1つ。- 例外:
IllegalArgumentException
-parentName
がnull
の場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException
-childPolicy
が事前に定義された定数の1つでない場合。
-
addElement
protected void addElement(String elementName, String parentName, int minChildren, int maxChildren)
CHILD_POLICY_REPEAT
の子ポリシーを持つこのメタデータ・ドキュメント形式に新しい要素型を追加します。- パラメータ:
elementName
- 新しい要素の名前。parentName
- 新しい要素の親になる要素の名前。minChildren
- ノードの子の最小数。maxChildren
- ノードの子の最大数。- 例外:
IllegalArgumentException
-parentName
がnull
の場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException
-minChildren
が負の値の場合、またはmaxChildren
より大きい場合。
-
addChildElement
protected void addChildElement(String elementName, String parentName)
既存の要素を、指定された親ノードの型の有効な子のリストに追加します。- パラメータ:
parentName
- 要素の新しい親になる要素の名前。elementName
- 子として追加される要素の名前。- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException
-parentName
がnull
の場合、またはこの形式の有効な要素名でない場合。
-
removeElement
protected void removeElement(String elementName)
形式から要素を削除します。 指定された名前を持つ要素が存在しなかった場合は、何も実行されず、例外はスローされません。- パラメータ:
elementName
- 削除される要素の名前。
-
addAttribute
protected void addAttribute(String elementName, String attrName, int dataType, boolean required, String defaultValue)
新しい属性を、任意の値に設定できる事前に定義された要素に追加します。- パラメータ:
elementName
- 要素の名前。attrName
- 追加される属性の名前。dataType
- 属性のデータ型(文字列形式)で、DATATYPE_*
定数の1つ。required
- 属性が存在する必要がある場合はtrue
。defaultValue
- 属性のデフォルト値、またはnull
。- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException
-attrName
がnull
の場合。IllegalArgumentException
-dataType
が事前に定義された定数の1つでない場合。
-
addAttribute
protected void addAttribute(String elementName, String attrName, int dataType, boolean required, String defaultValue, List<String> enumeratedValues)
新しい属性を、列挙値のセットで定義される事前に定義された要素に追加します。- パラメータ:
elementName
- 要素の名前。attrName
- 追加される属性の名前。dataType
- 属性のデータ型(文字列形式)で、DATATYPE_*
定数の1つ。required
- 属性が存在する必要がある場合はtrue
。defaultValue
- 属性のデフォルト値、またはnull
。enumeratedValues
- 属性の有効な値が格納されているString
のList
。- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException
-attrName
がnull
の場合。IllegalArgumentException
-dataType
が事前に定義された定数の1つでない場合。IllegalArgumentException
-enumeratedValues
がnull
の場合。IllegalArgumentException
-enumeratedValues
にエントリが1つも格納されていない場合。IllegalArgumentException
-enumeratedValues
にString
でない要素、またはnull
である要素が格納されている場合。
-
addAttribute
protected void addAttribute(String elementName, String attrName, int dataType, boolean required, String defaultValue, String minValue, String maxValue, boolean minInclusive, boolean maxInclusive)
新しい属性を、値の範囲で定義される事前に定義された要素に追加します。- パラメータ:
elementName
- 要素の名前。attrName
- 追加される属性の名前。dataType
- 属性のデータ型(文字列形式)で、DATATYPE_*
定数の1つ。required
- 属性が存在する必要がある場合はtrue
。defaultValue
- 属性のデフォルト値、またはnull
。minValue
-String
としての、属性の最小(この値を含むか含まないかはminInclusive
の値によって決まります)の有効な値。maxValue
-String
としての、属性の最大(この値を含むか含まないかはminInclusive
の値によって決まります)の有効な値。minInclusive
-minValue
が範囲に含まれる場合はtrue
。maxInclusive
-maxValue
が範囲に含まれる場合はtrue
。- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException
-attrName
がnull
の場合。IllegalArgumentException
-dataType
が事前に定義された定数の1つでない場合。
-
addAttribute
protected void addAttribute(String elementName, String attrName, int dataType, boolean required, int listMinLength, int listMaxLength)
新しい属性を、値のリストで定義される事前に定義された要素に追加します。- パラメータ:
elementName
- 要素の名前。attrName
- 追加される属性の名前。dataType
- 属性のデータ型(文字列形式)で、DATATYPE_*
定数の1つ。required
- 属性が存在する必要がある場合はtrue
。listMinLength
- リスト項目の有効な最小数。listMaxLength
- リスト項目の有効な最大数。- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException
-attrName
がnull
の場合。IllegalArgumentException
-dataType
が事前に定義された定数の1つでない場合。IllegalArgumentException
-listMinLength
が負の値の場合、またはlistMaxLength
より大きい場合。
-
addBooleanAttribute
protected void addBooleanAttribute(String elementName, String attrName, boolean hasDefaultValue, boolean defaultValue)
新しい属性を、DATATYPE_BOOLEAN
のデータ型で、列挙値TRUE
およびFALSE
で定義される事前に定義された要素に追加します。- パラメータ:
elementName
- 要素の名前。attrName
- 追加される属性の名前。hasDefaultValue
- デフォルト値が存在する必要がある場合はtrue
。defaultValue
-boolean
としての属性のデフォルト値。hasDefaultValue
がfalse
の場合は無視される。- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException
-attrName
がnull
の場合。
-
removeAttribute
protected void removeAttribute(String elementName, String attrName)
事前に定義された要素から属性を削除します。 指定された名前を持つ属性が指定された要素内に存在しなかった場合は、何も実行されず、例外はスローされません。- パラメータ:
elementName
- 要素の名前。attrName
- 削除される属性の名前。- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。
-
addObjectValue
protected <T> void addObjectValue(String elementName, Class<T> classType, boolean required, T defaultValue)
指定されたクラス型のObject
参照を、名前付き要素を実装するノードに格納できるようにします。Object
の値は、そのクラス型による以外には制限されません。Object
参照が以前に許可された場合、以前の設定値は上書きされます。- 型パラメータ:
T
- オブジェクトの型。- パラメータ:
elementName
- 要素の名前。classType
- オブジェクト値の有効なクラス型を示すClass
変数。required
- オブジェクト値が存在する必要がある場合はtrue
。defaultValue
-Object
参照のデフォルト値、またはnull
。- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。
-
addObjectValue
protected <T> void addObjectValue(String elementName, Class<T> classType, boolean required, T defaultValue, List<? extends T> enumeratedValues)
指定されたクラス型のObject
参照を、名前付き要素を実装するノードに格納できるようにします。Object
の値は、enumeratedValues
で指定された値の1つである必要があります。Object
参照が以前に許可された場合、以前の設定値は上書きされます。- 型パラメータ:
T
- オブジェクトの型。- パラメータ:
elementName
- 要素の名前。classType
- オブジェクト値の有効なクラス型を示すClass
変数。required
- オブジェクト値が存在する必要がある場合はtrue
。defaultValue
-Object
参照のデフォルト値、またはnull
。enumeratedValues
- オブジェクト参照の有効な値が格納されているObject
のList
。- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException
-enumeratedValues
がnull
の場合。IllegalArgumentException
-enumeratedValues
にエントリが1つも格納されていない場合。IllegalArgumentException
-enumeratedValues
がclassType
によって示されるクラス型のインスタンスでない要素を格納しているか、またはnull
の場合。
-
addObjectValue
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
参照を、名前付き要素を実装するノードに格納できるようにします。Object
の値は、minValue
およびmaxValue
で指定される範囲内に存在している必要があります。 さらに、このクラス型はComparable
インタフェースを実装する必要があります。Object
参照が以前に許可された場合、以前の設定値は上書きされます。- 型パラメータ:
T
- オブジェクトの型。- パラメータ:
elementName
- 要素の名前。classType
- オブジェクト値の有効なクラス型を示すClass
変数。defaultValue
- 次のデフォルト値:minValue
-String
としての、オブジェクト値の最小(この値を含むか含まないかはminInclusive
の値によって決まります)の有効な値。maxValue
-String
としての、オブジェクト値の最大(この値を含むか含まないかはminInclusive
の値によって決まります)の有効な値。minInclusive
-minValue
が範囲に含まれる場合はtrue
。maxInclusive
-maxValue
が範囲に含まれる場合はtrue
。- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。
-
addObjectValue
protected void addObjectValue(String elementName, Class<?> classType, int arrayMinLength, int arrayMaxLength)
指定されたクラス型のObject
参照を、名前付き要素を実装するノードに格納できるようにします。Object
の値は、少なくともarrayMinLength
の要素、最大でarrayMaxLength
の要素を持つ、classType
で指定されたクラス型のオブジェクトの配列である必要があります。Object
参照が以前に許可された場合、以前の設定値は上書きされます。- パラメータ:
elementName
- 要素の名前。classType
- オブジェクト値の有効なクラス型を示すClass
変数。arrayMinLength
- 配列の最小の有効な長さ。arrayMaxLength
- 配列の最大の有効な長さ。- 例外:
IllegalArgumentException
-elementName
がこの形式の有効な要素名でない場合。
-
removeObjectValue
protected void removeObjectValue(String elementName)
Object
参照を、名前付き要素を実装するノードに格納できないようにします。- パラメータ:
elementName
- 要素の名前。- 例外:
IllegalArgumentException
-elementName
がこの形式の有効な要素名でない場合。
-
getElementDescription
public String getElementDescription(String elementName, Locale locale)
名前付き要素の説明を格納したString
、またはnull
を返します。 説明は、可能であれば、指定されたLocale
にローカライズされます。デフォルトの実装では、まず
setResourceBaseName
で設定された現在のリソースのベース名を使用してResourceBundle
を検索し、ResourceBundle.getBundle
のコメントに記述された代替メカニズムを使用して、指定されたLocale
を検索します。ResourceBundle
が見つかった場合は、要素名がそのgetString
メソッドのキーとして使用され、結果が返されます。ResourceBundle
が見つからないか、そのようなキーが存在しない場合は、null
が返されます。locale
がnull
の場合、Locale.getLocale
によって返された現在のデフォルトLocale
が使用されます。- 定義:
getElementDescription
、インタフェースIIOMetadataFormat
- パラメータ:
elementName
- 要素の名前。locale
- ローカリゼーションを試みる対象となるLocale
。- 戻り値:
- 要素の説明。
- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。- 関連項目:
setResourceBaseName(java.lang.String)
-
getAttributeDescription
public String getAttributeDescription(String elementName, String attrName, Locale locale)
名前付き属性の説明を格納したString
、またはnull
を返します。 説明は、可能であれば、指定されたLocale
にローカライズされます。デフォルトの実装では、まず
setResourceBaseName
で設定された現在のリソースのベース名を使用してResourceBundle
を検索し、ResourceBundle.getBundle
のコメントに記述された代替メカニズムを使用して、指定されたLocale
を検索します。ResourceBundle
が見つかった場合は、あとに「/」文字と属性名が続く要素名(elementName+"/"+attrName
)がそのgetString
メソッドのキーとして使用され、結果が返されます。ResourceBundle
が見つからないか、そのようなキーが存在しない場合は、null
が返されます。locale
がnull
の場合、Locale.getLocale
によって返された現在のデフォルトLocale
が使用されます。- 定義:
getAttributeDescription
、インタフェースIIOMetadataFormat
- パラメータ:
elementName
- 要素の名前。attrName
- 属性の名前。locale
- ローカリゼーションを試みる、対象となるLocale
、またはnull
。- 戻り値:
- 属性の説明
- 例外:
IllegalArgumentException
-elementName
がnull
の場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException
-attrName
がnull
の場合、またはこの要素の有効な属性名でない場合。- 関連項目:
setResourceBaseName(java.lang.String)
-
getStandardFormatInstance
public static IIOMetadataFormat getStandardFormatInstance()
javax.imageio.metadata
パッケージのコメントに記述されている、標準の、プラグインに依存しないjavax.imageio_1.0
メタデータ・ドキュメント形式を記述するIIOMetadataFormat
オブジェクトを返します。- 戻り値:
- 事前に定義された
IIOMetadataFormat
インスタンス。
-
-