NAME
PPM::SOAPClient - SOAP client for PPM repository
SYNOPSIS
use PPM::SOAPClient;
...
my $client = new PPM::SOAPClient;
my @results = $client->search( 'sarathy' );
DESCRIPTION
PPM::SOAPClient
implements a SOAP client to be used to access a PPM repository through a SOAP interface. All of the functionality for making and parsing the SOAP request is handled internally; simply access the provided methods and you'll be returned a data structure containing the actual response.
METHODS
- new ($server)
-
Instantiates a new SOAP client, specifying the server that will be used for all later connections. '
$server
' should be provided as the URL to the SOAP server that we're going to connect to and make queries against.Note, that this method accepts both "http://" and "soap://" server URLs exactly the same way (we treat '
soap://
' URLs as standard HTTP URLs). - version ()
-
Gets the version number of the SOAP server that we're connected to. If we're unable to contact the server or its offline, this method returns '
undef
'. - searchAbstract ($search)
-
Searches within the '
ABSTRACT
' field within all of the packages held in the repository on the server. The value '$search
' may be a regex that will be used to match against the abstracts. If no value for '$search
' is provided, the server treats the search to be for '.*
' (everything). - searchAuthor ($search)
-
Searches within the '
AUTHOR
' field within all of the packages held in the repository on the server. The value '$search
' may be a regex that will be used to match against the authors. If no value of '$search
' is provided, the server treats the search to be for '.*
' (everything). - searchTitle ($search)
-
Searches within the '
title
' field within all of the packages held in the repository on the server. The value '$search
' may be a regex that will be used to match against the titles. If no value of '$search
' is provided, the server treats the search to be for '.*
' (everything). - search ($search)
-
Searches through all of the fields within all of the packages held in the repository on the server. The value '
$search
' may be a regex that will be used to match against the field values. If no value of '$search
' is provided, the server treats the search to be for '.*
' (everything). - packages ()
-
Generates a list of all of the packages currently available in the repository. The value returned to the caller is a list containing the names of all of the packages in the repository.
- fetch_ppd ($pkg)
-
Fetches the PPD associated with a given package. The full contents of the PPD are returned to the caller in XML format as a scalar value.
- fetch_summary ()
-
Fetches the full summary of all of the packages held in the repository. The full contents of the summary are returned to the caller in XML format as a scalar value.
- _makeSOAPRequest ($method, $search)
-
INTERNAL METHOD. Makes the SOAP request to the server, doing the bulk of the actual work for us.
AUTHOR
Graham TerMarsch (gtermars@home.com)