- すべての実装されたインタフェース:
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 StringstandardMetadataFormatName標準の形式名"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 voidaddAttribute(String elementName, String attrName, int dataType, boolean required, int listMinLength, int listMaxLength)新しい属性を、値のリストで定義される事前に定義された要素に追加します。protected voidaddAttribute(String elementName, String attrName, int dataType, boolean required, String defaultValue)新しい属性を、任意の値に設定できる事前に定義された要素に追加します。protected voidaddAttribute(String elementName, String attrName, int dataType, boolean required, String defaultValue, String minValue, String maxValue, boolean minInclusive, boolean maxInclusive)新しい属性を、値の範囲で定義される事前に定義された要素に追加します。protected voidaddAttribute(String elementName, String attrName, int dataType, boolean required, String defaultValue, List<String> enumeratedValues)新しい属性を、列挙値のセットで定義される事前に定義された要素に追加します。protected voidaddBooleanAttribute(String elementName, String attrName, boolean hasDefaultValue, boolean defaultValue)新しい属性を、DATATYPE_BOOLEANのデータ型で、列挙値TRUEおよびFALSEで定義される事前に定義された要素に追加します。protected voidaddChildElement(String elementName, String parentName)既存の要素を、指定された親ノードの型の有効な子のリストに追加します。protected voidaddElement(String elementName, String parentName, int childPolicy)CHILD_POLICY_REPEAT以外の子ポリシーを持つこのメタデータ・ドキュメント形式に新しい要素型を追加します。protected voidaddElement(String elementName, String parentName, int minChildren, int maxChildren)CHILD_POLICY_REPEATの子ポリシーを持つこのメタデータ・ドキュメント形式に新しい要素型を追加します。protected voidaddObjectValue(String elementName, Class<?> classType, int arrayMinLength, int arrayMaxLength)指定されたクラス型のObject参照を、名前付き要素を実装するノードに格納できるようにします。protected <T> voidaddObjectValue(String elementName, Class<T> classType, boolean required, T defaultValue)指定されたクラス型のObject参照を、名前付き要素を実装するノードに格納できるようにします。protected <T> voidaddObjectValue(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参照を、名前付き要素を実装するノードに格納できるようにします。StringgetAttributeDescription(String elementName, String attrName, Locale locale)名前付き属性の説明を格納したString、またはnullを返します。StringgetElementDescription(String elementName, Locale locale)名前付き要素の説明を格納したString、またはnullを返します。protected StringgetResourceBaseName()ResourceBundleを検索するための、現在設定されているベース名を返します。static IIOMetadataFormatgetStandardFormatInstance()javax.imageio.metadataパッケージのコメントに記述されている、標準の、プラグインに依存しないjavax.imageio_1.0メタデータ・ドキュメント形式を記述するIIOMetadataFormatオブジェクトを返します。protected voidremoveAttribute(String elementName, String attrName)事前に定義された要素から属性を削除します。protected voidremoveElement(String elementName)形式から要素を削除します。protected voidremoveObjectValue(String elementName)Object参照を、名前付き要素を実装するノードに格納できないようにします。protected voidsetResourceBaseName(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
CHILD_POLICY_REPEAT以外の子ポリシーを持つこのメタデータ・ドキュメント形式に新しい要素型を追加します。- パラメータ:
elementName- 新しい要素の名前。parentName- 新しい要素の親になる要素の名前。childPolicy- 新しい要素の子ポリシーを示す、CHILD_POLICY_REPEAT以外のCHILD_POLICY_*定数の1つ。- 例外:
IllegalArgumentException-parentNameがnullの場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException-childPolicyが事前に定義された定数の1つでない場合。
-
addElement
CHILD_POLICY_REPEATの子ポリシーを持つこのメタデータ・ドキュメント形式に新しい要素型を追加します。- パラメータ:
elementName- 新しい要素の名前。parentName- 新しい要素の親になる要素の名前。minChildren- ノードの子の最小数。maxChildren- ノードの子の最大数。- 例外:
IllegalArgumentException-parentNameがnullの場合、またはこの形式の有効な要素名でない場合。IllegalArgumentException-minChildrenが負の値の場合、またはmaxChildrenより大きい場合。
-
addChildElement
既存の要素を、指定された親ノードの型の有効な子のリストに追加します。- パラメータ:
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
事前に定義された要素から属性を削除します。 指定された名前を持つ属性が指定された要素内に存在しなかった場合は、何も実行されず、例外はスローされません。- パラメータ:
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
名前付き要素の説明を格納した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
名前付き属性の説明を格納した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インスタンス。
-