25 #ifndef _MUSICBRAINZ4_ENTITY_H 26 #define _MUSICBRAINZ4_ENTITY_H 33 #include "musicbrainz4/xmlParser.h" 39 class CRelationListList;
51 void Parse(
const XMLNode& Node);
54 std::map<std::string,std::string>
ExtElements()
const;
56 virtual std::ostream&
Serialise(std::ostream& os)
const;
73 os << (
const char *)Node.getText();
78 std::cerr <<
"Error parsing value '";
80 std::cerr << Node.getText();
81 std::cerr <<
"'" << std::endl;
94 std::cerr <<
"Error parsing value '" << Text <<
"'" << std::endl;
101 RetVal=Node.getText();
104 virtual void ParseAttribute(
const std::string& Name,
const std::string& Value)=0;
std::map< std::string, std::string > ExtAttributes() const
void ProcessItem(const std::string &Text, T &RetVal)
Definition: Entity.h:86
void ProcessItem(const XMLNode &Node, std::string &RetVal)
Definition: Entity.h:98
void ProcessItem(const XMLNode &Node, T *&RetVal)
Definition: Entity.h:63
virtual void ParseAttribute(const std::string &Name, const std::string &Value)=0
virtual void ParseElement(const XMLNode &Node)=0
void ProcessItem(const XMLNode &Node, T &RetVal)
Definition: Entity.h:69
void Parse(const XMLNode &Node)
virtual CEntity * Clone()=0
std::map< std::string, std::string > ExtElements() const
static std::string GetElementName()
Definition: RelationListList.h:38
void ProcessRelationList(const XMLNode &Node, CRelationListList *&RetVal)
virtual std::ostream & Serialise(std::ostream &os) const
CEntity & operator=(const CEntity &Other)
std::ostream & operator<<(std::ostream &os, const MusicBrainz4::CEntity &Entity)