javax.print.attribute
Interface AttributeSet

All Known Subinterfaces:
DocAttributeSet sample code for javax.print.attribute.DocAttributeSet definition code for javax.print.attribute.DocAttributeSet , PrintJobAttributeSet sample code for javax.print.attribute.PrintJobAttributeSet definition code for javax.print.attribute.PrintJobAttributeSet , PrintRequestAttributeSet sample code for javax.print.attribute.PrintRequestAttributeSet definition code for javax.print.attribute.PrintRequestAttributeSet , PrintServiceAttributeSet sample code for javax.print.attribute.PrintServiceAttributeSet definition code for javax.print.attribute.PrintServiceAttributeSet
All Known Implementing Classes:
HashAttributeSet sample code for javax.print.attribute.HashAttributeSet definition code for javax.print.attribute.HashAttributeSet , HashDocAttributeSet sample code for javax.print.attribute.HashDocAttributeSet definition code for javax.print.attribute.HashDocAttributeSet , HashPrintJobAttributeSet sample code for javax.print.attribute.HashPrintJobAttributeSet definition code for javax.print.attribute.HashPrintJobAttributeSet , HashPrintRequestAttributeSet sample code for javax.print.attribute.HashPrintRequestAttributeSet definition code for javax.print.attribute.HashPrintRequestAttributeSet , HashPrintServiceAttributeSet sample code for javax.print.attribute.HashPrintServiceAttributeSet definition code for javax.print.attribute.HashPrintServiceAttributeSet

public interface AttributeSet

Interface AttributeSet specifies the interface for a set of printing attributes. A printing attribute is an object whose class implements interface Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute .

An attribute set contains a group of attribute values, where duplicate values are not allowed in the set. Furthermore, each value in an attribute set is a member of some category, and at most one value in any particular category is allowed in the set. For an attribute set, the values are Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute objects, and the categories are Class sample code for java.lang.Class definition code for java.lang.Class objects. An attribute's category is the class (or interface) at the root of the class hierarchy for that kind of attribute. Note that an attribute object's category may be a superclass of the attribute object's class rather than the attribute object's class itself. An attribute object's category is determined by calling the getCategory() sample code for javax.print.attribute.Attribute.getCategory() definition code for javax.print.attribute.Attribute.getCategory() method defined in interface Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute .

The interfaces of an AttributeSet resemble those of the Java Collections API's java.util.Map interface, but is more restrictive in the types it will accept, and combines keys and values into an Attribute.

Attribute sets are used in several places in the Print Service API. In each context, only certain kinds of attributes are allowed to appear in the attribute set, as determined by the tagging interfaces which the attribute class implements -- DocAttribute sample code for javax.print.attribute.DocAttribute definition code for javax.print.attribute.DocAttribute , PrintRequestAttribute sample code for javax.print.attribute.PrintRequestAttribute definition code for javax.print.attribute.PrintRequestAttribute , PrintJobAttribute sample code for javax.print.attribute.PrintJobAttribute definition code for javax.print.attribute.PrintJobAttribute , and PrintServiceAttribute sample code for javax.print.attribute.PrintServiceAttribute definition code for javax.print.attribute.PrintServiceAttribute . There are four specializations of an attribute set that are restricted to contain just one of the four kinds of attribute -- DocAttributeSet sample code for javax.print.attribute.DocAttributeSet definition code for javax.print.attribute.DocAttributeSet , PrintRequestAttributeSet sample code for javax.print.attribute.PrintRequestAttributeSet definition code for javax.print.attribute.PrintRequestAttributeSet , PrintJobAttributeSet sample code for javax.print.attribute.PrintJobAttributeSet definition code for javax.print.attribute.PrintJobAttributeSet , and PrintServiceAttributeSet sample code for javax.print.attribute.PrintServiceAttributeSet definition code for javax.print.attribute.PrintServiceAttributeSet , respectively. Note that many attribute classes implement more than one tagging interface and so may appear in more than one context.

In some contexts, the client is only allowed to examine an attribute set's contents but not change them (the set is read-only). In other places, the client is allowed both to examine and to change an attribute set's contents (the set is read-write). For a read-only attribute set, calling a mutating operation throws an UnmodifiableSetException.

The Print Service API provides one implementation of interface AttributeSet, class HashAttributeSet sample code for javax.print.attribute.HashAttributeSet definition code for javax.print.attribute.HashAttributeSet . A client can use class HashAttributeSet sample code for javax.print.attribute.HashAttributeSet definition code for javax.print.attribute.HashAttributeSet or provide its own implementation of interface AttributeSet. The Print Service API also provides implementations of interface AttributeSet's subinterfaces -- classes HashDocAttributeSet sample code for javax.print.attribute.HashDocAttributeSet definition code for javax.print.attribute.HashDocAttributeSet , HashPrintRequestAttributeSet sample code for javax.print.attribute.HashPrintRequestAttributeSet definition code for javax.print.attribute.HashPrintRequestAttributeSet , HashPrintJobAttributeSet sample code for javax.print.attribute.HashPrintJobAttributeSet definition code for javax.print.attribute.HashPrintJobAttributeSet , and HashPrintServiceAttributeSet sample code for javax.print.attribute.HashPrintServiceAttributeSet definition code for javax.print.attribute.HashPrintServiceAttributeSet .


Method Summary
 boolean add sample code for javax.print.attribute.AttributeSet.add(javax.print.attribute.Attribute) definition code for javax.print.attribute.AttributeSet.add(javax.print.attribute.Attribute) (Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute  attribute)
          Adds the specified attribute to this attribute set if it is not already present, first removing any existing value in the same attribute category as the specified attribute value.
 boolean addAll sample code for javax.print.attribute.AttributeSet.addAll(javax.print.attribute.AttributeSet) definition code for javax.print.attribute.AttributeSet.addAll(javax.print.attribute.AttributeSet) (AttributeSet sample code for javax.print.attribute.AttributeSet definition code for javax.print.attribute.AttributeSet  attributes)
          Adds all of the elements in the specified set to this attribute.
 void clear sample code for javax.print.attribute.AttributeSet.clear() definition code for javax.print.attribute.AttributeSet.clear() ()
          Removes all attributes from this attribute set.
 boolean containsKey sample code for javax.print.attribute.AttributeSet.containsKey(java.lang.Class) definition code for javax.print.attribute.AttributeSet.containsKey(java.lang.Class) (Class sample code for java.lang.Class definition code for java.lang.Class <?> category)
          Returns true if this attribute set contains an attribute for the specified category.
 boolean containsValue sample code for javax.print.attribute.AttributeSet.containsValue(javax.print.attribute.Attribute) definition code for javax.print.attribute.AttributeSet.containsValue(javax.print.attribute.Attribute) (Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute  attribute)
          Returns true if this attribute set contains the given attribute value.
 boolean equals sample code for javax.print.attribute.AttributeSet.equals(java.lang.Object) definition code for javax.print.attribute.AttributeSet.equals(java.lang.Object) (Object sample code for java.lang.Object definition code for java.lang.Object  object)
          Compares the specified object with this attribute set for equality.
 Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute get sample code for javax.print.attribute.AttributeSet.get(java.lang.Class) definition code for javax.print.attribute.AttributeSet.get(java.lang.Class) (Class sample code for java.lang.Class definition code for java.lang.Class <?> category)
          Returns the attribute value which this attribute set contains in the given attribute category.
 int hashCode sample code for javax.print.attribute.AttributeSet.hashCode() definition code for javax.print.attribute.AttributeSet.hashCode() ()
          Returns the hash code value for this attribute set.
 boolean isEmpty sample code for javax.print.attribute.AttributeSet.isEmpty() definition code for javax.print.attribute.AttributeSet.isEmpty() ()
          Returns true if this attribute set contains no attributes.
 boolean remove sample code for javax.print.attribute.AttributeSet.remove(javax.print.attribute.Attribute) definition code for javax.print.attribute.AttributeSet.remove(javax.print.attribute.Attribute) (Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute  attribute)
          Removes the specified attribute from this attribute set if present.
 boolean remove sample code for javax.print.attribute.AttributeSet.remove(java.lang.Class) definition code for javax.print.attribute.AttributeSet.remove(java.lang.Class) (Class sample code for java.lang.Class definition code for java.lang.Class <?> category)
          Removes any attribute for this category from this attribute set if present.
 int size sample code for javax.print.attribute.AttributeSet.size() definition code for javax.print.attribute.AttributeSet.size() ()
          Returns the number of attributes in this attribute set.
 Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute [] toArray sample code for javax.print.attribute.AttributeSet.toArray() definition code for javax.print.attribute.AttributeSet.toArray() ()
          Returns an array of the attributes contained in this set.
 

Method Detail

