JavaTM Platform
Standard Ed. 6

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 컬렉션 API 의 java.util.Map 인터페이스를 닮아 있습니다만, 받아들이는 형태에 의해 큰 제한이 있어, 키와 값을 Attribute 에 정리합니다.  

속성 세트는, Print Service API 의 몇개의 장소에서 사용됩니다. 각 문맥으로, 특정의 종류의 속성만이 속성 세트에 표시할 수 있습니다. 이것은, 속성 클래스가 구현하는 태그 기능 인터페이스 DocAttribute ,PrintRequestAttribute ,PrintJobAttribute , 및 PrintServiceAttribute 에 의해 지정됩니다. 속성의 특성에는 4 개 있어, 각각 다음의 4 종류의 속성중 1 개(살)만을 가지도록(듯이) 제한되고 있습니다. 이것들은 DocAttributeSet ,PrintRequestAttributeSet ,PrintJobAttributeSet , 및 PrintServiceAttributeSet 입니다. 많은 속성 클래스는, 복수의 태그 기능 인터페이스를 구현하기 위해(때문에), 복수의 문맥으로 표시되는 것에 주의해 주세요.

일부의 문맥에서는, 클라이언트는 속성 세트의 내용의 검사만이 할 수 있어 변경은 할 수 없습니다 (설정이 읽어들여 전용). 그 외의 경우, 클라이언트는 속성 세트의 내용의 검사라고 변경의 양쪽 모두를 실시할 수가 있습니다 (설정이 읽어들여, 기입 가능). read 전용 속성 세트의 경우, 변경 오퍼레이션의 호출은 UnmodifiableSetException 를 throw 합니다.  

Print Service API 는,HashAttributeSet 클래스의 AttributeSet 인터페이스의 1 개를 구현합니다. 클라이언트는,HashAttributeSet 클래스를 사용하는지, 또는 독자적인 AttributeSet 인터페이스를 구현합니다. 또, Print Service API 는, AttributeSet 인터페이스의 서브 인터페이스도 구현합니다. 그 클래스는,HashDocAttributeSet ,HashPrintRequestAttributeSet ,HashPrintJobAttributeSet , 및 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 (Attribute  attribute)
          속성 세트로부터 지정된 속성을 삭제합니다 (존재하는 경우).
 boolean remove (Class <? > category)
          속성 세트로부터 카테고리의 임의의 속성을 삭제합니다 (존재하는 경우).
 int size ()
          속성 세트내의 속성수를 돌려줍니다.
 Attribute [] toArray ()
          이 세트에 포함되어 있는 속성의 배열을 돌려줍니다.
 

메소드의 상세

get

Attribute  get(Class <? > category)
지정된 속성 카테고리에 포함되는 속성 세트의 속성치를 돌려줍니다. 속성 세트가 지정된 속성 카테고리에 속성치를 가지지 않는 경우는 null 를 돌려줍니다.

파라미터:
category - 관련하는 속성치가 반환되는 속성 카테고리. Attribute 인터페이스를 구현한다 Class 가 아니면 안된다
반환값:
속성 세트에 포함되는, 지정된 속성 카테고리의 속성치, 또는 속성 세트가 지정된 속성 카테고리에 속성치를 가지지 않는 경우는 null
예외:
NullPointerException - 미확인의 예외. category 가 null 의 경우, throw 된다
ClassCastException - 미확인의 예외. categoryAttribute 인터페이스를 구현한다 Class 가 아닌 경우, throw 된다

add

boolean add(Attribute  attribute)
속성을 아직 보관 유지하고 있지 않는 경우, 최초로 지정된 속성치와 같은 속성 카테고리에 있는 값을 삭제하고 나서, 속성 세트로 지정된 속성을 추가합니다.

파라미터:
attribute - 속성 세트에 추가되는 속성치
반환값:
속성 세트가 호출의 결과 변경되었을 경우, 즉 지정된 속성치가 벌써 속성 세트의 멤버가 아니게 되고 있는 경우는 true
예외:
NullPointerException - 미확인의 예외. attribute 가 null 의 경우, throw 된다
UnmodifiableSetException - 미확인의 예외. 속성 세트가 add() 오퍼레이션을 지원하지 않는 경우, throw 된다

remove

boolean remove(Class <? > category)
속성 세트로부터 카테고리의 임의의 속성을 삭제합니다 (존재하는 경우). category 가 null 의 경우,remove() 는 아무것도 하지 않고 false 를 돌려줍니다.

