NAME
perfSONAR_PS::Client::Topology::XMLDB - A module that provides methods for interacting with a Topology MA database directly.
DESCRIPTION
This module allows one to interact with the Topology MA XMLDB Backend directly using a standard set of methods. interface. The API provided is identical to the API for interacting with the MAs via its Web Serviecs interface. Thus, a client written to read from or update a Topology MA can be easily modified to interact directly with its underlying database allowing more efficient interactions if required.
The module is to be treated as an object, where each instance of the object represents a connection to a single database. Each method may then be invoked on the object for the specific database.
SYNOPSIS
DETAILS
API
The API for perfSONAR_PS::Client::Topology::MA is rather simple and greatly resembles the messages types received by the server. It is also identical to the perfSONAR_PS::Client::Topology::SQL API allowing easy construction of programs that can interface via the MA server or directly with the database.
new($package, $uri_string)
The new function takes a URI connection string as its first argument. This
specifies which MA to interact with.
open($self)
The open function could be used to open a persistent connection to the MA.
However, currently, it is simply a stub function.
close($self)
The close function could close a persistent connection to the MA. However,
currently, it is simply a stub function.
setURIString($self, $uri_string)
The setURIString function changes the MA that the instance uses.
dbIsOpen($self)
This function is a stub function that always returns 1.
getURIString($)
The getURIString function returns the current URI string
getAll($self)
The getAll function gets the full contents of the database. It returns the
results as a ref to a LibXML element pointing to the <nmtopo:topology>
structure containing the contents of the database.
xQuery($self, $xquery)
The xQuery function performs an xquery on the specified database. It returns
the results as a string.
=head1 SEE ALSO
L<perfSONAR_PS::Client::Topology::MA>, L<Log::Log4perl>
To join the 'perfSONAR-PS' mailing list, please visit:
https://mail.internet2.edu/wws/info/i2-perfsonar
The perfSONAR-PS subversion repository is located at:
https://svn.internet2.edu/svn/perfSONAR-PS
Questions and comments can be directed to the author, or the mailing list.
=head1 VERSION
$Id$
=head1 AUTHOR
Aaron Brown, aaron@internet2.edu
=head1 LICENSE
You should have received a copy of the Internet2 Intellectual Property Framework along
with this software. If not, see <http://www.internet2.edu/membership/ip.html>
=head1 COPYRIGHT
Copyright (c) 2004-2007, Internet2 and the University of Delaware
All rights reserved.
=cut
# vim: expandtab shiftwidth=4 tabstop=4