Parts of the server
- Command processor
- The command processor is the interface to all the clients and the submission daemons.
Clients and submission daemons consist of the command line or InfoPrint Manager clients and submission daemons (such as the GUI, Select, Submit Express, or IPP Gateway),
which use an internal, proprietary, object-oriented API (OOAPI). The command processor
parses and analyzes requests from clients and daemons in a specific language, locates
the pdserver owning the target object of the request, and sends the request (using
an internal platform-independent protocol) to the pdserver containing the object.
It then waits for the results and returns formatted results to the requester in their
language. The command processor owns the copy of all print files for jobs submitted
to it for any logical or actual destination in the system. If the actual destination
processing the job cannot directly access the command processor's copy of the print
file, the command processor
provides the print file upon request to the pdserver containing the actual destination.
It also does automatic data stream determination and owns the local to global ID mapping
table. The local to global job id mapping tables allow users to refer to their jobs
by 1, 2, or 3 instead of
serverName:123450000. Each user can have a job 1. The command processor also manages and dispatches GUI events to all operator and administrator GUIs connected to it.
- The spooler provides the job management function. It owns and manages print jobs
(not print files) including their creation and validation. It makes sure jobs are
scheduled for printing to an appropriate actual destination based on the actual destination's
scheduling algorithm and attributes. It holds retained jobs for possible reprint.
And it sends notification for events that occur in the spooler to end users and to
the command processor for dispatch to GUIs.
The spooler part of the pdserver contains jobs and document objects that represent the jobs to be printed; logical destination objects that are the front end to a queue; initial value job and initial value document objects that provide the defaulting for the job and document attributes; queue objects that handle the scheduling of jobs to actual destinations; and proxy actual destination objects that represent an actual destination object in some supervisor part of a pdserver. The actual destination could be in either the same pdserver or a different pdserver than the pdserver containing the proxy actual destination.
- The supervisor provides printer management. It manages the actual destinations that
handle the actual printing of the print job, and it sends notification for events
that occur in the supervisor to end users and GUIs.
The supervisor part of the pdserver contains actual destination objects that represent printing, or email devices, auxiliary sheet objects that represent start, separator, and end sheets, medium objects that represent the material on which printing occurs, resource context objects that represent the location of some printing resources, and transform objects that represent transforms (and other programs that act on the print data). It also contains proxy job and document objects that represent the job and documents that have been scheduled to it to be processed and printed.
- Not all of these objects are used by every type of DSS.
- The transform objects should not be confused with the automatic transforms used by the PSF DSS. See Print jobs and print files for more information.
- A pdserver
- In summary, it is important to understand that these are logical distinctions and remember that any server can play any combination of these roles.