--- /dev/null
+/*******************************************
+ * SXSIStorageInterface.cpp
+ * ------------------------
+ *
+ *
+ * Author: Kim Nguyen
+ * Date: 04/11/08
+ */
+
+
+#include "SXSIStorageInterface.h"
+#include "Utils.h"
+
+
+SXSIStorageInterface::SXSIStorageInterface()
+{
+ tree = new XMLTree();
+ tree->OpenDocument(true,1);
+}
+
+SXSIStorageInterface::~SXSIStorageInterface()
+{
+}
+
+void SXSIStorageInterface::newChild(string name)
+{
+
+ DPRINT("enter NewChild" << name << "\n")
+ tree->NewOpenTag((unsigned char*) name.c_str());
+ DPRINT("leave NewChild" << name << "\n")
+}
+
+
+void SXSIStorageInterface::newText(string text)
+{
+ DPRINT("enter NewText" << text << "\n")
+ if (text.empty())
+ tree->NewEmptyText();
+ else
+ tree->NewText((unsigned char*) text.c_str());
+ DPRINT("leave NewText" << text << "\n")
+}
+
+
+
+void SXSIStorageInterface::nodeFinished(string name)
+{
+ DPRINT("enter NodeFinished" << name << "\n")
+ tree->NewClosingTag((unsigned char*) name.c_str());
+ DPRINT("leave NodeFinished" << name << "\n")
+}
+
+ void SXSIStorageInterface::parsingFinished()
+{
+ DPRINT("enter parsingFinished\n")
+ tree->CloseDocument();
+ DPRINT("leave parsingFinished\n")
+
+}
+
+void *SXSIStorageInterface::returnDocument(){
+
+ return ((void *) tree);
+
+}
--- /dev/null
+/*****************************************
+ * SXSIStorageInterface.h
+ * ------------------------
+ * Header file for an SXSI Storage Interface
+ *
+ * Author: Kim Nguyen
+ * Date: 25/11/08
+ */
+
+#ifndef SXSISTORAGEINTERFACE_H_
+#define SXSISTORAGEINTERFACE_H_
+
+#include "XMLTree.h"
+#include "StorageInterface.h"
+
+
+using namespace std;
+
+class SXSIStorageInterface: public StorageInterface
+{
+ public:
+ SXSIStorageInterface();
+ virtual ~SXSIStorageInterface();
+ virtual void newChild(string name);
+ virtual void newText(string text);
+ virtual void nodeFinished(string name);
+ virtual void parsingFinished();
+ virtual void* returnDocument();
+
+ private:
+ XMLTree* tree;
+};
+
+#endif /*SXSISTORAGEINTERFACE_H_*/