get sample code for javax.print.attribute.AttributeSet.get(java.lang.Class<?>) definition code for javax.print.attribute.AttributeSet.get(java.lang.Class<?>)

Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute  get(Class sample code for java.lang.Class definition code for java.lang.Class <?> category)
Returns the attribute value which this attribute set contains in the given attribute category. Returns null if this attribute set does not contain any attribute value in the given attribute category.

Parameters:
category - Attribute category whose associated attribute value is to be returned. It must be a Class sample code for java.lang.Class definition code for java.lang.Class that implements interface Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute .
Returns:
The attribute value in the given attribute category contained in this attribute set, or null if this attribute set does not contain any attribute value in the given attribute category.
Throws:
NullPointerException sample code for java.lang.NullPointerException definition code for java.lang.NullPointerException - (unchecked exception) Thrown if the category is null.
ClassCastException sample code for java.lang.ClassCastException definition code for java.lang.ClassCastException - (unchecked exception) Thrown if the category is not a Class sample code for java.lang.Class definition code for java.lang.Class that implements interface Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute .

add sample code for javax.print.attribute.AttributeSet.add(javax.print.attribute.Attribute) definition code for javax.print.attribute.AttributeSet.add(javax.print.attribute.Attribute)

boolean add(Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute  attribute)
Adds the specified attribute to this attribute set if it is not already present, first removing any existing value in the same attribute category as the specified attribute value.

Parameters:
attribute - Attribute value to be added to this attribute set.
Returns:
true if this attribute set changed as a result of the call, i.e., the given attribute value was not already a member of this attribute set.
Throws:
NullPointerException sample code for java.lang.NullPointerException definition code for java.lang.NullPointerException - (unchecked exception) Thrown if the attribute is null.
UnmodifiableSetException sample code for javax.print.attribute.UnmodifiableSetException definition code for javax.print.attribute.UnmodifiableSetException - (unchecked exception) Thrown if this attribute set does not support the add() operation.

remove sample code for javax.print.attribute.AttributeSet.remove(java.lang.Class<?>) definition code for javax.print.attribute.AttributeSet.remove(java.lang.Class<?>)

boolean remove(Class sample code for java.lang.Class definition code for java.lang.Class <?> category)
Removes any attribute for this category from this attribute set if present. If category is null, then remove() does nothing and returns false.

Parameters:
category - Attribute category to be removed from this attribute set.
Returns:
true if this attribute set changed as a result of the call, i.e., the given attribute value had been a member of this attribute set.
Throws:
UnmodifiableSetException sample code for javax.print.attribute.UnmodifiableSetException definition code for javax.print.attribute.UnmodifiableSetException - (unchecked exception) Thrown if this attribute set does not support the remove() operation.

remove sample code for javax.print.attribute.AttributeSet.remove(javax.print.attribute.Attribute) definition code for javax.print.attribute.AttributeSet.remove(javax.print.attribute.Attribute)

boolean remove(Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute  attribute)
Removes the specified attribute from this attribute set if present. If attribute is null, then remove() does nothing and returns false.

Parameters:
attribute - Attribute value to be removed from this attribute set.
Returns:
true if this attribute set changed as a result of the call, i.e., the given attribute value had been a member of this attribute set.
Throws:
UnmodifiableSetException sample code for javax.print.attribute.UnmodifiableSetException definition code for javax.print.attribute.UnmodifiableSetException - (unchecked exception) Thrown if this attribute set does not support the remove() operation.

containsKey sample code for javax.print.attribute.AttributeSet.containsKey(java.lang.Class<?>) definition code for javax.print.attribute.AttributeSet.containsKey(java.lang.Class<?>)

boolean containsKey(Class sample code for java.lang.Class definition code for java.lang.Class <?> category)
Returns true if this attribute set contains an attribute for the specified category.

Parameters:
category - whose presence in this attribute set is to be tested.
Returns:
true if this attribute set contains an attribute value for the specified category.

containsValue sample code for javax.print.attribute.AttributeSet.containsValue(javax.print.attribute.Attribute) definition code for javax.print.attribute.AttributeSet.containsValue(javax.print.attribute.Attribute)

boolean containsValue(Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute  attribute)
Returns true if this attribute set contains the given attribute value.

Parameters:
attribute - Attribute value whose presence in this attribute set is to be tested.
Returns:
true if this attribute set contains the given attribute value.

addAll sample code for javax.print.attribute.AttributeSet.addAll(javax.print.attribute.AttributeSet) definition code for javax.print.attribute.AttributeSet.addAll(javax.print.attribute.AttributeSet)

