Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  WEBSERVICE::ISBNDB::AGENT::REST (3)

.ds Aq ’


WebService::ISBNDB::Agent::REST - Agent sub-class for the REST protocol



This module should not be directly used by user applications.


This module implements the REST-based communication protocol for getting data from the <B>isbndb.comB> service. At present, this is the only protocol the service supports.


This class provides the following methods, most of which are restricted to this class and any sub-classes of it that may be written:
parse_authors($ROOT) (R)
parse_books($ROOT) (R)
parse_categories($ROOT) (R)
parse_publishers($ROOT) (R)
parse_subjects($ROOT) (R) Each of these parses the XML response for the corresponding API call. The $ROOT parameter is a <B>XML::LibXML::NodeB> object, obtained from parsing the XML returned by the service.

Each of these returns a list-reference of objects, even when there is only one result value. All of these methods are restricted to this class and its decendants.

request($OBJ, $ARGS) (R) Use the <B>LWP::UserAgentB> object to make a request on the remote service. $OBJ indicates what type of data request is being made, and $ARGS is a hash-reference of arguments to be passed in the request. The return value is an object of the <B>WebService::ISBNDB::IteratorB> class.

This method is restricted to this class, and is the required overload of the request() method from the parent class (WebService::ISBNDB::Agent).

request_method($OBJ, $ARGS) Returns the HTTP method (GET, POST, etc.) to use when making the request. The $OBJ and $ARGS parameters may be used to determine the method (in the case of this protocol, they are ignored since <B>GETB> is always the chosen HTTP method).
request_uri($OBJ, $ARGS) Returns the complete HTTP URI to use in making the request. $OBJ is used to derive the type of data being fetched, and thus the base URI to use. The key/value pairs in the hash-reference provided by $ARGS are used in the REST protocol to set the query parameters that govern the request.
protocol([$TESTVAL]) With no arguments, returns the name of this protocol as a simple string. If an argument is passed, it is tested against the protocol name to see if it is a match, returning a true or false value as appropriate.
The class also implements a constructor method, which is needed to co-operate with the parent class under <B>Class::StdB> structure. You should generally not have to call the constructor directly:
new([$ARGS]) Calls into the parent constructor with any arguments passed in.


The data returned by this class is only as accurate as the data retrieved from <B>isbndb.comB>.

The list of results from calling search() is currently limited to 10 items. This limit will be removed in an upcoming release, when iterators are implemented.


WebService::ISBNDB::Agent, WebService::ISBNDB::Iterator, LWP::UserAgent


Randy J. Ray <>


This module and the code within are released under the terms of the Artistic License 2.0 ( This code may be redistributed under either the Artistic License or the GNU Lesser General Public License (LGPL) version 2.1 (
Search for    or go to Top of page |  Section 3 |  Main Index

perl v5.20.3 WEBSERVICE::ISBNDB::AGENT::REST (3) 2016-04-03

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.