Add D-Bus interfaces for remote resource management.
authorMatthew Barnes <mbarnes@redhat.com>
Thu, 19 Jul 2012 12:20:05 +0000 (08:20 -0400)
committerMatthew Barnes <mbarnes@redhat.com>
Fri, 3 Aug 2012 15:39:50 +0000 (11:39 -0400)
Defines two new D-Bus interfaces for data source object paths:

  org.gnome.evolution.dataserver.Source.RemoteCreatable

    Create() - creates a remote resource

  org.gnome.evolution.dataserver.Source.RemoteDeletable

    Delete() - deletes a remote resource

These methods will be invoked through ESource objects on the client
side.  On the server side, the corresponding EServerSideSource will
receive the method invocation, but forward to an ECollectionBackend
to perform the actual operation.

docs/reference/private/libedbus-private-docs.sgml
docs/reference/private/libedbus-private-sections.txt
docs/reference/private/libedbus-private.types
private/org.gnome.evolution.dataserver.Source.xml

index 26b2cdb..5278f95 100644 (file)
     <xi:include href="xml/e-dbus-source-writable.xml"/>
     <xi:include href="xml/e-dbus-source-writable-proxy.xml"/>
     <xi:include href="xml/e-dbus-source-writable-skeleton.xml"/>
+    <xi:include href="xml/e-dbus-source-remote-creatable.xml"/>
+    <xi:include href="xml/e-dbus-source-remote-creatable-proxy.xml"/>
+    <xi:include href="xml/e-dbus-source-remote-creatable-skeleton.xml"/>
+    <xi:include href="xml/e-dbus-source-remote-deletable.xml"/>
+    <xi:include href="xml/e-dbus-source-remote-deletable-proxy.xml"/>
+    <xi:include href="xml/e-dbus-source-remote-deletable-skeleton.xml"/>
     <xi:include href="xml/e-dbus-source-manager.xml"/>
     <xi:include href="xml/e-dbus-source-manager-proxy.xml"/>
     <xi:include href="xml/e-dbus-source-manager-skeleton.xml"/>
@@ -36,6 +42,8 @@
     <xi:include href="../../../private/e-dbus-source-org.gnome.evolution.dataserver.Source.xml"/>
     <xi:include href="../../../private/e-dbus-source-org.gnome.evolution.dataserver.Source.Removable.xml"/>
     <xi:include href="../../../private/e-dbus-source-org.gnome.evolution.dataserver.Source.Writable.xml"/>
+    <xi:include href="../../../private/e-dbus-source-org.gnome.evolution.dataserver.Source.RemoteCreatable.xml"/>
+    <xi:include href="../../../private/e-dbus-source-org.gnome.evolution.dataserver.Source.RemoteDeletable.xml"/>
     <xi:include href="../../../private/e-dbus-source-manager-org.gnome.evolution.dataserver.SourceManager.xml"/>
     <xi:include href="../../../private/e-dbus-authenticator-org.gnome.evolution.dataserver.Authenticator.xml"/>
   </chapter>
index 7691e22..134dd46 100644 (file)
@@ -83,6 +83,10 @@ e_dbus_object_get_source_removable
 e_dbus_object_peek_source_removable
 e_dbus_object_get_source_writable
 e_dbus_object_peek_source_writable
+e_dbus_object_get_source_remote_creatable
+e_dbus_object_peek_source_remote_creatable
+e_dbus_object_get_source_remote_deletable
+e_dbus_object_peek_source_remote_deletable
 <SUBSECTION Standard>
 E_DBUS_OBJECT
 E_DBUS_IS_OBJECT
@@ -143,6 +147,8 @@ e_dbus_object_skeleton_new
 e_dbus_object_skeleton_set_source
 e_dbus_object_skeleton_set_source_writable
 e_dbus_object_skeleton_set_source_removable
+e_dbus_object_skeleton_set_source_remote_creatable
+e_dbus_object_skeleton_set_source_remote_deletable
 <SUBSECTION Standard>
 E_DBUS_OBJECT_SKELETON
 E_DBUS_IS_OBJECT_SKELETON
@@ -301,6 +307,128 @@ e_dbus_source_manager_skeleton_get_type
 </SECTION>
 
 <SECTION>
