50 #ifndef _ComponentParser_H_
51 #define _ComponentParser_H_
55 #include "IComponentParser.h"
57 #include "system/compat/SystemCompat.h"
58 using namespace ::br::pucrio::telemidia::ginga::core::system::compat;
73 map<string, IComponent*>* components;
74 map<string, IComponent*>* symbols;
75 map<string, set<string>*>* parentObjects;
76 map<string, set<string>*>* dependenciesToAdd;
82 void parse(
string xmlDocument);
86 static void startElementHandler(
88 const XML_Char* element,
const XML_Char** attrs);
90 static void stopElementHandler(
void* data,
const XML_Char* element);
92 static void parseComponent(
void* data,
const XML_Char** attrs);
93 void addComponent(
string name,
IComponent* component);
95 static void parseDependency(
void* data,
const XML_Char** attrs);
97 static void parseSymbol(
void* data,
const XML_Char** attrs);
98 void addChild(
string parent,
string childObject);
99 void addObject(
string object,
IComponent* component);
101 static void parseLocation(
void* data,
const XML_Char** attrs);
102 static void parseRepository(
void* data,
const XML_Char** attrs);
107 map<string, IComponent*>* getComponents();
108 map<string, IComponent*>* getSymbols();
109 map<string, set<string>*>* getParentObjects();
110 map<string, set<string>*>* getUnsolvedDependencies();
111 void solveDependencies();
120 #endif //_ComponentParser_H_
Definition: IComponentParser.h:66
Definition: ComponentParser.h:71
Definition: IComponent.h:64