perfSONAR_PS::Topology::Common - A module that provides various utility functions for Topology structures.
This module contains a set of utility functions that are used to interact with Topology structures.
Takes two LibXML nodes containing structures and merges them together. The $attrs variable is a pointer to a hash describing which attributes on a node should be compared to define equality. To have links compared based on their 'id' attribute, you would specify $attrs as such: my %attrs = ( link => ( id => '' ); );
Take a domain, a node and its fqid and replaces any children that are "IdRef'd" to the node with the actual node.
Take a node, a port and its fqid and replaces any children that are "IdRef'd" to the port with the actual port.
Take a port, a link and its fqid and replaces any children that are "IdRef'd" to the link with the actual link.
Takes a topology structure and normalizes it into "domain/node/port/link" format. If a stray node/port/link is found, it is moved up to the top-level if it's not already there.
Returns the set of prefix/uri mappings for Topology in a hash table.
Does some basic validation of the specified domain.$domain_ids is a pointer to a hash containing the set of domain ids. The function will add an entry for this domain to the hash.
Does some basic validation of the specified node. $node_ids is a pointer to a hash containing the set of node ids. The function will add an entry for this node to the hash. $parent is the FQ ID of the parent of this element. If the element has no parent, it is simply "".
Does some basic validation of the specified port. $port_ids is a pointer to a hash containing the set of port ids. The function will add an entry for this port to the hash. $parent is the FQ ID of the parent of this element. If the element has no parent, it is simply "".
Does some basic validation of the specified link. $link_ids is a pointer to a hash containing the set of link ids. The function will add an entry for this link to the hash. $parent is the FQ ID of the parent of this element. If the element has no parent, it is simply "". =head1 SEE ALSO 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, E<lt>aaron@internet2.eduE<gt> =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
To install perfSONAR_PS::Topology::Common, copy and paste the appropriate command in to your terminal.
cpanm
cpanm perfSONAR_PS::Topology::Common
CPAN shell
perl -MCPAN -e shell install perfSONAR_PS::Topology::Common
For more information on module installation, please visit the detailed CPAN module installation guide.