モジュール java.desktop
パッケージ javax.print.attribute

インタフェースAttributeSet

既知のすべてのサブインタフェース:
DocAttributeSet, PrintJobAttributeSet, PrintRequestAttributeSet, PrintServiceAttributeSet
既知のすべての実装クラス:
HashAttributeSet, HashDocAttributeSet, HashPrintJobAttributeSet, HashPrintRequestAttributeSet, HashPrintServiceAttributeSet

public interface AttributeSet
インタフェースAttributeSetは、一連の印刷属性のインタフェースを指定します。 印刷属性は、そのクラスがAttributeインタフェースを実装するオブジェクトです。

属性セットには属性値のグループが含まれます。セット内では値の重複は許可されません。 さらに、属性セットの各値はなんらかのカテゴリのメンバーであり、特定のカテゴリ内に1つのみ値を設定できます。 属性セットの場合、値はAttributeオブジェクトであり、カテゴリはClassオブジェクトです。 属性のカテゴリは、その属性の種類に対するクラス階層のルートのクラスまたはインタフェースです。 属性オブジェクトのカテゴリは、属性オブジェクトのクラスそのものではなく、属性オブジェクトのクラスのスーパー・クラスであることに注意してください。 属性オブジェクトのカテゴリは、Attributeインタフェースで定義されたgetCategory()メソッドの呼出しによって決まります。

AttributeSetのインタフェースは、Java Collections API java.util.Mapインタフェースのインタフェースに似ていますが、受け入れるタイプがより限定的で、キーと値を組み合わせてAttributeにします。

属性セットは、Print Service APIのいくつかの場所で使用されます。 各コンテキストで属性セットに含めることができるのは特定の種類の属性のみですが、その判定は、属性クラスが実装しているタグ機能インタフェース(DocAttributePrintRequestAttributePrintJobAttribute、およびPrintServiceAttribute)に基づいて行われます。 これら4種類の属性のうちの1種類のみを含むように制限された特殊化された属性セットが4つ存在します。それぞれDocAttributeSetPrintRequestAttributeSetPrintJobAttributeSet、およびPrintServiceAttributeSetです。 多くの属性クラスは、複数のタグ機能インタフェースを実装するため、複数のコンテキストで表示されることに注意してください。

一部のコンテキストでは、クライアントは属性セットの内容の検査だけができ、変更はできません(設定が読込み専用)。 その他の場合、クライアントは属性セットの内容の検査と変更の両方を行うことができます(設定が読み込み、書込み可能)。 読込み専用属性セットの場合、変更オペレーションの呼出しはUnmodifiableSetExceptionをスローします。

