aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Hoa V. DINH <dinh.viet.hoa@gmail.com>2016-05-15 13:49:46 -0700
committerGravatar Hoa V. DINH <dinh.viet.hoa@gmail.com>2016-05-15 13:49:46 -0700
commit53d88470a08f829f5d141219a50f62c37cee4660 (patch)
tree24e2371946cbef30dbbeeb9ceb818b9083167a48
parent01682b00eaa8e59c7b645ac99e46106d6136bfab (diff)
namespace is serializable
-rw-r--r--src/core/imap/MCIMAPNamespace.cpp11
-rw-r--r--src/core/imap/MCIMAPNamespaceItem.cpp12
2 files changed, 23 insertions, 0 deletions
diff --git a/src/core/imap/MCIMAPNamespace.cpp b/src/core/imap/MCIMAPNamespace.cpp
index d5c618a0..e98dcba6 100644
--- a/src/core/imap/MCIMAPNamespace.cpp
+++ b/src/core/imap/MCIMAPNamespace.cpp
@@ -1,5 +1,6 @@
#include "MCIMAPNamespace.h"
+#include "MCDefines.h"
#include "MCIMAPNamespaceItem.h"
#include <libetpan/libetpan.h>
@@ -155,3 +156,13 @@ void IMAPNamespace::importSerializable(HashMap * serializable)
Array * items = (Array *) Object::objectWithSerializable((HashMap *) serializable->objectForKey(MCSTR("items")));
MC_SAFE_REPLACE_RETAIN(Array, mItems, items);
}
+
+static void * createObject()
+{
+ return new IMAPNamespace();
+}
+
+INITIALIZE(IMAPNamespace)
+{
+ Object::registerObjectConstructor("mailcore::IMAPNamespace", &createObject);
+}
diff --git a/src/core/imap/MCIMAPNamespaceItem.cpp b/src/core/imap/MCIMAPNamespaceItem.cpp
index c8561c50..9a1992ff 100644
--- a/src/core/imap/MCIMAPNamespaceItem.cpp
+++ b/src/core/imap/MCIMAPNamespaceItem.cpp
@@ -2,6 +2,8 @@
#include <libetpan/libetpan.h>
+#include "MCDefines.h"
+
using namespace mailcore;
static Array * encodedComponents(Array * components);
@@ -170,3 +172,13 @@ void IMAPNamespaceItem::importSerializable(HashMap * serializable)
setDelimiter((char) delimiterString->characterAtIndex(0));
}
}
+
+static void * createObject()
+{
+ return new IMAPNamespaceItem();
+}
+
+INITIALIZE(IMAPNamespaceItem)
+{
+ Object::registerObjectConstructor("mailcore::IMAPNamespaceItem", &createObject);
+}