+<FILE>e-dbus-source-remote-creatable</FILE>
+<TITLE>EDBusSourceRemoteCreatable</TITLE>
+EDBusSourceRemoteCreatable
+e_dbus_source_remote_creatable_call_create_sync
+e_dbus_source_remote_creatable_call_create
+e_dbus_source_remote_creatable_call_create_finish
+e_dbus_source_remote_creatable_complete_create
+e_dbus_source_remote_creatable_interface_info
+e_dbus_source_remote_creatable_override_properties
+<SUBSECTION Standard>
+E_DBUS_SOURCE_REMOTE_CREATABLE
+E_DBUS_IS_SOURCE_REMOTE_CREATABLE
+E_DBUS_TYPE_SOURCE_REMOTE_CREATABLE
+E_DBUS_SOURCE_REMOTE_CREATABLE_GET_IFACE
+EDBusSourceRemoteCreatableIface
+<SUBSECTION Private>
+e_dbus_source_remote_creatable_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-remote-creatable-proxy</FILE>
+<TITLE>EDBusSourceRemoteCreatableProxy</TITLE>
+EDBusSourceRemoteCreatableProxy
+e_dbus_source_remote_creatable_proxy_new_sync
+e_dbus_source_remote_creatable_proxy_new
+e_dbus_source_remote_creatable_proxy_new_finish
+e_dbus_source_remote_creatable_proxy_new_for_bus_sync
+e_dbus_source_remote_creatable_proxy_new_for_bus
+e_dbus_source_remote_creatable_proxy_new_for_bus_finish
+<SUBSECTION Standard>
+E_DBUS_SOURCE_REMOTE_CREATABLE_PROXY
+E_DBUS_IS_SOURCE_REMOTE_CREATABLE_PROXY
+E_DBUS_TYPE_SOURCE_REMOTE_CREATABLE_PROXY
+E_DBUS_SOURCE_REMOTE_CREATABLE_PROXY_CLASS
+E_DBUS_IS_SOURCE_REMOTE_CREATABLE_PROXY_CLASS
+E_DBUS_SOURCE_REMOTE_CREATABLE_PROXY_GET_CLASS
+EDBusSourceRemoteCreatableProxyClass
+<SUBSECTION Private>
+EDBusSourceRemoteCreatableProxyPrivate
+e_dbus_source_remote_creatable_proxy_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-remote-creatable-skeleton</FILE>
+<TITLE>EDBusSourceRemoteCreatableSkeleton</TITLE>
+EDBusSourceRemoteCreatableSkeleton
+e_dbus_source_remote_creatable_skeleton_new
+<SUBSECTION Standard>
+E_DBUS_SOURCE_REMOTE_CREATABLE_SKELETON
+E_DBUS_IS_SOURCE_REMOTE_CREATABLE_SKELETON
+E_DBUS_TYPE_SOURCE_REMOTE_CREATABLE_SKELETON
+E_DBUS_SOURCE_REMOTE_CREATABLE_SKELETON_CLASS
+E_DBUS_IS_SOURCE_REMOTE_CREATABLE_SKELETON_CLASS
+E_DBUS_SOURCE_REMOTE_CREATABLE_SKELETON_GET_CLASS
+EDBusSourceRemoteCreatableSkeletonClass
+<SUBSECTION Private>
+EDBusSourceRemoteCreatableSkeletonPrivate
+e_dbus_source_remote_creatable_skeleton_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-remote-deletable</FILE>
+<TITLE>EDBusSourceRemoteDeletable</TITLE>
+EDBusSourceRemoteDeletable
+e_dbus_source_remote_deletable_call_delete_sync
+e_dbus_source_remote_deletable_call_delete
+e_dbus_source_remote_deletable_call_delete_finish
+e_dbus_source_remote_deletable_complete_delete
+e_dbus_source_remote_deletable_interface_info
+e_dbus_source_remote_deletable_override_properties
+<SUBSECTION Standard>
+E_DBUS_SOURCE_REMOTE_DELETABLE
+E_DBUS_IS_SOURCE_REMOTE_DELETABLE
+E_DBUS_TYPE_SOURCE_REMOTE_DELETABLE
+E_DBUS_SOURCE_REMOTE_DELETABLE_GET_IFACE
+EDBussourceRemoteDeletableIface
+<SUBSECTION Private>
+e_dbus_source_remote_deletable_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-remote-deletable-proxy</FILE>
+<TITLE>EDBusSourceRemoteDeletableProxy</TITLE>
+EDBusSourceRemoteDeletableProxy
+e_dbus_source_remote_deletable_proxy_new_sync
+e_dbus_source_remote_deletable_proxy_new
+e_dbus_source_remote_deletable_proxy_new_finish
+e_dbus_source_remote_deletable_proxy_new_for_bus_sync
+e_dbus_source_remote_deletable_proxy_new_for_bus
+e_dbus_source_remote_deletable_proxy_new_for_bus_finish
+<SUBSECTION Standard>
+E_DBUS_SOURCE_REMOTE_DELETABLE_PROXY
+E_DBUS_IS_SOURCE_REMOTE_DELETABLE_PROXY
+E_DBUS_TYPE_SOURCE_REMOTE_DELETABLE_PROXY
+E_DBUS_SOURCE_REMOTE_DELETABLE_PROXY_CLASS
+E_DBUS_IS_SOURCE_REMOTE_DELETABLE_PROXY_CLASS
+E_DBUS_SOURCE_REMOTE_DELETABLE_PROXY_GET_CLASS
+EDbusSourceRemoteDeletableProxyClass
+<SUBSECTION Private>
+EDBusSourceRemoteDeletableProxyPrivate
+e_dbus_source_remote_deletable_proxy_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-remote-deletable-skeleton</FILE>
+<TITLE>EDBusSourceRemoteDeletableSkeleton</TITLE>
+EDBusSourceRemoteDeletableSkeleton
+e_dbus_source_remote_deletable_skeleton_new
+<SUBSECTION Standard>
+E_DBUS_SOURCE_REMOTE_DELETABLE_SKELETON
+E_DBUS_IS_SOURCE_REMOTE_DELETABLE_SKELETON
+E_DBUS_TYPE_SOURCE_REMOTE_DELETABLE_SKELETON
+E_DBUS_SOURCE_REMOTE_DELETABLE_SKELETON_CLASS
+E_DBUS_IS_SOURCE_REMOTE_DELETABLE_SKELETON_CLASS
+E_DBUS_SOURCE_REMOTE_DELETABLE_SKELETON_GET_CLASS
+EDBusSourceRemoteDeletableSkeletonClass
+<SUBSECTION Private>
+EDBusSourceRemoteDeletableSkeletonPrivate
+e_dbus_source_remote_deletable_skeleton_get_type
+</SECTION>
+
+<SECTION>
 <FILE>e-dbus-source-removable</FILE>
 <TITLE>EDBusSourceRemovable</TITLE>
 EDBusSourceRemovable