파라미터:
category - 이 속성 세트로부터 삭제된다 속성 카테고리
반환값:
속성 세트가 호출의 결과 변경되었을 경우, 즉 지정된 속성치가 속성 세트의 멤버가 되어 있는 경우는 true
예외:
UnmodifiableSetException - 미확인의 예외. 속성 세트가 remove() 오퍼레이션을 지원하지 않는 경우, throw 된다

remove

boolean remove(Attribute  attribute)
속성 세트로부터 지정된 속성을 삭제합니다 (존재하는 경우). attribute 가 null 의 경우,remove() 는 아무것도 하지 않고 false 를 돌려줍니다.

파라미터:
attribute - 속성 세트로부터 삭제되는 속성치
반환값:
속성 세트가 호출의 결과 변경되었을 경우, 즉 지정된 속성치가 속성 세트의 멤버가 되어 있는 경우는 true
예외:
UnmodifiableSetException - 미확인의 예외. 속성 세트가 remove() 오퍼레이션을 지원하지 않는 경우, throw 된다

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) 오퍼레이션이 예외를 throw 하는 경우, 속성 세트 상태에 대한 영향은 구현에 의존합니다. 예외의 위치전으로 지정된 세트의 요소는, 속성 세트에 추가되는 경우로 여겨지지 않는 경우가 있습니다.

파라미터:
attributes - 속성 세트에 추가된다 요소
반환값:
속성 세트가 호출의 결과 변경되었을 경우, true
예외:
UnmodifiableSetException - 미확인의 예외. 속성 세트가 addAll(AttributeSet) 메소드를 지원하지 않는 경우, throw 된다
NullPointerException - 미확인의 예외. 지정된 세트의 일부의 요소가 null 의 경우, throw 되는
관련 항목:
add(Attribute)

size

int size()
속성 세트내의 속성수를 돌려줍니다. 이 속성 세트에 Integer.MAX_VALUE 보다 많은 요소가 있는 경우는,Integer.MAX_VALUE 를 돌려줍니다.

반환값:
이 속성 세트의 속성수

toArray

Attribute [] toArray()
이 세트에 포함되어 있는 속성의 배열을 돌려줍니다.

반환값:
이 세트에 배열로서 보관 유지되는 Attribute. AttributeSet 가 빈 상태(empty)의 경우는 길이 제로

clear

void clear()
이 속성 세트로부터 모든 속성을 삭제합니다.

예외:
UnmodifiableSetException - 미확인의 예외. 속성 세트가 clear() 오퍼레이션을 지원하지 않는 경우, throw 된다

isEmpty

boolean isEmpty()
이 속성 세트에 속성이 포함되어 있지 않은 경우에 true 를 돌려줍니다.

반환값:
이 속성 세트에 속성이 포함되어 있지 않은 경우에 true

equals

boolean equals(Object  object)
지정된 객체와 이 속성 세트가 동일한지 어떤지를 비교합니다. 지정된 객체도 속성 세트이며, 2 개의 속성 세트가 같은 속성 카테고리의 속성치의 매핑을 보관 유지하는 경우는 true 를 돌려줍니다. 이것은, 다른 AttributeSet 인터페이스의 구현으로 equals() 메소드가 정상적으로 동작하는 것을 보증합니다.

오버라이드(override):
클래스 Object 내의 equals
파라미터:
object - 이 속성 세트와 동일한지 어떤지가 비교된다
반환값:
지정된 객체가 이 속성 세트와 동일한 경우는 true
관련 항목:
Object.hashCode() , Hashtable

hashCode

int hashCode()
속성 세트의 해시 코드값를 돌려줍니다. 속성 세트의 해시 코드는, AttributeSet 의 각 엔트리의 해시 코드의 합계가 되도록(듯이) 정의됩니다. 이것에 의해,Object.hashCode() 의 일반 규약에 의해 요구되도록(듯이), 임의의 2 개의 속성 세트 t1t2 에 대해,t1.equals(t2) 이면 t1.hashCode() ==t2.hashCode() 가 되는 것이 보증됩니다.

오버라이드(override):
클래스 Object 내의 hashCode
반환값:
속성 세트의 해시 코드값
관련 항목:
Object.equals(java.lang.Object) , Hashtable

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.