Print Service APIは、インタフェースAttributeSet、クラスHashAttributeSetの実装を1つ提供します。 クライアントはクラスHashAttributeSetを使用するか、またはインタフェースAttributeSetの独自の実装を提供できます。 Print Service APIは、インタフェースAttributeSetサブインタフェースの実装も提供 -- クラスHashDocAttributeSetHashPrintRequestAttributeSetHashPrintJobAttributeSet、およびHashPrintServiceAttributeSetです。

  • メソッドのサマリー

    修飾子と型 メソッド 説明
    boolean add​(Attribute attribute)
    属性をまだ保持していない場合、最初に指定された属性値と同じ属性カテゴリにある値を削除してから、属性セットに指定された属性を追加します。
    boolean addAll​(AttributeSet attributes)
    指定されたセットのすべての要素をこの属性に追加します。
    void clear()
    この属性セットからすべての属性を削除します。
    boolean containsKey​(Class<?> category)
    属性セットが、指定されたカテゴリの属性を保持している場合にtrueを返します。
    boolean containsValue​(Attribute attribute)
    この属性セットに指定された属性値が含まれている場合はtrueを返します。
    boolean equals​(Object object)
    指定されたオブジェクトとこの属性セットが等しいかどうかを比較します。
    Attribute get​(Class<?> category)
    指定された属性カテゴリに格納される属性セットの属性値を返します。
    int hashCode()
    属性セットのハッシュ・コード値を返します。
    boolean isEmpty()
    この属性セットに属性が含まれていない場合は、trueを返します。
    boolean remove​(Class<?> category)
    属性セットからカテゴリの任意の属性を削除します(存在する場合)。
    boolean remove​(Attribute attribute)
    属性セットから指定された属性を削除します(存在する場合)。
    int size()
    属性セット内の属性数を返します。
    Attribute[] toArray()
    このセットに含まれている属性の配列を返します。
  • メソッドの詳細

    • get

      Attribute get​(Class<?> category)
      指定された属性カテゴリに格納される属性セットの属性値を返します。 この属性セットの指定された属性カテゴリに属性値が含まれていない場合はnullを返します。
      パラメータ:
      category - 関連する属性値が返される属性カテゴリ。 これは、Attributeインタフェースを実装するClassである必要があります。
      戻り値:
      この属性セットに含まれる属性カテゴリの属性値。この属性セットに指定された属性カテゴリの属性値が含まれていない場合はnull
      例外:
      NullPointerException - categorynullの場合
      ClassCastException - categoryがインタフェースAttributeを実装するClassでない場合
    • add

      boolean add​(Attribute attribute)
      属性をまだ保持していない場合、最初に指定された属性値と同じ属性カテゴリにある値を削除してから、属性セットに指定された属性を追加します。
      パラメータ:
      attribute - この属性セットに追加する属性値
      戻り値:
      この属性セットが呼出しの結果として変更された場合、つまり、指定された属性値がすでにこの属性セットのメンバーでなくなっている場合はtrue
      例外:
      NullPointerException - attributenullの場合
      UnmodifiableSetException - この属性セットがadd()操作をサポートしていない場合
    • remove

      boolean remove​(Class<?> category)
      属性セットからカテゴリの任意の属性を削除します(存在する場合)。 categorynullの場合、remove()は何もせず、falseを返します。
      パラメータ:
      category - この属性セットから削除される属性カテゴリ
      戻り値:
      この属性セットが呼出しの結果として変更された場合、つまり、指定された属性値がこの属性セットのメンバーになっている場合はtrue
      例外:
      UnmodifiableSetException - この属性セットがremove()操作をサポートしていない場合
    • remove

      boolean remove​(Attribute attribute)
      属性セットから指定された属性を削除します(存在する場合)。 attributenullの場合、remove()は何もせず、falseを返します。
      パラメータ:
      attribute - この属性セットから削除される属性値
      戻り値:
      この属性セットが呼出しの結果として変更された場合、つまり、指定された属性値がこの属性セットのメンバーになっている場合はtrue
      例外:
      UnmodifiableSetException - この属性セットがremove()操作をサポートしていない場合
    • containsKey

      boolean containsKey​(Class<?> category)
      属性セットが、指定されたカテゴリの属性を保持している場合にtrueを返します。
      パラメータ:
      category - この属性セットにあるかどうかが調べられる
      戻り値:
      この属性セットに指定されたカテゴリの属性値が含まれている場合はtrue
    • containsValue

      boolean containsValue​(Attribute attribute)
      この属性セットに指定された属性値が含まれている場合はtrueを返します。
      パラメータ:
      attribute - この属性集合の存在がテストされるべき属性値
      戻り値:
      この属性セットに指定された属性値が含まれている場合はtrue
    • addAll

      boolean addAll​(AttributeSet attributes)
      指定されたセットのすべての要素をこの属性に追加します。 その結果は、= add(Attribute)操作が指定されたセットの各要素を持つ属性セットに連続的に適用された場合と同じです。 指定されたセットがaddAll(AttributeSet)操作の進行中に変更された場合、その操作の動作は指定されていません。

      addAll(AttributeSet)操作が例外をスローした場合、この属性セットの状態への影響は実装に依存します。例外が発生した時点の前に指定されたセットの要素は、この属性セットに追加される場合とされない場合があります。

      パラメータ:
      attributes - 要素がこの属性セットに追加される属性
      戻り値:
      この属性セットが呼出しの結果として変更された場合はtrue
      例外:
      UnmodifiableSetException - この属性セットがaddAll(AttributeSet)メソッドをサポートしていない場合
      NullPointerException - 指定されたセットの要素がnullの場合
      関連項目:
      add(Attribute)
    • size

      int size()
      属性セット内の属性数を返します。 この属性セットにInteger.MAX_VALUEを超える要素が含まれている場合は、Integer.MAX_VALUEを返します。
      戻り値:
      この属性セットの属性の数
    • toArray

      Attribute[] toArray()
      このセットに含まれている属性の配列を返します。
      戻り値:
      配列としてこのセットに含まれるAttributesAttributeSetが空の場合は長さゼロ
    • clear

      void clear()
      この属性セットからすべての属性を削除します。
      例外:
      UnmodifiableSetException - この属性セットがclear()操作をサポートしていない場合
    • isEmpty

      boolean isEmpty()
      この属性セットに属性が含まれていない場合は、trueを返します。
      戻り値:
      trueこの属性セットに属性がない場合
    • equals

      boolean equals​(Object object)
      指定されたオブジェクトとこの属性セットが等しいかどうかを比較します。 指定されたオブジェクトも属性セットであり、この2つの属性セットに属性カテゴリと属性値の同じマッピングが含まれている場合はtrueを返します。 これにより、equals()メソッドがAttributeSetインタフェースのさまざまな実装間で正しく動作することが保証されます。
      オーバーライド:
      equals 、クラス:  Object
      パラメータ:
      object - この属性セットと等しいかどうかが比較される
      戻り値:
      指定されたオブジェクトがこの属性セットと等しい場合はtrue
      関連項目:
      Object.hashCode()HashMap
    • hashCode

      int hashCode()
      属性セットのハッシュ・コード値を返します。 属性セットのハッシュ・コードは、AttributeSet内の各エントリのハッシュ・コードの合計であると定義されています。 これにより、Object.hashCode()の一般規約によって要求されるように、任意の2つの属性セットt1t2についてt1.equals(t2)であればt1.hashCode()==t2.hashCode()となることが保証されます。
      オーバーライド:
      hashCode 、クラス:  Object
      戻り値:
      この属性セットのハッシュ・コード値
      関連項目:
      Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)