XSPOOL

Top  Previous  Next

XSPOOL is a software for print files management. The organization of these files is based on a repository, one for each instance of XSPOOL, that contains all the print files, catalogued for groups and users and characterized by some accessory information as, for example, creation date, sysout id, job name, etc.

Print files are added to repository through the XSPOOL batch interface by external applications (i.e. scripts that launch print programs).

The graphic interface of XSPOOL allows to display and manage all print files using any web browser.

Every user who has access to an XSPOOL repository can:

display the list of printouts
display and search the contents of the single printout
change the printing parameters of the printout
duplicate the printouts
delete printouts in temporary or definitive mode
recover printouts previously deleted in temporary mode
print objects (entire or single pages)

Printing sub-system

XSPOOL prints the files via the lpd sub-system. This means that XSPOOL does not interface directly the printers, but it issues an "lp" commands to deliver the file to print to the lpd sub-system.

The printing can be executed:

from the web application
directly from the scripts, with xspooladd

When the printing file is put in the repository (with xspooladd), XSPOOL reads xspool.conf configuration file and looks for the settings defined for the user and gets all the printing information to store file and its printing characteristics in the repository. Of course, as described in the following chapters, the information retrieved from the configuration file, may be overridden by the xspooladd options.

When the printout of the file is requested, XSPOOL maps accordingly to its configuration, the printing characteristics of the file into the corresponding "lp" options, executes the "lp" command and analyzes its response.

A practical example.

User "foo" has priority "A" and print class "CL01". He adds to the repository the file "JOB00.130.IGN.lst" using xspooladd: the file is stored with class CL01 and priority A.

[User]
    id = foo
    isAdmin = yes
    class = CL01
    priority = A
    form = FA
    cmds = cmd01 cmd02 cmd03

When foo requests the printout of the file, XSPOOL searches the file's class (CL01) and priority (A) in the XSPOOL configuration, and determines the corresponding "lp" parameters:

[Class]
    id = CL01
    value = lpDev01
    description = printer 01

[Priority]
    id = A
    value = 0
    description = low

In the example above the XSPOOL class "CL01" is bind to the lp printer class "lpDev01" and the priority "A" is bind to the lp priority "0". Therefore XSPOOL composes and executes the following command (i.e. on IBM AIX 5.3):

lp -q 0 -d lpDev01 $HOME/spool/groupa/foo/queue/JOB00.130.20060505.013322.CL01.A.2.B.df.lst

Requirements

XSPOOL requires on the server side the following software

Jakarta Tomcat 4.1.12
Java 1.4.0 or higher
Perl 5.6

On the client side only a standard web browser is required (Microsoft Internet Explorer 6.0 or higher, Netscape Navigator 6.0 or higher)