モジュール java.desktop
パッケージ javax.imageio.metadata

クラスIIOMetadata

    • フィールドのサマリー

      フィールド 
      修飾子と型 フィールド 説明
      protected IIOMetadataController controller
      activateControllerメソッドが呼び出されたときに、このIIOMetadataオブジェクトの設定を指定するために使用するIIOMetadataControllerです。
      protected IIOMetadataController defaultController
      このIIOMetadataオブジェクトのコントローラとして使用するよう推奨されているIIOMetadataControllerです。
      protected String[] extraMetadataFormatClassNames
      nullに初期化され、コンストラクタを介して設定された、IIOMetadataFormatを実装し、このプラグインでサポートされる標準およびネイティブ形式以外のメタデータ形式を表すクラスの名前の配列です。
      protected String[] extraMetadataFormatNames
      nullに初期化され、コンストラクタを介して設定された、このプラグインでサポートされる標準およびネイティブ形式以外の形式の名前の配列です。
      protected String nativeMetadataFormatClassName
      nullに初期化され、コンストラクタを介して設定された、IIOMetadataFormatを実装し、ネイティブ・メタデータ形式を表すクラスの名前です。
      protected String nativeMetadataFormatName
      nullに初期化され、コンストラクタを介して設定された、このオブジェクトのネイティブ・メタデータ形式の名前です。
      protected boolean standardFormatSupported
      具象サブクラスが、コンストラクタを介して設定された標準のメタデータ形式をサポートするかどうかを示すboolean値です。
    • コンストラクタのサマリー

      コンストラクタ 
      修飾子 コンストラクタ 説明
      protected IIOMetadata​()
      空のIIOMetadataオブジェクトを構築します。
      protected IIOMetadata​(boolean standardMetadataFormatSupported, String nativeMetadataFormatName, String nativeMetadataFormatClassName, String[] extraMetadataFormatNames, String[] extraMetadataFormatClassNames)
      指定された形式名と形式のクラス名、および標準の形式をサポートするかどうかを示すboolean値を使用して、IIOMetadataオブジェクトを構築します。
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 抽象メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      boolean activateController​()
      このIIOMetadataオブジェクトに対してインストールされているIIOMetadataControllerをアクティブにし、結果の値を返します。
      abstract Node getAsTree​(String formatName)
      指定されたメタデータ形式で定義される規則に従って、このオブジェクト内に含まれるメタデータのツリーのルートを表すXML DOM Nodeオブジェクトを返します。
      IIOMetadataController getController​()
      現在インストールされているIIOMetadataControllerを返します。
      IIOMetadataController getDefaultController​()
      デフォルトのIIOMetadataControllerがある場合は、現在インストールされているコントローラとは関係なく、これを返します。
      String[] getExtraMetadataFormatNames​()
      このプラグインのgetAsTreesetFromTree、およびmergeTreeメソッドで認識される、ネイティブおよび標準の形式以外の、追加のメタデータ形式の名前が格納されたStringの配列を返します。
      IIOMetadataFormat getMetadataFormat​(String formatName)
      指定されたメタデータ形式を記述するIIOMetadataFormatオブジェクトを返します。記述が使用できない場合はnullを返します。
      String[] getMetadataFormatNames​()
      このプラグインのgetAsTreesetFromTree、およびmergeTreeメソッドで認識される、ネイティブと標準の形式を含む、すべてのメタデータ形式の名前が格納されたStringの配列を返します。
      String getNativeMetadataFormatName​()
      このプラグインの「ネイティブ」メタデータ形式の名前を返します。通常、この形式を使用すると、このプラグインで処理される形式で格納されているメタデータを損失なしでエンコードおよび転送できます。
      protected IIOMetadataNode getStandardChromaNode​()
      標準のjavax_imageio_1.0メタデータ形式の彩度情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。
      protected IIOMetadataNode getStandardCompressionNode​()
      標準のjavax_imageio_1.0メタデータ形式の圧縮情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。
      protected IIOMetadataNode getStandardDataNode​()
      標準のjavax_imageio_1.0メタデータ形式のデータ形式情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。
      protected IIOMetadataNode getStandardDimensionNode​()
      標準のjavax_imageio_1.0メタデータ形式の次元情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。
      protected IIOMetadataNode getStandardDocumentNode​()
      標準のjavax_imageio_1.0メタデータ形式のドキュメント情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。
      protected IIOMetadataNode getStandardTextNode​()
      標準のjavax_imageio_1.0メタデータ形式のテキスト情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。
      protected IIOMetadataNode getStandardTileNode​()
      標準のjavax_imageio_1.0メタデータ形式のタイリング情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。
      protected IIOMetadataNode getStandardTransparencyNode​()
      標準のjavax_imageio_1.0メタデータ形式の透過性情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。
      protected IIOMetadataNode getStandardTree​()
      標準のjavax_imageio_1.0メタデータ形式の規則に従って、このオブジェクト内に含まれるメタデータを表すIIOMetadataNodeのツリーを返すユーティリティ・メソッドです。
      boolean hasController​()
      このIIOMetadataオブジェクトにインストールされたコントローラがある場合はtrueを返します。
      abstract boolean isReadOnly​()
      このオブジェクトがmergeTreesetFromTree、およびresetメソッドをサポートしない場合は、trueを返します。
      boolean isStandardMetadataFormatSupported​()
      getMetadataFormatgetAsTreesetFromTree、およびmergeTreeで標準のメタデータ形式がサポートされている場合は、trueを返します。
      abstract void mergeTree​(String formatName, Node root)
      指定されたメタデータ形式で構文が定義されるXML DOM Nodeのツリーから、このIIOMetadataオブジェクトの内部状態を変更します。
      abstract void reset​()
      このオブジェクトに格納されているすべてのデータをデフォルト値にリセットします。通常は、このオブジェクトの構築直後の状態にリセットします。ただし、正確なセマンティックスはプラグインによって異なります。
      void setController​(IIOMetadataController controller)
      activateControllerメソッドを呼び出して、すべてのデフォルト・コントローラをオーバーライドするときに、このIIOMetadataオブジェクトの設定値を指定するために使用するIIOMetadataControllerを設定します。
      void setFromTree​(String formatName, Node root)
      指定されたメタデータ形式で構文が定義されるXML DOM Nodeのツリーから、このIIOMetadataオブジェクトの内部状態を設定します。
    • フィールドの詳細

      • standardFormatSupported

        protected boolean standardFormatSupported
        具象サブクラスが、コンストラクタを介して設定された標準のメタデータ形式をサポートするかどうかを示すboolean値です。
      • nativeMetadataFormatName

        protected String nativeMetadataFormatName
        nullに初期化され、コンストラクタを介して設定された、このオブジェクトのネイティブ・メタデータ形式の名前です。
      • nativeMetadataFormatClassName

        protected String nativeMetadataFormatClassName
        nullに初期化され、コンストラクタを介して設定された、IIOMetadataFormatを実装し、ネイティブ・メタデータ形式を表すクラスの名前です。
      • extraMetadataFormatNames

        protected String[] extraMetadataFormatNames
        nullに初期化され、コンストラクタを介して設定された、このプラグインでサポートされる標準およびネイティブ形式以外の形式の名前の配列です。
      • extraMetadataFormatClassNames

        protected String[] extraMetadataFormatClassNames
        nullに初期化され、コンストラクタを介して設定された、IIOMetadataFormatを実装し、このプラグインでサポートされる標準およびネイティブ形式以外のメタデータ形式を表すクラスの名前の配列です。
      • defaultController

        protected IIOMetadataController defaultController
        このIIOMetadataオブジェクトのコントローラとして使用するよう推奨されているIIOMetadataControllerです。 getDefaultControllerを使用して取り出すことができます。 デフォルトのコントローラをインストールするには、setController(getDefaultController())を呼び出します。 このインスタンス変数は、パラメータを設定するために独自のデフォルト・コントローラ(通常はGUI)を提供するサブクラスで設定する必要があります。
        関連項目:
        IIOMetadataController, getDefaultController()
    • コンストラクタの詳細

      • IIOMetadata

        protected IIOMetadata​()
        空のIIOMetadataオブジェクトを構築します。 サブクラスは、オーバーライドされないデフォルトのメソッド実装がその規約を満たすようにするすべての保護されたインスタンス変数の値を指定します。 たとえば、extraMetadataFormatNamesの長さは0であってはいけません。
      • IIOMetadata

        protected IIOMetadata​(boolean standardMetadataFormatSupported,
                              String nativeMetadataFormatName,
                              String nativeMetadataFormatClassName,
                              String[] extraMetadataFormatNames,
                              String[] extraMetadataFormatClassNames)
        指定された形式名と形式のクラス名、および標準の形式をサポートするかどうかを示すboolean値を使用して、IIOMetadataオブジェクトを構築します。

        このコンストラクタはクラス名の有効性は判定しません。 クラス名が無効な場合は、getMetadataFormatのその後の呼出しで例外が発生する場合があります。

        パラメータ:
        standardMetadataFormatSupported - このオブジェクトが標準のメタデータ形式を使用してDOMツリーを返すか受け取ることができる場合はtrue
        nativeMetadataFormatName - Stringとしてのネイティブのメタデータ形式名。ネイティブの形式がない場合はnull
        nativeMetadataFormatClassName - ネイティブ・メタデータ形式のクラスの名前。ネイティブの形式がない場合はnull
        extraMetadataFormatNames - このオブジェクトでサポートされる追加形式を示すStringの配列。存在しない場合はnull
        extraMetadataFormatClassNames - このオブジェクトでサポートされる追加形式のクラス名を示すStringの配列。存在しない場合はnull
        例外:
        IllegalArgumentException - extraMetadataFormatNamesの長さが0の場合。
        IllegalArgumentException - extraMetadataFormatNamesおよびextraMetadataFormatClassNamesnullでも同じ長さでもない場合。
    • メソッドの詳細

      • isReadOnly

        public abstract boolean isReadOnly​()
        このオブジェクトがmergeTreesetFromTree、およびresetメソッドをサポートしない場合は、trueを返します。
        戻り値:
        このIIOMetadataオブジェクトを変更できない場合はtrue。
      • getNativeMetadataFormatName

        public String getNativeMetadataFormatName​()
        このプラグインのネイティブメタデータ形式の名前を返します。通常、この形式を使用すると、このプラグインで処理される形式で格納されているメタデータを損失なしでエンコードおよび転送できます。 そのような形式がサポートされていない場合は、null が返されます。

        「ネイティブ」メタデータ形式の構造と内容は、このIIOMetadataオブジェクトを作成したプラグインで定義されます。 通常、単純な形式のプラグインは、ルートにダミー・ノードを作成してから、個々のタグ、チャンク、またはキーワードと値のペアを表す一連の子ノードを作成します。 プラグインは、ネイティブ形式をドキュメント化するかどうかを選択することができます。

        デフォルトの実装では、nativeMetadataFormatNameインスタンス変数の値が返されます。

        戻り値:
        ネイティブ形式の名前、またはnull
        関連項目:
        getExtraMetadataFormatNames(), getMetadataFormatNames()
      • getMetadataFormatNames

        public String[] getMetadataFormatNames​()
        このプラグインのgetAsTreesetFromTree、およびmergeTreeメソッドで認識される、ネイティブと標準の形式を含む、すべてのメタデータ形式の名前が格納されたStringの配列を返します。 そのような形式がない場合は、nullが返されます。

        デフォルトの実装はgetNativeMetadataFormatNameisStandardMetadataFormatSupported、およびgetExtraMetadataFormatNamesを呼び出し、結合された結果を返します。

        戻り値:
        Stringの配列。
        関連項目:
        getNativeMetadataFormatName(), isStandardMetadataFormatSupported(), getExtraMetadataFormatNames()
      • getMetadataFormat

        public IIOMetadataFormat getMetadataFormat​(String formatName)
        指定されたメタデータ形式を記述するIIOMetadataFormatオブジェクトを返します。記述が使用できない場合はnullを返します。 指定する名前は、getMetadataFormatNamesから返された名前の1つである必要があります(つまり、ネイティブの形式名、標準の形式名、またはgetExtraMetadataFormatNamesから返された名前の1つ)。

        デフォルトの実装では、グローバル標準メタデータ形式名と名前を照合し、サポートされている場合はその形式を返します。 そうでない場合は、あとに追加の形式名が続くネイティブの形式名と照合します。 一致が見つかった場合は、該当するnativeMetadataFormatClassNameまたはextraMetadataFormatClassNamesからIIOMetadataFormatクラスの名前を取出し、getInstanceメソッドを使用してそのクラスのインスタンスを構築します。

        パラメータ:
        formatName - 目的のメタデータ形式。
        戻り値:
        IIOMetadataFormatオブジェクト。
        例外:
        IllegalArgumentException - formatNamenullであるか、プラグインで認識された名前でない場合。
        IllegalStateException - 形式名に対応するクラスをロードできない場合。
      • getAsTree

        public abstract Node getAsTree​(String formatName)
        指定されたメタデータ形式で定義される規則に従って、このオブジェクト内に含まれるメタデータのツリーのルートを表すXML DOM Nodeオブジェクトを返します。

        使用可能なメタデータ形式の名前は、getMetadataFormatNamesメソッドを使用して照会することができます。

        パラメータ:
        formatName - 目的のメタデータ形式。
        戻り値:
        ツリーのルートを形成するXML DOM Nodeオブジェクト。
        例外:
        IllegalArgumentException - formatNamenullであるか、getMetadataFormatNamesから返された名前でない場合。
        関連項目:
        getMetadataFormatNames(), setFromTree(java.lang.String, org.w3c.dom.Node), mergeTree(java.lang.String, org.w3c.dom.Node)
      • mergeTree

        public abstract void mergeTree​(String formatName,
                                       Node root)
                                throws IIOInvalidTreeException
        指定されたメタデータ形式で構文が定義されるXML DOM Nodeのツリーから、このIIOMetadataオブジェクトの内部状態を変更します。 以前の状態は、指定されたツリーに存在するノードに適合するために必要な場合にだけ変更されます。 ツリーの構造または内容が無効である場合は、IIOInvalidTreeExceptionがスローされます。

        ツリーまたはサブツリーをほかのツリーとマージする方法のセマンティックスは完全に形式固有なので、プラグインの作成者は、その形式にもっとも適切な方法でこのメソッドを実装することができます。既存のすべての状態を指定されたツリーの内容に置き換えるだけなどの方法があります。

        パラメータ:
        formatName - 目的のメタデータ形式。
        root - ツリーのルートを形成するXML DOM Nodeオブジェクト。
        例外:
        IllegalStateException - このオブジェクトが読込み専用の場合。
        IllegalArgumentException - formatNamenullであるか、getMetadataFormatNamesから返された名前でない場合。
        IllegalArgumentException - rootnullの場合。
        IIOInvalidTreeException - 指定された形式のルールを使用してツリーを正常に構文解析できない場合。
        関連項目:
        getMetadataFormatNames(), getAsTree(java.lang.String), setFromTree(java.lang.String, org.w3c.dom.Node)
      • getStandardChromaNode

        protected IIOMetadataNode getStandardChromaNode​()
        標準のjavax_imageio_1.0メタデータ形式の彩度情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。 このメソッドは、ユーティリティ・ルーチンgetStandardTreeから呼び出すことを想定しています。

        デフォルトの実装ではnullを返します。

        サブクラスは、標準のメタデータ形式をサポートする場合は、このメソッドをオーバーライドして適切なサブツリーを生成する必要があります。

        戻り値:
        IIOMetadataNode、またはnull
        関連項目:
        getStandardTree()
      • getStandardCompressionNode

        protected IIOMetadataNode getStandardCompressionNode​()
        標準のjavax_imageio_1.0メタデータ形式の圧縮情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。 このメソッドは、ユーティリティ・ルーチンgetStandardTreeから呼び出すことを想定しています。

        デフォルトの実装ではnullを返します。

        サブクラスは、標準のメタデータ形式をサポートする場合は、このメソッドをオーバーライドして適切なサブツリーを生成する必要があります。

        戻り値:
        IIOMetadataNode、またはnull
        関連項目:
        getStandardTree()
      • getStandardDataNode

        protected IIOMetadataNode getStandardDataNode​()
        標準のjavax_imageio_1.0メタデータ形式のデータ形式情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。 このメソッドは、ユーティリティ・ルーチンgetStandardTreeから呼び出すことを想定しています。

        デフォルトの実装ではnullを返します。

        サブクラスは、標準のメタデータ形式をサポートする場合は、このメソッドをオーバーライドして適切なサブツリーを生成する必要があります。

        戻り値:
        IIOMetadataNode、またはnull
        関連項目:
        getStandardTree()
      • getStandardDimensionNode

        protected IIOMetadataNode getStandardDimensionNode​()
        標準のjavax_imageio_1.0メタデータ形式の次元情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。 このメソッドは、ユーティリティ・ルーチンgetStandardTreeから呼び出すことを想定しています。

        デフォルトの実装ではnullを返します。

        サブクラスは、標準のメタデータ形式をサポートする場合は、このメソッドをオーバーライドして適切なサブツリーを生成する必要があります。

        戻り値:
        IIOMetadataNode、またはnull
        関連項目:
        getStandardTree()
      • getStandardDocumentNode

        protected IIOMetadataNode getStandardDocumentNode​()
        標準のjavax_imageio_1.0メタデータ形式のドキュメント情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。 このメソッドは、ユーティリティ・ルーチンgetStandardTreeから呼び出すことを想定しています。

        デフォルトの実装ではnullを返します。

        サブクラスは、標準のメタデータ形式をサポートする場合は、このメソッドをオーバーライドして適切なサブツリーを生成する必要があります。

        戻り値:
        IIOMetadataNode、またはnull
        関連項目:
        getStandardTree()
      • getStandardTextNode

        protected IIOMetadataNode getStandardTextNode​()
        標準のjavax_imageio_1.0メタデータ形式のテキスト情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。 このメソッドは、ユーティリティ・ルーチンgetStandardTreeから呼び出すことを想定しています。

        デフォルトの実装ではnullを返します。

        サブクラスは、標準のメタデータ形式をサポートする場合は、このメソッドをオーバーライドして適切なサブツリーを生成する必要があります。

        戻り値:
        IIOMetadataNode、またはnull
        関連項目:
        getStandardTree()
      • getStandardTileNode

        protected IIOMetadataNode getStandardTileNode​()
        標準のjavax_imageio_1.0メタデータ形式のタイリング情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。 このメソッドは、ユーティリティ・ルーチンgetStandardTreeから呼び出すことを想定しています。

        デフォルトの実装ではnullを返します。

        サブクラスは、標準のメタデータ形式をサポートする場合は、このメソッドをオーバーライドして適切なサブツリーを生成する必要があります。

        戻り値:
        IIOMetadataNode、またはnull
        関連項目:
        getStandardTree()
      • getStandardTransparencyNode

        protected IIOMetadataNode getStandardTransparencyNode​()
        標準のjavax_imageio_1.0メタデータ形式の透過性情報を表すIIOMetadataNodeを返します。そのような情報を使用できない場合はnullを返します。 このメソッドは、ユーティリティ・ルーチンgetStandardTreeから呼び出すことを想定しています。

        デフォルトの実装ではnullを返します。

        サブクラスは、標準のメタデータ形式をサポートする場合は、このメソッドをオーバーライドして適切なサブツリーを生成する必要があります。

        戻り値:
        IIOMetadataNode、またはnull
      • getStandardTree

        protected final IIOMetadataNode getStandardTree​()
        標準のjavax_imageio_1.0メタデータ形式の規則に従って、このオブジェクト内に含まれるメタデータを表すIIOMetadataNodeのツリーを返すユーティリティ・メソッドです。

        このメソッドは、各種のgetStandard*Nodeメソッドを呼び出して、ルート・ノードの子をルートとする各サブツリーを指定します。 これらのメソッドのいずれかがnullを返す場合、対応するサブツリーは省略されます。 これらのメソッドのすべてがnullを返す場合は、1つのルート・ノードで構成されるツリーが返されます。

        戻り値:
        javax_imageio_1.0形式でメタデータ・ツリーのルートを表すIIOMetadataNode
        関連項目:
        getStandardChromaNode(), getStandardCompressionNode(), getStandardDataNode(), getStandardDimensionNode(), getStandardDocumentNode(), getStandardTextNode(), getStandardTileNode(), getStandardTransparencyNode()
      • setFromTree

        public void setFromTree​(String formatName,
                                Node root)
                         throws IIOInvalidTreeException
        指定されたメタデータ形式で構文が定義されるXML DOM Nodeのツリーから、このIIOMetadataオブジェクトの内部状態を設定します。 以前の状態は破棄されます。 ツリーの構造または内容が無効である場合は、IIOInvalidTreeExceptionがスローされます。

        デフォルトの実装では、あとにmergeTree(formatName, root)が続くresetを呼び出します。

        パラメータ:
        formatName - 目的のメタデータ形式。
        root - ツリーのルートを形成するXML DOM Nodeオブジェクト。
        例外:
        IllegalStateException - このオブジェクトが読込み専用の場合。
        IllegalArgumentException - formatNamenullであるか、getMetadataFormatNamesから返された名前でない場合。
        IllegalArgumentException - rootnullの場合。
        IIOInvalidTreeException - 指定された形式のルールを使用してツリーを正常に構文解析できない場合。
        関連項目:
        getMetadataFormatNames(), getAsTree(java.lang.String), mergeTree(java.lang.String, org.w3c.dom.Node)
      • setController

        public void setController​(IIOMetadataController controller)
        activateControllerメソッドを呼び出して、すべてのデフォルト・コントローラをオーバーライドするときに、このIIOMetadataオブジェクトの設定値を指定するために使用するIIOMetadataControllerを設定します。 引数がnullの場合は、デフォルトのコントローラを含め、どのコントローラも使用されません。 デフォルトのコントローラを復元するには、setController(getDefaultController())を使用します。

        デフォルトの実装は、controllerインスタンス変数を、指定された値に設定します。

        パラメータ:
        controller - 適切なIIOMetadataController、またはnull
        関連項目:
        IIOMetadataController, getController(), getDefaultController(), hasController(), activateController()
      • activateController

        public boolean activateController​()
        このIIOMetadataオブジェクトに対してインストールされているIIOMetadataControllerをアクティブにし、結果の値を返します。 このメソッドがtrueを返す場合、このIIOMetadataオブジェクトのすべての値は次の書込み操作で使用する準備ができています。 falseが返される場合は、このオブジェクト内の設定値への影響はありません。つまり、ユーザーにより操作が取り消されました。

        通常、コントローラは、特定のプラグインに対するIIOMetadataのサブクラスのユーザー・インタフェースを提供するGUIです。 ただし、コントローラはGUIである必要はありません。

        デフォルトの実装はgetControllerを呼び出し、hasControllertrueを返す場合は、返されたオブジェクトでactivateを呼び出します。

        戻り値:
        コントローラが通常どおり完了した場合はtrue
        例外:
        IllegalStateException - コントローラが現在インストールされていない場合。
        関連項目:
        IIOMetadataController, setController(IIOMetadataController), getController(), getDefaultController(), hasController()