NAME Server.pm

Clearquest Server - Provide access to Clearquest database

VERSION

Author

Andrew DeFaria <Andrew@DeFaria.com>

Revision

$Revision: 2.6 $

Created

Monday, October 10, 2011 5:02:07 PM PDT

Modified

2013/03/14 23:13:33

SYNOPSIS

Provides an interface to the Clearquest database over the network.

This library implements both the daemon portion of the server and the client API.

DESCRIPTION

The server allows both read and write access to a Clearquest database as defined in cq.conf file. Note the username/password must be of a user who can write to the Clearquest database for write access to succeed.

A hash is passed into to the execute method, which the client should use to talk to the server, that describes relatively simple protocol to tell the server what action to perform. In both the read case and the read/write case a field named id should be defined that has a value of "<record>=<id>" (e.g. "defect=BUGDB00034429").

For the read case the rest of the keys are the names of the fields to retrieve with values that are undef'ed. For read/write, the rest of hash contains name value pairs of fields to set and their values.

Execute returns a status and a hash of name value pairs for the read case and an array of lines for any error messages for the read/write case.

ROUTINES

The following methods are available:

new (;%)

Create a new server object

Parameters:

%parms

Configuration parameters

Returns:

$self

The new object

startServer ()

Start the server loop

Parameters:

nothing

Returns:

nothing

CONFIGURATION AND ENVIRONMENT

DEBUG: If set then $debug is set to this level.

VERBOSE: If set then $verbose is set to this level.

TRACE: If set then $trace is set to this level.

DEPENDENCIES

Perl Modules

Carp

File::Basename

FindBin

IO::Socket

Net::hostent

POSIX

BUGS AND LIMITATIONS

There are no known bugs in this module.

Please report problems to Andrew DeFaria <Andrew@DeFaria.com>.

LICENSE AND COPYRIGHT

Copyright (C) 2007-2026 Andrew DeFaria <Andrew@DeFaria.com>

This program is free software; you can redistribute it and/or modify it under the terms of the the Artistic License (2.0). You may obtain a copy of the full license at:

http://www.perlfoundation.org/artistic_license_2_0

Any use, modification, and distribution of the Standard or Modified Versions is governed by this Artistic License. By using, modifying or distributing the Package, you accept this license. Do not use, modify, or distribute the Package, if you do not accept this license.

If your Modified Version has been derived from a Modified Version made by someone else, you are strictly prohibited from removing any copyright notice from that Modified Version.

Copyright Holder makes no, and expressly disclaims any, representation or warranty, should the Package be used for any purpose. The liability of the Copyright Holder is limited to the maximum extent permitted by law.