28 "Could not find any dependees for a dependency!"
29 <<std::endl <<std::endl);
33 "Could not find any dependents for a dependency!"
34 <<std::endl <<std::endl);
45 "Can't find a Dependee ParameterEntry associated with the ID: " <<
46 dependeeID << std::endl << std::endl);
47 dependees.insert(entryIDsMap.find(dependeeID)->second);
56 "Can't find a Dependent ParameterEntry associated with the ID: " <<
57 dependentID << std::endl << std::endl);
58 dependents.insert(entryIDsMap.find(dependentID)->second);
63 xmlObj, dependees, dependents, entryIDsMap, validatorIDsMap);
75 dependency->getTypeAttributeValue());
77 Dependency::ConstParameterEntryList::const_iterator it =
78 dependency->getDependees().begin();
80 for(;it != dependency->getDependees().end(); ++it){
84 "Can't find the Dependee of a dependency in the given " <<
85 "EntryIDsMap. Occurred when converting " <<
86 "to XML" << std::endl << std::endl);
92 it = dependency->getDependents().begin();
93 for(; it != dependency->getDependents().end(); ++it){
97 "Can't find the Dependent of a dependency in the given " <<
98 "ValidatordIDsMap. Occurred when converting " <<
99 "to XML" << std::endl << std::endl);
102 toReturn.
addChild(currentDependent);
virtual RCP< Dependency > convertXML(const XMLObject &xmlObj, const Dependency::ConstParameterEntryList dependees, const Dependency::ParameterEntryList dependets, const XMLParameterListReader::EntryIDsMap &entryIDsMap, const IDtoValidatorMap &validatorIDsMap) const =0
Preforms any and all special xml conversion that is specific to a particular Dependency.
RCP< Dependency > fromXMLtoDependency(const XMLObject &xmlObj, const XMLParameterListReader::EntryIDsMap &entryIDsMap, const IDtoValidatorMap &validatorIDsMap) const
Converts a given XMLObject to a Dependency.
Thrown when no dependes of a dependency can't be found when converting the dependency to or from XML...
const std::string & getTag() const
Return the tag of the current node.
Maps Validators to integers.
std::set< RCP< const ParameterEntry >, RCPConstComp > ConstParameterEntryList
A list of dependents.
static const std::string & getTypeAttributeName()
Returns the string to be used for the type attribute.
std::set< RCP< ParameterEntry >, RCPComp > ParameterEntryList
A list of Dependees.
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Macro for throwing an exception with breakpointing to ease debugging.
static const std::string & getDependeeTagName()
Returns the string to be used for the dependee tag.
void addChild(const XMLObject &child)
Add a child node to the node.
Thrown when a dependent of a dependency cant be found when converting the dependency to or from XML...
Thrown when no dependents of a dependency are specified when converting the dependency from XML...
Representation of an XML data tree. XMLObject is a ref-counted handle to a XMLObjectImplem object...
A collection of Exceptions thrown when converting Dependencys to and from XML.
std::map< RCP< const ParameterEntry >, ParameterEntry::ParameterEntryID, RCPConstComp > EntryIDsMap
static const std::string & getXMLTagName()
Returns the XML tag to use when serializing Dependencies.
static const std::string & getParameterIdAttributeName()
Returns the string to be used for the ParameterID attribute.
static const std::string & getDependentTagName()
Returns the string to be used for the dependent tag.
A class for mapping validators to integers.
void addAttribute(const std::string &name, T value)
Lookup whether or not Doubles are allowed.
virtual void convertDependency(const RCP< const Dependency > dependency, XMLObject &xmlObj, const XMLParameterListWriter::EntryIDsMap &entryIDsMap, ValidatortoIDMap &validatorIDsMap) const =0
Preforms any and all special dependency conversion that is specific to a particlar Dependency...
unsigned int ParameterEntryID
Converts back and forth between XML and Dependencies.
std::map< ParameterEntry::ParameterEntryID, RCP< ParameterEntry > > EntryIDsMap
Convenience typedef.
XMLObject fromDependencytoXML(const RCP< const Dependency > dependency, const XMLParameterListWriter::EntryIDsMap &entryIDsMap, ValidatortoIDMap &validatorIDsMap) const
Converters a given ParameterEntryValidator to XML.
int numChildren() const
Return the number of child nodes owned by this node.
Smart reference counting pointer class for automatic garbage collection.
int findFirstChild(std::string tagName) const
Returns the index of the first child found with the given tag name. Returns -1 if no child is found...
const XMLObject & getChild(int i) const
Return the i-th child node.
const std::string & getRequired(const std::string &name) const
Get an attribute, throwing an std::exception if it is not found.
Thrown when no dependess of a dependency are specified when converting the dependency from XML...