From: <svn...@op...> - 2009-10-22 07:32:44
|
Author: henrik Date: Thu Oct 22 09:32:35 2009 New Revision: 5882 URL: http://www.opensync.org/changeset/5882 Log: Mozilla has static capabilities, so now we store the capabilities in a static xml file instead of generating them on the fly Added: plugins/mozilla-sync/trunk/src/mozilla-sync-caps.xml plugins/mozilla-sync/trunk/src/mozilla-sync-desc.xml Modified: plugins/mozilla-sync/trunk/src/CMakeLists.txt plugins/mozilla-sync/trunk/src/mozilla-sync.cpp Modified: plugins/mozilla-sync/trunk/src/CMakeLists.txt ============================================================================== --- plugins/mozilla-sync/trunk/src/CMakeLists.txt Thu Oct 22 09:28:34 2009 (r5881) +++ plugins/mozilla-sync/trunk/src/CMakeLists.txt Thu Oct 22 09:32:35 2009 (r5882) @@ -4,7 +4,7 @@ # See http://www.KaarPoSoft.dk/bluezync/ # $Id$ # -# Copyright (C) 2007 Henrik Kaare Poulsen /KaarPoSoft +# Copyright (C) 2007-2009 Henrik Kaare Poulsen /KaarPoSoft # # This plugin is free software: you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as published by @@ -74,6 +74,9 @@ ###### PLUGIN ################### +OPENSYNC_PLUGIN_DESCRIPTIONS( mozilla-sync-desc.xml ) +OPENSYNC_PLUGIN_CAPABILITIES( mozilla-sync-caps.xml ) + OPENSYNC_PLUGIN_CONFIG( mozilla-sync ) OPENSYNC_PLUGIN_INSTALL( mozilla-sync ) Added: plugins/mozilla-sync/trunk/src/mozilla-sync-caps.xml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ plugins/mozilla-sync/trunk/src/mozilla-sync-caps.xml Thu Oct 22 09:32:35 2009 (r5882) @@ -0,0 +1,77 @@ +<?xml version="1.0"?> +<Caps Version="1.0" CapsFormat="xmlformat"> + +<ObjType Name="contact"> + +<Cap> + <Name>Address</Name> + <Cap><Name>Country</Name></Cap> + <Cap><Name>ExtendedAddress</Name></Cap> + <Cap><Name>Locality</Name></Cap> + <Cap><Name>PostalCode</Name></Cap> + <Cap><Name>Region</Name></Cap> + <Cap><Name>Street</Name></Cap> +</Cap> +<Cap><Name>EMail</Name></Cap> +<Cap><Name>FormattedName</Name></Cap> +<Cap> + <Name>Name</Name> + <Cap><Name>FirstName</Name></Cap> + <Cap><Name>LastName</Name></Cap> +</Cap> +<Cap><Name>Nickname</Name></Cap> +<Cap><Name>Note</Name></Cap> +<Cap><Name>Organization</Name></Cap> +<Cap><Name>Telephone</Name></Cap> +<Cap><Name>Title</Name></Cap> +<Cap><Name>Url</Name></Cap> + +</ObjType> + +<ObjType Name="event"> + +<Cap><Name>Alarm</Name></Cap> +<Cap><Name>AlarmRelatedEnd</Name></Cap> +<Cap><Name>Attach</Name></Cap> +<Cap><Name>Attendee</Name></Cap> +<Cap><Name>CalendarScale</Name></Cap> +<Cap><Name>Categories</Name></Cap> +<Cap><Name>Class</Name></Cap> +<Cap><Name>Comment</Name></Cap> +<Cap><Name>Contact</Name></Cap> +<Cap><Name>Created</Name></Cap> +<Cap><Name>DateCalendarCreated</Name></Cap> +<Cap><Name>DateEnd</Name></Cap> +<Cap><Name>DateStarted</Name></Cap> +<Cap><Name>Description</Name></Cap> +<Cap><Name>Duration</Name></Cap> +<Cap><Name>ExceptionDateTime</Name></Cap> +<Cap><Name>ExceptionRule</Name></Cap> +<Cap><Name>ExceptionRuleExtended</Name></Cap> +<Cap><Name>FreeBusy</Name></Cap> +<Cap><Name>Geo</Name></Cap> +<Cap><Name>LastModified</Name></Cap> +<Cap><Name>Location</Name></Cap> +<Cap><Name>Method</Name></Cap> +<Cap><Name>Organizer</Name></Cap> +<Cap><Name>Priority</Name></Cap> +<Cap><Name>ProductID</Name></Cap> +<Cap><Name>RStatus</Name></Cap> +<Cap><Name>RecurrenceDateTime</Name></Cap> +<Cap><Name>RecurrenceId</Name></Cap> +<Cap><Name>RecurrenceRule</Name></Cap> +<Cap><Name>RecurrenceRuleExtended</Name></Cap> +<Cap><Name>Related</Name></Cap> +<Cap><Name>Resources</Name></Cap> +<Cap><Name>Sequence</Name></Cap> +<Cap><Name>Status</Name></Cap> +<Cap><Name>Summary</Name></Cap> +<Cap><Name>TimeTransparency</Name></Cap> +<Cap><Name>Uid</Name></Cap> +<Cap><Name>Url</Name></Cap> +<Cap><Name>Version</Name></Cap> + +</ObjType> + +</Caps> + Added: plugins/mozilla-sync/trunk/src/mozilla-sync-desc.xml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ plugins/mozilla-sync/trunk/src/mozilla-sync-desc.xml Thu Oct 22 09:32:35 2009 (r5882) @@ -0,0 +1,13 @@ +<?xml version="1.0"?> +<versions version="0.1"> +<version> +<PlugIn>mozilla-sync</PlugIn> +<Priority>100</Priority> +<Vendor>KaarPoSoft</Vendor> +<ModelVersion></ModelVersion> +<FirmwareVersion></FirmwareVersion> +<SoftwareVersion></SoftwareVersion> +<HardwareVersion></HardwareVersion> +<Identifier>mozilla-sync-caps.xml</Identifier> +</version> +</versions> Modified: plugins/mozilla-sync/trunk/src/mozilla-sync.cpp ============================================================================== --- plugins/mozilla-sync/trunk/src/mozilla-sync.cpp Thu Oct 22 09:28:34 2009 (r5881) +++ plugins/mozilla-sync/trunk/src/mozilla-sync.cpp Thu Oct 22 09:32:35 2009 (r5882) @@ -919,30 +919,6 @@ // ---------------------------------------- - -typedef struct _CapDef { - OSyncCapabilitiesObjType *pCapabilitiesObjType; - const char* szCap; - gboolean fError; - OSyncError **ppOSyncError; -} CapDef; - - -// ---------------------------------------- - -void addCapabilityEvent(void* voidSz, void* voidPCapDef) { - CapDef *pCapDef=(CapDef*) voidPCapDef; - if (pCapDef->fError) return; - char *sz = (char*) voidSz; - LOG(10, "Capability: [%s]", sz); - - OSyncCapability *pCapability = osync_capability_new(pCapDef->pCapabilitiesObjType, pCapDef->ppOSyncError); - if (!pCapability) pCapDef->fError=TRUE; - osync_capability_set_name(pCapability, g_strdup(sz)); -} - - -// ---------------------------------------- /** @brief Discover sinks Here we actually tell opensync which sinks are available. @@ -975,6 +951,7 @@ if (!version) { LOG_EXIT_ERROR_OSYNC_SZ(10, ppOSyncError, "Could not get osync_version_new"); return FALSE; } osync_version_set_plugin(version, "mozilla-sync"); + osync_version_set_vendor(version, "KaarPoSoft"); //osync_version_set_modelversion(version, "version"); //osync_version_set_firmwareversion(version, "firmwareversion"); //osync_version_set_softwareversion(version, "softwareversion"); @@ -1111,39 +1088,9 @@ } - OSyncCapabilities *pCapabilities=NULL; - - CapDef capDef; - capDef.fError=FALSE; - capDef.ppOSyncError=ppOSyncError; - - GList *pGList; - if (pOSyncMozillaEnv->mozillaConfig.szCalendarId) { - pCapabilities=osync_capabilities_new("vformat", ppOSyncError); - if (!pCapabilities) goto error; - capDef.pCapabilitiesObjType=osync_capabilities_objtype_new(pCapabilities, "event", ppOSyncError); - if (!capDef.pCapabilitiesObjType) goto error; - pGList=PGListEventCapabilities(); - g_list_foreach(pGList, addCapabilityEvent, &capDef); - } - - if (pOSyncMozillaEnv->mozillaConfig.szAddressbookFile) { - pCapabilities=osync_capabilities_new("xmlformat", ppOSyncError); - if (!pCapabilities) goto error; - capDef.pCapabilitiesObjType=osync_capabilities_objtype_new(pCapabilities, "contact", ppOSyncError); - if (!capDef.pCapabilitiesObjType) goto error; - pGList=ThunderbirdCard::PGListCapabilities(); - g_list_foreach(pGList, addCapabilityEvent, &capDef); - } - osync_plugin_info_set_capabilities(pOSyncPluginInfo, pCapabilities); - - if (capDef.fError) - { LOG_EXIT_ERROR_OSYNC_SZ(10, capDef.ppOSyncError, "Could not add capability"); return NULL; } LOG_EXIT(10, "(%p)", pOSyncMozillaEnv); return (void*) pOSyncMozillaEnv; -error: - LOG_EXIT_ERROR_OSYNC_SZ(10, capDef.ppOSyncError, "Could not add capabilities"); return NULL; } |