NodeData< NodeStatistics, NodeNetwork > Class Template Reference
[Fountain server]

Object to represent information for each node in a cluster. More...

#include <NodeData.h>

List of all members.

Public Member Functions

 NodeData (const std::string &myid)
 Constructor.
void appendInfo (XMLElementListPtr whereList, XMLElementListPtr getList, BambooLib::XMLElement *nodeXML) const
 Append this object's requested statistical information to the named XML element.

Private Member Functions

bool supportGetElement (XMLElementListPtr getList) const
 Test whether or not this object's policy classes supports the named get element.
bool satisfiesWhereElement (XMLElementListPtr whereList) const
 Check if the NodeStatistics or NodeNetwork policy classes support the list of Where elements.


Detailed Description

template<class NodeStatistics, class NodeNetwork = FountainNodes::Network>
class NodeData< NodeStatistics, NodeNetwork >

Object to represent information for each node in a cluster.

This class prescribes a Node Statistics and Node Network policy class. They both require the following interface:

Each NodeData object is intended to be held in a container that is maintained by the Fountain server. A NodeData object is created in one of three ways:

  1. when the Fountain server first receives a query response message from the master Fountain node containing a new NodeID not in the Fountain server's node monitor database.
  2. when the Fountain server parses the nodelist file
  3. when the Fountain server creates a ServerData object and it discovers its resource


Constructor & Destructor Documentation

template<class NodeStatistics, class NodeNetwork = FountainNodes::Network>
NodeData< NodeStatistics, NodeNetwork >::NodeData const std::string &  myid  )  [inline, explicit]
 

Constructor.

Parameters:
[in] myid Unique string identifying this node


Member Function Documentation

template<class NodeStatistics, class NodeNetwork = FountainNodes::Network>
void NodeData< NodeStatistics, NodeNetwork >::appendInfo XMLElementListPtr  whereList,
XMLElementListPtr  getList,
BambooLib::XMLElement nodeXML
const [inline]
 

Append this object's requested statistical information to the named XML element.

Parameters:
[in] whereList The list of Where elements
[in] getList The requested statistics
[in] nodeXML The XML element to append the statistics to

template<class NodeStatistics, class NodeNetwork = FountainNodes::Network>
bool NodeData< NodeStatistics, NodeNetwork >::satisfiesWhereElement XMLElementListPtr  whereList  )  const [inline, private]
 

Check if the NodeStatistics or NodeNetwork policy classes support the list of Where elements.

Return values:
bool true if all of the Where elements are supported, false otherwise
Exceptions:
FountainException if one of the Where elements is malformed

template<class NodeStatistics, class NodeNetwork = FountainNodes::Network>
bool NodeData< NodeStatistics, NodeNetwork >::supportGetElement XMLElementListPtr  getList  )  const [inline, private]
 

Test whether or not this object's policy classes supports the named get element.

Parameters:
[in] getList The list of Get elements
Return values:
bool true if the get element is supported, false otherwise


The documentation for this class was generated from the following file:
Generated on Wed Mar 8 14:43:33 2006 for Fountain by  doxygen 1.4.6