summaryrefslogtreecommitdiff
path: root/ParserClass/FileManParser.hpp
diff options
context:
space:
mode:
authormanzerbredes <loic.guegan_secondary@yahoo.fr>2015-03-14 18:44:05 +0400
committermanzerbredes <loic.guegan_secondary@yahoo.fr>2015-03-14 18:44:05 +0400
commit1f12bca33f6e9ce20181a9d09f62286d11592712 (patch)
tree5d9bcf35296f64735ea849084a94c2eb20c74f4f /ParserClass/FileManParser.hpp
parent9b99763c2ed924e340c7dbf73842207ba56ed125 (diff)
Make basic parser
Diffstat (limited to 'ParserClass/FileManParser.hpp')
-rw-r--r--ParserClass/FileManParser.hpp50
1 files changed, 32 insertions, 18 deletions
diff --git a/ParserClass/FileManParser.hpp b/ParserClass/FileManParser.hpp
index 6a977db..5c64708 100644
--- a/ParserClass/FileManParser.hpp
+++ b/ParserClass/FileManParser.hpp
@@ -8,23 +8,20 @@
*
*/
+
//----- std -----
#include <iostream>
+#include <sstream>
#include <string>
#include <vector>
//----- class -----
#include "Website.hpp"
-#include "FileManContainer.hpp"
-//----- xerces -----
-#include <xercesc/parsers/XercesDOMParser.hpp>
-#include <xercesc/dom/DOM.hpp>
-#include <xercesc/framework/MemBufInputSource.hpp>
-#include <xercesc/sax/HandlerBase.hpp>
-#include <xercesc/util/XMLString.hpp>
-#include <xercesc/util/PlatformUtils.hpp>
-#include <xercesc/util/XercesDefs.hpp>
+//----- libxml++ -----
+#include <cstdlib>
+#include <libxml++/libxml++.h>
+
@@ -32,27 +29,44 @@ class FileManParser{
public:
+
+ //Constructor
FileManParser(std::string data);
+ //Get document in string
+ std::string getDocument();
+
+
+ //Get container vector pointer:
+ std::vector<Website>* getWebsites();
- FileManContainer getContainer();
- void initWebsites();
- std::string getData();
+ //Apply change that have made on container
+ void updateParser();
- xercesc::DOMElement* getChildByTagName(xercesc::DOMElement* node, std::string TagName);
- std::string getContentOfChild(xercesc::DOMElement* node,std::string TagName);
private:
- xercesc::DOMDocument* document; ///< contain the document
- xercesc::DOMElement* root;
+ //Instaciate all website container
+ void initWebsites();
+
+
+ //Parser attributes
+ std::stringstream dataStream;
+ xmlpp::DomParser parser;
+
+
+
+ //Document attributes
+ xmlpp::Document* document;
+ xmlpp::Node* rootNode;
- FileManContainer container; ///< contain all container
- std::string data; ///< contain data to parse
+ //Website attributes
+ xmlpp::Node* websitesNode;
+ std::vector<Website> *websites;
};