| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
Based on 115 examples
public interface PrintService
Interface PrintService is the factory for a DocPrintJob. A PrintService describes the capabilities of a Printer and can be queried regarding a printer's supported attributes.
Example:
DocFlavor flavor = DocFlavor.INPUT_STREAM.POSTSCRIPT; PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet(); aset.add(MediaSizeName.ISO_A4); PrintService[] pservices = PrintServiceLookup.lookupPrintServices(flavor, aset); if (pservices.length > 0) { DocPrintJob pj = pservices[0].createPrintJob(); try { FileInputStream fis = new FileInputStream("test.ps"); Doc doc = new SimpleDoc(fis, flavor, null); pj.print(doc, aset); } catch (FileNotFoundException fe) { } catch (PrintException e) { } }
Method Summary | |
---|---|
void |
Registers a listener for events on this PrintService. |
DocPrintJob |
Creates and returns a PrintJob capable of handling data from any of the supported document flavors. |
boolean |
Determines if two services are referring to the same underlying service. |
PrintServiceAttribute |
getAttribute(Class category) Gets the value of the single specified service attribute. |
PrintServiceAttributeSet |
Obtains this print service's set of printer description attributes giving this Print Service's status. |
Object |
getDefaultAttributeValue(Class category) Determines this print service's default printing attribute value in the given category. |
String |
getName() Returns a String name for this print service which may be used by applications to request a particular print service. |
ServiceUIFactory |
Returns a factory for UI components which allow users to interact with the service in various roles. |
Class[] |
Determines the printing attribute categories a client can specify when setting up a job for this print service. |
Object |
getSupportedAttributeValues(Class category, DocFlavor flavor, AttributeSet attributes) Determines the printing attribute values a client can specify in the given category when setting up a job for this print service. |
DocFlavor[] |
Determines the print data formats a client can specify when setting up a job for this PrintService .
|
AttributeSet |
getUnsupportedAttributes(DocFlavor flavor, AttributeSet attributes) Identifies the attributes that are unsupported for a print request in the context of a particular DocFlavor. |
int |
hashCode() This method should be implemented consistently with equals(Object) .
|
boolean |
isAttributeCategorySupported(Class category) Determines whether a client can specify the given printing attribute category when setting up a job for this print service. |
boolean |
isAttributeValueSupported(Attribute attrval, DocFlavor flavor, AttributeSet attributes) Determines whether a client can specify the given printing attribute value when setting up a job for this Print Service. |
boolean |
isDocFlavorSupported(DocFlavor flavor) Determines if this print service supports a specific DocFlavor .
|
void |
Removes the print-service listener from this print service. |
Method Detail |
---|
public void addPrintServiceAttributeListener(PrintServiceAttributeListener listener)
listener
- a PrintServiceAttributeListener, which
monitors the status of a print servicepublic DocPrintJob createPrintJob()
public boolean equals(Object obj)
Clients should call this method to determine if two services are referring to the same underlying service.
Services must implement this method and return true only if the service objects being compared may be used interchangeably by the client. Services are free to return the same object reference to an underlying service if that, but clients must not depend on equality of reference.
equals
in class Object
obj
- the reference object with which to compare.public PrintServiceAttribute getAttribute(Class category)
category
- the category of a PrintServiceAttribute supported
by this service - may not be null.public PrintServiceAttributeSet getAttributes()
getAttributes()
method call: that is, the returned
attribute set's contents will not be updated if this print
service's attribute set's contents change in the future. To detect
changes in attribute values, call getAttributes()
again
and compare the new attribute set to the previous attribute set;
alternatively, register a listener for print service events.
public Object getDefaultAttributeValue(Class category)
Some attributes may not be supported in a particular context (ie
for a particular DocFlavor
).
Use one of the methods that include a DocFlavor
to
validate the request before submitting it, such as
getSupportedAttributeValues(..)
.
Not all attributes have a default value. For example the
service will not have a defaultvalue for RequestingUser
i.e. a null return for a supported category means there is no
service default value for that category. Use the
isAttributeCategorySupported(Class)
method to
distinguish these cases.
category
- Printing attribute category for which the default
attribute value is requested. It must be a {@link
java.lang.Class Class} that implements interface
{@link javax.print.attribute.Attribute
Attribute}.category
, or null
if this Print Service does not support specifying a doc-level or
job-level attribute in category
in a Print
Request, or the service does not have a default value
for this attribute.public String getName()
public ServiceUIFactory getServiceUIFactory()
ServiceUIFactory
for more information.
public Class[] getSupportedAttributeCategories()
Class
that implements interface
{@link javax.print.attribute.Attribute Attribute}. This method returns
just the attribute categories that are supported; it does not
return the particular attribute values that are supported.
This method returns all the printing attribute
categories this print service supports for any possible job.
Some categories may not be supported in a particular context (ie
for a particular DocFlavor
).
Use one of the methods that include a DocFlavor
to
validate the request before submitting it, such as
getSupportedAttributeValues(..)
.
public Object getSupportedAttributeValues(Class category, DocFlavor flavor, AttributeSet attributes)
If flavor
is null and attributes
is null
or is an empty set, this method returns all the printing attribute
values this Print Service supports for any possible job. If
flavor
is not null or attributes
is not
an empty set, this method returns just the printing attribute values
that are compatible with the given doc flavor and/or set of attributes.
That is, a null return value may indicate that specifying this attribute
is incompatible with the specified DocFlavor.
Also if DocFlavor is not null it must be a flavor supported by this
PrintService, else IllegalArgumentException will be thrown.
If the attributes
parameter contains an Attribute whose
category is the same as the category
parameter, the service
must ignore this attribute in the AttributeSet.
DocAttribute
s which are to be specified on the
Doc
must be included in this set to accurately
represent the context.
This method returns an Object because different printing attribute categories indicate the supported attribute values in different ways. The documentation for each printing attribute in package {@link javax.print.attribute.standard javax.print.attribute.standard} describes how each attribute indicates its supported values. Possible ways of indicating support include:
getCategory(Class)
.
category
- Printing attribute category to test. It must be a
{@link java.lang.Class Class} that implements
interface {@link
javax.print.attribute.Attribute Attribute}.flavor
- Doc flavor for a supposed job, or null.attributes
- Set of printing attributes for a supposed job
(both job-level attributes and document-level
attributes), or null.category
,
or null if this Print Service does not support specifying a
doc-level or job-level attribute in category
in
a Print Request.public DocFlavor[] getSupportedDocFlavors()
PrintService
. A print data format is
designated by a "doc
flavor" (class {@link javax.print.DocFlavor DocFlavor})
consisting of a MIME type plus a print data representation class.
Note that some doc flavors may not be supported in combination
with all attributes. Use getUnsupportedAttributes(..)
to validate specific combinations.
public AttributeSet getUnsupportedAttributes(DocFlavor flavor, AttributeSet attributes)
DocAttribute
s which are to be specified on the
Doc
must be included in this set to accurately
represent the context.
If the return value is non-null, all attributes in the returned set are unsupported with this DocFlavor. The returned set does not distinguish attribute categories that are unsupported from unsupported attribute values.
A supported print request can then be created by removing all unsupported attributes from the original attribute set, except in the case that the DocFlavor is unsupported.
If any attributes are unsupported only because they are in conflict with other attributes then it is at the discretion of the service to select the attribute(s) to be identified as the cause of the conflict.
Use isDocFlavorSupported()
to verify that a DocFlavor
is supported before calling this method.
flavor
- Doc flavor to test, or nullattributes
- Set of printing attributes for a supposed job
(both job-level attributes and document-level
attributes), or null.public int hashCode()
equals(Object)
.
hashCode
in class Object
public boolean isAttributeCategorySupported(Class category)
Class
that implements interface {@link javax.print.attribute.Attribute
Attribute}. This method tells whether the attribute category is
supported; it does not tell whether a particular attribute value
is supported.
Some categories may not be supported in a particular context (ie
for a particular DocFlavor
).
Use one of the methods which include a DocFlavor
to
validate the request before submitting it, such as
getSupportedAttributeValues(..)
.
This is a convenience method to determine if the category
would be a member of the result of
getSupportedAttributeCategories()
.
category
- Printing attribute category to test. It must be a
Class
that implements
interface
{@link javax.print.attribute.Attribute Attribute}.true
if this print service supports
specifying a doc-level or
job-level attribute in category
in a Print
Request; false
if it doesn't.public boolean isAttributeValueSupported(Attribute attrval, DocFlavor flavor, AttributeSet attributes)
If flavor
is null and attributes
is null or
is an empty set, this method tells whether this Print Service supports
the given printing attribute value for some possible combination of doc
flavor and set of attributes. If flavor
is not null or
attributes
is not an empty set, this method tells whether
this Print Service supports the given printing attribute value in
combination with the given doc flavor and/or set of attributes.
Also if DocFlavor is not null it must be a flavor supported by this PrintService, else IllegalArgumentException will be thrown.
DocAttribute
s which are to be specified on the
Doc
must be included in this set to accurately
represent the context.
This is a convenience method to determine if the value
would be a member of the result of
getSupportedAttributeValues(...)
.
attrval
- Printing attribute value to test.flavor
- Doc flavor for a supposed job, or null.attributes
- Set of printing attributes for a supposed job
(both job-level attributes and document-level
attributes), or null.attrval
as a doc-level or job-level attribute in a
Print Request, false if it doesn't.public boolean isDocFlavorSupported(DocFlavor flavor)
DocFlavor
. This is a convenience method to determine
if the DocFlavor
would be a member of the result of
getSupportedDocFlavors()
.
Note that some doc flavors may not be supported in combination
with all attributes. Use getUnsupportedAttributes(..)
to validate specific combinations.
flavor
- the DocFlavor
to query for support.true
if this print service supports the
specified DocFlavor
; false
otherwise.public void removePrintServiceAttributeListener(PrintServiceAttributeListener listener)
PrintService
events.
listener
- a PrintServiceAttributeListener object
| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |