- java.lang.Object
-
- javax.print.attribute.AttributeSetUtilities
-
public final class AttributeSetUtilities extends Object
ClassAttributeSetUtilities
provides static methods for manipulatingAttributeSets
.- Methods for creating unmodifiable and synchronized views of attribute sets.
- operations useful for building implementations of interface
AttributeSet
AttributeSet
S provides a client with "read-only" access to S. Query operations on U "read through" to S; thus, changes in S are reflected in U. However, any attempt to modify U, results in anUnmodifiableSetException
. The unmodifiable view object U will be serializable if the attribute set object S is serializable.A synchronized view V of an attribute set S provides a client with synchronized (multiple thread safe) access to S. Each operation of V is synchronized using V itself as the lock object and then merely invokes the corresponding operation of S. In order to guarantee mutually exclusive access, it is critical that all access to S is accomplished through V. The synchronized view object V will be serializable if the attribute set object S is serializable.
As mentioned in the package description of
javax.print
, anull
reference parameter to methods is incorrect unless explicitly documented on the method as having a meaningful interpretation. Usage to the contrary is incorrect coding and may result in a run time exception either immediately or at some later time.IllegalArgumentException
andNullPointerException
are examples of typical and acceptable run time exceptions for such cases.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static AttributeSet
synchronizedView(AttributeSet attributeSet)
Creates a synchronized view of the given attribute set.static DocAttributeSet
synchronizedView(DocAttributeSet attributeSet)
Creates a synchronized view of the given doc attribute set.static PrintJobAttributeSet
synchronizedView(PrintJobAttributeSet attributeSet)
Creates a synchronized view of the given print job attribute set.static PrintRequestAttributeSet
synchronizedView(PrintRequestAttributeSet attributeSet)
Creates a synchronized view of the given print request attribute set.static PrintServiceAttributeSet
synchronizedView(PrintServiceAttributeSet attributeSet)
Creates a synchronized view of the given print service attribute set.static AttributeSet
unmodifiableView(AttributeSet attributeSet)
Creates an unmodifiable view of the given attribute set.static DocAttributeSet
unmodifiableView(DocAttributeSet attributeSet)
Creates an unmodifiable view of the given doc attribute set.static PrintJobAttributeSet
unmodifiableView(PrintJobAttributeSet attributeSet)
Creates an unmodifiable view of the given print job attribute set.static PrintRequestAttributeSet
unmodifiableView(PrintRequestAttributeSet attributeSet)
Creates an unmodifiable view of the given print request attribute set.static PrintServiceAttributeSet
unmodifiableView(PrintServiceAttributeSet attributeSet)
Creates an unmodifiable view of the given print service attribute set.static Class<?>
verifyAttributeCategory(Object object, Class<?> interfaceName)
static Attribute
verifyAttributeValue(Object object, Class<?> interfaceName)
Verify that the given object is an instance of the given interface, which is assumed to be interfaceAttribute
or a subinterface thereof.static void
verifyCategoryForValue(Class<?> category, Attribute attribute)
Verify that the given attribute category object is equal to the category of the given attribute value object.
-
-
-
Method Detail
-
unmodifiableView
public static AttributeSet unmodifiableView(AttributeSet attributeSet)
Creates an unmodifiable view of the given attribute set.- Parameters:
attributeSet
- underlying attribute set- Returns:
- unmodifiable view of
attributeSet
- Throws:
NullPointerException
- ifattributeSet
isnull
-
unmodifiableView
public static DocAttributeSet unmodifiableView(DocAttributeSet attributeSet)
Creates an unmodifiable view of the given doc attribute set.- Parameters:
attributeSet
- underlying doc attribute set- Returns:
- unmodifiable view of
attributeSet
- Throws:
NullPointerException
- ifattributeSet
isnull
-
unmodifiableView
public static PrintRequestAttributeSet unmodifiableView(PrintRequestAttributeSet attributeSet)
Creates an unmodifiable view of the given print request attribute set.- Parameters:
attributeSet
- underlying print request attribute set- Returns:
- unmodifiable view of
attributeSet
- Throws:
NullPointerException
- ifattributeSet
isnull
-
unmodifiableView
public static PrintJobAttributeSet unmodifiableView(PrintJobAttributeSet attributeSet)
Creates an unmodifiable view of the given print job attribute set.- Parameters:
attributeSet
- underlying print job attribute set- Returns:
- unmodifiable view of
attributeSet
- Throws:
NullPointerException
- ifattributeSet
isnull
-
unmodifiableView
public static PrintServiceAttributeSet unmodifiableView(PrintServiceAttributeSet attributeSet)
Creates an unmodifiable view of the given print service attribute set.- Parameters:
attributeSet
- underlying print service attribute set- Returns:
- unmodifiable view of
attributeSet
- Throws:
NullPointerException
- ifattributeSet
isnull
-
synchronizedView
public static AttributeSet synchronizedView(AttributeSet attributeSet)
Creates a synchronized view of the given attribute set.- Parameters:
attributeSet
- underlying attribute set- Returns:
- synchronized view of
attributeSet
- Throws:
NullPointerException
- ifattributeSet
isnull
-
synchronizedView
public static DocAttributeSet synchronizedView(DocAttributeSet attributeSet)
Creates a synchronized view of the given doc attribute set.- Parameters:
attributeSet
- underlying doc attribute set- Returns:
- synchronized view of
attributeSet
- Throws:
NullPointerException
- ifattributeSet
isnull
-
synchronizedView
public static PrintRequestAttributeSet synchronizedView(PrintRequestAttributeSet attributeSet)
Creates a synchronized view of the given print request attribute set.- Parameters:
attributeSet
- underlying print request attribute set- Returns:
- synchronized view of
attributeSet
- Throws:
NullPointerException
- ifattributeSet
isnull
-
synchronizedView
public static PrintJobAttributeSet synchronizedView(PrintJobAttributeSet attributeSet)
Creates a synchronized view of the given print job attribute set.- Parameters:
attributeSet
- underlying print job attribute set- Returns:
- synchronized view of
attributeSet
- Throws:
NullPointerException
- ifattributeSet
isnull
-
synchronizedView
public static PrintServiceAttributeSet synchronizedView(PrintServiceAttributeSet attributeSet)
Creates a synchronized view of the given print service attribute set.- Parameters:
attributeSet
- underlying print service attribute set- Returns:
- synchronized view of
attributeSet
- Throws:
NullPointerException
- ifattributeSet
isnull
-
verifyAttributeCategory
public static Class<?> verifyAttributeCategory(Object object, Class<?> interfaceName)
Verify that the given object is aClass
that implements the given interface, which is assumed to be interfaceAttribute
or a subinterface thereof.- Parameters:
object
-Object
to testinterfaceName
- interface the object must implement- Returns:
- if
object
is aClass
that implementsinterfaceName
,object
is returned downcast to typeClass
; otherwise an exception is thrown - Throws:
NullPointerException
- ifobject
isnull
ClassCastException
- ifobject
is not aClass
that implementsinterfaceName
-
verifyAttributeValue
public static Attribute verifyAttributeValue(Object object, Class<?> interfaceName)
Verify that the given object is an instance of the given interface, which is assumed to be interfaceAttribute
or a subinterface thereof.- Parameters:
object
-Object
to testinterfaceName
- interface of which the object must be an instance- Returns:
- if
object
is an instance ofinterfaceName
,object
is returned downcast to typeAttribute
; otherwise an exception is thrown - Throws:
NullPointerException
- ifobject
isnull
ClassCastException
- ifobject
is not an instance ofinterfaceName
-
verifyCategoryForValue
public static void verifyCategoryForValue(Class<?> category, Attribute attribute)
Verify that the given attribute category object is equal to the category of the given attribute value object. If so, this method returns doing nothing. If not, this method throws an exception.- Parameters:
category
- attribute category to testattribute
- attribute value to test- Throws:
NullPointerException
- if thecategory
orattribute
arenull
IllegalArgumentException
- if thecategory
is not equal to the category of theattribute
-
-