Dave Cross: Still Munging Data With Perl: Online event - Mar 17 Learn more

NAME

perfSONAR_PS::Datatypes::v2_0::pingertopo::Topology::Domain::Node - A base class, implements 'node' element from the perfSONAR_PS RelaxNG schema

DESCRIPTION

Object representation of the node element.
Object fields are:
Scalar: metadataIdRef,
Scalar: id,
Object reference: name => type HASH,
Object reference: hostName => type HASH,
Object reference: description => type HASH,
Object reference: location => type HASH,
Object reference: contact => type HASH,
Object reference: parameters => type HASH,
Object reference: port => type HASH,
The constructor accepts only single parameter, it could be a hashref to parameters hash or DOM with 'node' element

SYNOPSIS

my $el = perfSONAR_PS::Datatypes::v2_0::pingertopo::Topology::Domain::Node->new($DOM_Obj);

METHODS

new( )

creates object, accepts DOM with element tree or hashref to the list of
keyd parameters
metadataIdRef => undef,
id => undef,
name => HASH,
hostName => HASH,
description => HASH,
location => HASH,
contact => HASH,
parameters => HASH,
port => HASH,

getDOM ($)

accept parent DOM
return node object DOM, generated from object contents

querySQL ()

depending on config it will return some hash ref to the initialized fields
for example querySQL ()
accepts one optional prameter - query hashref
will return:
{ ip_name_src => 'hepnrc1.hep.net' },}

merge

merge with another node ( append + overwrite if exists )
we can do it differently
method #1:
convert to dom both objects and then get resulted object from combined dom
method #2 default:
through the introspection of the object

buildIdMap()

if any of subelements has id then get a map of it in form of
hashref to { element}{id} = index in array and store in the idmap field

buildrefIdMap ()

if any of subelements has metadataIdRef then get a map of it in form of
hashref to { element}{ metadataIdRef } = index in array and store in the idmap field

asString()

shortcut to get DOM and convert into the XML string
returns XML string representation of the node object

registerNamespaces ()

will parse all subelements and register all namepspaces within the node namespace

fromDOM ($)

accepts parent XML DOM element tree as parameter
returns node object

AUTHORS

Maxim Grigoriev (FNAL) 2007-2008, maxim@fnal.gov