index 84f9e69..bd0c788 100644 (file)
@@ -18,6 +18,12 @@ e_dbus_source_removable_skeleton_get_type
 e_dbus_source_writable_get_type
 e_dbus_source_writable_proxy_get_type
 e_dbus_source_writable_skeleton_get_type
+e_dbus_source_remote_creatable_get_type
+e_dbus_source_remote_creatable_proxy_get_type
+e_dbus_source_remote_creatable_skeleton_get_type
+e_dbus_source_remote_deletable_get_type
+e_dbus_source_remote_deletable_proxy_get_type
+e_dbus_source_remote_deletable_skeleton_get_type
 e_dbus_authenticator_get_type
 e_dbus_authenticator_proxy_get_type
 e_dbus_authenticator_skeleton_get_type
index c645730..567a0e7 100644 (file)
     <arg name="data" direction="in" type="s"/>
   </method>
 </interface>
+
+<!--
+    org.gnome.evolution.dataserver.Source.RemoteCreatable:
+    @short_description: Create remote resources
+
+    This interface is used to create resources on a remote server.
+-->
+<interface name="org.gnome.evolution.dataserver.Source.RemoteCreatable">
+  <!--
+      Create:
+      @uid: Unique identifier for the new data source
+      @data: Raw key file data describing the resource to create
+
+      Creates a remote resource according to details in @data.
+      The newly-created resource will be proxied by a new data
+      source with a unique identifier of @uid.
+  -->
+  <method name="Create">
+    <arg name="uid" direction="in" type="s"/>
+    <arg name="data" direction="in" type="s"/>
+  </method>
+</interface>
+
+<!--
+    org.gnome.evolution.dataserver.Source.RemoteDeletable:
+    @short_description: Delete remote resources
+
+    This interface is used to delete resources from a remote server.
+-->
+<interface name="org.gnome.evolution.dataserver.Source.RemoteDeletable">
+  <!--
+      Delete:
+
+      Deletes the remote resource being proxied by this data source.
+  -->
+  <method name="Delete"/>
+</interface>
+