boolean addAll(AttributeSet sample code for javax.print.attribute.AttributeSet definition code for javax.print.attribute.AttributeSet  attributes)
Adds all of the elements in the specified set to this attribute. The outcome is the same as if the = add(Attribute) sample code for javax.print.attribute.AttributeSet.add(javax.print.attribute.Attribute) definition code for javax.print.attribute.AttributeSet.add(javax.print.attribute.Attribute) operation had been applied to this attribute set successively with each element from the specified set. The behavior of the addAll(AttributeSet) operation is unspecified if the specified set is modified while the operation is in progress.

If the addAll(AttributeSet) operation throws an exception, the effect on this attribute set's state is implementation dependent; elements from the specified set before the point of the exception may or may not have been added to this attribute set.

Parameters:
attributes - whose elements are to be added to this attribute set.
Returns:
true if this attribute set changed as a result of the call.
Throws:
UnmodifiableSetException sample code for javax.print.attribute.UnmodifiableSetException definition code for javax.print.attribute.UnmodifiableSetException - (Unchecked exception) Thrown if this attribute set does not support the addAll(AttributeSet) method.
NullPointerException sample code for java.lang.NullPointerException definition code for java.lang.NullPointerException - (Unchecked exception) Thrown if some element in the specified set is null.
See Also:
add(Attribute) sample code for javax.print.attribute.AttributeSet.add(javax.print.attribute.Attribute) definition code for javax.print.attribute.AttributeSet.add(javax.print.attribute.Attribute)

size sample code for javax.print.attribute.AttributeSet.size() definition code for javax.print.attribute.AttributeSet.size()

int size()
Returns the number of attributes in this attribute set. If this attribute set contains more than Integer.MAX_VALUE elements, returns Integer.MAX_VALUE.

Returns:
The number of attributes in this attribute set.

toArray sample code for javax.print.attribute.AttributeSet.toArray() definition code for javax.print.attribute.AttributeSet.toArray()

Attribute sample code for javax.print.attribute.Attribute definition code for javax.print.attribute.Attribute [] toArray()
Returns an array of the attributes contained in this set.

Returns:
the Attributes contained in this set as an array, zero length if the AttributeSet is empty.

clear sample code for javax.print.attribute.AttributeSet.clear() definition code for javax.print.attribute.AttributeSet.clear()

void clear()
Removes all attributes from this attribute set.

Throws:
UnmodifiableSetException sample code for javax.print.attribute.UnmodifiableSetException definition code for javax.print.attribute.UnmodifiableSetException - (unchecked exception) Thrown if this attribute set does not support the clear() operation.

isEmpty sample code for javax.print.attribute.AttributeSet.isEmpty() definition code for javax.print.attribute.AttributeSet.isEmpty()

boolean isEmpty()
Returns true if this attribute set contains no attributes.

Returns:
true if this attribute set contains no attributes.

equals sample code for javax.print.attribute.AttributeSet.equals(java.lang.Object) definition code for javax.print.attribute.AttributeSet.equals(java.lang.Object)

boolean equals(Object sample code for java.lang.Object definition code for java.lang.Object  object)
Compares the specified object with this attribute set for equality. Returns true if the given object is also an attribute set and the two attribute sets contain the same attribute category-attribute value mappings. This ensures that the equals() method works properly across different implementations of the AttributeSet interface.

Overrides:
equals sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object) in class Object sample code for java.lang.Object definition code for java.lang.Object
Parameters:
object - to be compared for equality with this attribute set.
Returns:
true if the specified object is equal to this attribute set.
See Also:
Object.hashCode() sample code for java.lang.Object.hashCode() definition code for java.lang.Object.hashCode() , Hashtable sample code for java.util.Hashtable definition code for java.util.Hashtable

hashCode sample code for javax.print.attribute.AttributeSet.hashCode() definition code for javax.print.attribute.AttributeSet.hashCode()

int hashCode()
Returns the hash code value for this attribute set. The hash code of an attribute set is defined to be the sum of the hash codes of each entry in the AttributeSet. This ensures that t1.equals(t2) implies that t1.hashCode()==t2.hashCode() for any two attribute sets t1 and t2, as required by the general contract of Object.hashCode() sample code for java.lang.Object.hashCode() definition code for java.lang.Object.hashCode() .

Overrides:
hashCode sample code for java.lang.Object.hashCode() definition code for java.lang.Object.hashCode() in class Object sample code for java.lang.Object definition code for java.lang.Object
Returns:
The hash code value for this attribute set.
See Also:
Object.equals(java.lang.Object) sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object) , Hashtable sample code for java.util.Hashtable definition code for java.util.Hashtable