conduit r1541 - in trunk: . conduit/modules
- From: johncarr svn gnome org
- To: svn-commits-list gnome org
- Subject: conduit r1541 - in trunk: . conduit/modules
- Date: Tue, 15 Jul 2008 09:15:44 +0000 (UTC)
Author: johncarr
Date: Tue Jul 15 09:15:44 2008
New Revision: 1541
URL: http://svn.gnome.org/viewvc/conduit?rev=1541&view=rev
Log:
Start synce to vcard converter
Modified:
trunk/ (props changed)
trunk/conduit/modules/SynceModule.py
Modified: trunk/conduit/modules/SynceModule.py
==============================================================================
--- trunk/conduit/modules/SynceModule.py (original)
+++ trunk/conduit/modules/SynceModule.py Tue Jul 15 09:15:44 2008
@@ -4,8 +4,11 @@
import conduit.dataproviders.DataProviderCategory as DataProviderCategory
import conduit.dataproviders.HalFactory as HalFactory
import conduit.datatypes.Note as Note
+import conduit.datatypes.Contact as Contact
import conduit.Exceptions as Exceptions
+import xml.dom.minidom
+
import logging
log = logging.getLogger("modules.SynCE")
@@ -211,12 +214,58 @@
_name_ = "Contacts"
_description_ = "Windows Mobile Contacts"
_module_type_ = "twoway"
- _in_type_ = "note"
- _out_type_ = "note"
+ _in_type_ = "contact"
+ _out_type_ = "contact"
_icon_ = "contact-new"
_type_id_ = SYNC_ITEM_CONTACTS
_configurable_ = False
+ def _blob_to_data(self, uid, blob):
+ parser = xml.dom.minidom.parseString(blob)
+ root = parser.getElementsByTagName("contact")[0]
+
+ c = Contact.Contact()
+ c.set_UID(uid)
+
+ for node in root.childNodes:
+ if node.nodeName == "FileAs":
+ pass
+ elif node.nodeName == "FormattedName":
+ pass
+ elif node.nodeName == "Name":
+ pass
+ elif node.nodeName == "Nickname":
+ pass
+ elif node.nodeName == "Photo":
+ pass
+ elif node.nodeName == "Categories":
+ pass
+ elif node.nodeName == "Assistant":
+ pass
+ elif node.nodeName == "Manager":
+ pass
+ elif node.nodeName == "Organization":
+ pass
+ elif node.nodeName == "Spouse":
+ pass
+ elif node.nodeName == "Telephone":
+ pass
+ elif node.nodeName == "Title":
+ pass
+ elif node.nodeName == "Url":
+ pass
+ elif node.nodeName == "Uid":
+ pass
+ elif node.nodeName == "Revision":
+ pass
+ else:
+ log.warning("Unhandled node: %s" % node.nodeName)
+
+ return c
+
+ def _data_to_blob(self, data):
+ pass
+
class SynceCalendarTwoWay(SynceTwoWay):
_name_ = "Calendar"
_description_ = "Windows Mobile Calendar"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]