[evolution-data-server/account-mgmt: 7/42] Generate GDBus classes for a new D-Bus service.



commit ce5e11f450d970247153f0185795ad2096c65123
Author: Matthew Barnes <mbarnes redhat com>
Date:   Thu Sep 29 16:06:05 2011 -0400

    Generate GDBus classes for a new D-Bus service.

 Makefile.am                                        |    2 +-
 configure.ac                                       |   10 +
 docs/reference/Makefile.am                         |   17 +-
 .../libedataserver/libedataserver-docs.sgml        |   14 +
 .../libedataserver/libedataserver-sections.txt     |    4 -
 docs/reference/libedataserver/libedataserver.types |    1 +
 docs/reference/private/Makefile.am                 |   33 ++
 docs/reference/private/libedbus-private-docs.sgml  |   50 +++
 .../private/libedbus-private-sections.txt          |  424 ++++++++++++++++++++
 docs/reference/private/libedbus-private.types      |   23 +
 libebackend/Makefile.am                            |    1 +
 libedataserver/Makefile.am                         |   12 +-
 private/Makefile.am                                |   87 ++++
 ...rg.gnome.evolution.dataserver.Authenticator.xml |   92 +++++
 private/org.gnome.evolution.dataserver.Source.xml  |   59 +++
 ...rg.gnome.evolution.dataserver.SourceManager.xml |   66 +++
 16 files changed, 887 insertions(+), 8 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index 7bde3f4..04068a0 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2,7 +2,7 @@ ACLOCAL_AMFLAGS=-I m4
 
 DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --with-krb5=/usr --without-weather --enable-introspection
 
-SUBDIRS = camel libedataserver libebackend addressbook calendar libedataserverui services tests docs art po
+SUBDIRS = camel private libedataserver libebackend addressbook calendar libedataserverui services tests docs art po
 
 if HAVE_INTROSPECTION
 if HAVE_VALA
diff --git a/configure.ac b/configure.ac
index b8ead2f..9483f64 100644
--- a/configure.ac
+++ b/configure.ac
@@ -273,6 +273,14 @@ dnl Gtk Doc stuff
 dnl ******************************
 GTK_DOC_CHECK([1.14],[--flavour no-tmpl])
 
+dnl The private D-Bus documentation is for developers only.
+AC_ARG_WITH([private-docs],
+	AS_HELP_STRING([--with-private-docs],
+	[Build documentation for private libraries ]
+	[(requires --enable-gtk-doc) [default=no]],),
+	[with_private_docs="$withval"],[with_private_docs="no"])
+AM_CONDITIONAL(WITH_PRIVATE_DOCS, [test x$with_private_docs = xyes])
+
 dnl This must appear after AC_CANONICAL_HOST, which defines $host.
 case "$host" in
 *openbsd*|*freebsd*)
@@ -1614,6 +1622,7 @@ libedataserver/eds-version.h
 libedataserver/libedataserver.pc
 libedataserverui/Makefile
 libedataserverui/libedataserverui.pc
+private/Makefile
 services/Makefile
 services/evolution-addressbook-factory/Makefile
 services/evolution-calendar-factory/Makefile
@@ -1638,6 +1647,7 @@ docs/reference/camel/Makefile
 docs/reference/libedataserver/Makefile
 docs/reference/libedataserverui/Makefile
 docs/reference/libebackend/Makefile
+docs/reference/private/Makefile
 po/Makefile.in
 vala/Makefile
 ])
diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am
index 7f9bf04..2d64b2c 100644
--- a/docs/reference/Makefile.am
+++ b/docs/reference/Makefile.am
@@ -1,4 +1,19 @@
-SUBDIRS = addressbook calendar camel libedataserver libedataserverui libebackend
+NULL =
+
+if WITH_PRIVATE_DOCS
+PRIVATE_DIR = private
+endif
+
+SUBDIRS = \
+	addressbook \
+	calendar \
+	camel \
+	libedataserver \
+	libedataserverui \
+	libebackend \
+	$(PRIVATE_DIR) \
+	$(NULL)
+
 MKDB_OPTIONS=--output-format=xml --name-space=e
 
 -include $(top_srcdir)/git.mk
diff --git a/docs/reference/libedataserver/libedataserver-docs.sgml b/docs/reference/libedataserver/libedataserver-docs.sgml
index a46c27d..f1ab381 100644
--- a/docs/reference/libedataserver/libedataserver-docs.sgml
+++ b/docs/reference/libedataserver/libedataserver-docs.sgml
@@ -26,6 +26,20 @@
   </chapter>
 
   <chapter>
+    <title>Generated Types</title>
+    <xi:include href="xml/e-dbus-object.xml"/>
+    <xi:include href="xml/e-dbus-object-proxy.xml"/>
+    <xi:include href="xml/e-dbus-object-skeleton.xml"/>
+    <xi:include href="xml/e-dbus-source.xml"/>
+    <xi:include href="xml/e-dbus-source-proxy.xml"/>
+    <xi:include href="xml/e-dbus-source-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"/>
+    <xi:include href="xml/e-dbus-object-manager-client.xml"/>
+  </chapter>
+
+  <chapter>
     <title>Miscellaneous Utilities</title>
     <xi:include href="xml/e-categories.xml"/>
     <xi:include href="xml/e-client.xml"/>
diff --git a/docs/reference/libedataserver/libedataserver-sections.txt b/docs/reference/libedataserver/libedataserver-sections.txt
index 41d3a39..f313c0d 100644
--- a/docs/reference/libedataserver/libedataserver-sections.txt
+++ b/docs/reference/libedataserver/libedataserver-sections.txt
@@ -114,10 +114,6 @@ e_credentials_list_keys
 e_credentials_clear
 e_credentials_clear_peek
 e_credentials_util_safe_free_string
-e_credentials_util_prompt_flags_to_string
-e_credentials_util_string_to_prompt_flags
-<SUBSECTION Private>
-ECredentialsPrivate
 </SECTION>
 
 <SECTION>
diff --git a/docs/reference/libedataserver/libedataserver.types b/docs/reference/libedataserver/libedataserver.types
index 4c2a0cf..f7ced4b 100644
--- a/docs/reference/libedataserver/libedataserver.types
+++ b/docs/reference/libedataserver/libedataserver.types
@@ -11,3 +11,4 @@ e_list_get_type
 e_list_iterator_get_type
 e_proxy_get_type
 e_source_get_type
+
diff --git a/docs/reference/private/Makefile.am b/docs/reference/private/Makefile.am
new file mode 100644
index 0000000..85be6f0
--- /dev/null
+++ b/docs/reference/private/Makefile.am
@@ -0,0 +1,33 @@
+# The name of the module.
+DOC_MODULE = libedbus-private
+
+# The top-level SGML file.
+DOC_MAIN_SGML_FILE = libedbus-private-docs.sgml
+
+# Extra options to supply to gtkdoc-scan
+SCAN_OPTIONS = --deprecated-guards="EDS_DISABLE_DEPRECATED"
+
+# The directory containing the source code. Relative to $(srcdir).
+DOC_SOURCE_DIR = $(top_srcdir)/private
+
+# Used for dependencies. The docs will be rebuilt if any of these change.
+HFILE_GLOB = $(top_srcdir)/private/*.h
+CFILE_GLOB = $(top_srcdir)/private/*.c
+
+IGNORE_HFILES =
+
+GTKDOC_CFLAGS  =					\
+	-I$(top_srcdir) 				\
+	-I$(top_builddir)				\
+	$(E_DATA_SERVER_CFLAGS)
+
+GTKDOC_LIBS = 						\
+	$(top_builddir)/private/libedbus-private.la	\
+	$(E_DATA_SERVER_LIBS)
+
+# This includes the standard gtk-doc make rules, copied by gtkdocize.
+include $(top_srcdir)/gtk-doc.make
+
+#TESTS = $(GTKDOC_CHECK)
+
+-include $(top_srcdir)/git.mk
diff --git a/docs/reference/private/libedbus-private-docs.sgml b/docs/reference/private/libedbus-private-docs.sgml
new file mode 100644
index 0000000..26b2cdb
--- /dev/null
+++ b/docs/reference/private/libedbus-private-docs.sgml
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" 
+               "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"; [
+<!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
+]>
+<book id="index" xmlns:xi="http://www.w3.org/2001/XInclude";>
+  <bookinfo>
+    <title>Evolution-Data-Server Manual: Private</title>
+  </bookinfo>
+
+  <chapter>
+    <title>D-Bus API Reference</title>
+    <xi:include href="xml/e-dbus-object.xml"/>
+    <xi:include href="xml/e-dbus-object-proxy.xml"/>
+    <xi:include href="xml/e-dbus-object-skeleton.xml"/>
+    <xi:include href="xml/e-dbus-source.xml"/>
+    <xi:include href="xml/e-dbus-source-proxy.xml"/>
+    <xi:include href="xml/e-dbus-source-skeleton.xml"/>
+    <xi:include href="xml/e-dbus-source-removable.xml"/>
+    <xi:include href="xml/e-dbus-source-removable-proxy.xml"/>
+    <xi:include href="xml/e-dbus-source-removable-skeleton.xml"/>
+    <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-manager.xml"/>
+    <xi:include href="xml/e-dbus-source-manager-proxy.xml"/>
+    <xi:include href="xml/e-dbus-source-manager-skeleton.xml"/>
+    <xi:include href="xml/e-dbus-object-manager-client.xml"/>
+    <xi:include href="xml/e-dbus-authenticator.xml"/>
+    <xi:include href="xml/e-dbus-authenticator-proxy.xml"/>
+    <xi:include href="xml/e-dbus-authenticator-skeleton.xml"/>
+  </chapter>
+
+  <chapter>
+    <title>D-Bus Interfaces</title>
+    <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-manager-org.gnome.evolution.dataserver.SourceManager.xml"/>
+    <xi:include href="../../../private/e-dbus-authenticator-org.gnome.evolution.dataserver.Authenticator.xml"/>
+  </chapter>
+
+  <index id="api-index-full">
+    <title>Index</title>
+    <xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
+  </index>
+
+  <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
+
+</book>
diff --git a/docs/reference/private/libedbus-private-overrides.txt b/docs/reference/private/libedbus-private-overrides.txt
new file mode 100644
index 0000000..e69de29
diff --git a/docs/reference/private/libedbus-private-sections.txt b/docs/reference/private/libedbus-private-sections.txt
new file mode 100644
index 0000000..7691e22
--- /dev/null
+++ b/docs/reference/private/libedbus-private-sections.txt
@@ -0,0 +1,424 @@
+<SECTION>
+<FILE>e-dbus-authenticator</FILE>
+<TITLE>EDBusAuthenticator</TITLE>
+EDBusAuthenticator
+e_dbus_authenticator_call_ready_sync
+e_dbus_authenticator_call_ready
+e_dbus_authenticator_call_ready_finish
+e_dbus_authenticator_complete_ready
+e_dbus_authenticator_call_cancel_sync
+e_dbus_authenticator_call_cancel
+e_dbus_authenticator_call_cancel_finish
+e_dbus_authenticator_complete_cancel
+e_dbus_authenticator_call_accepted_sync
+e_dbus_authenticator_call_accepted
+e_dbus_authenticator_call_accepted_finish
+e_dbus_authenticator_complete_accepted
+e_dbus_authenticator_call_rejected_sync
+e_dbus_authenticator_call_rejected
+e_dbus_authenticator_call_rejected_finish
+e_dbus_authenticator_complete_rejected
+e_dbus_authenticator_emit_authenticate
+e_dbus_authenticator_emit_dismissed
+e_dbus_authenticator_interface_info
+e_dbus_authenticator_override_properties
+<SUBSECTION Standard>
+E_DBUS_AUTHENTICATOR
+E_DBUS_IS_AUTHENTICATOR
+E_DBUS_TYPE_AUTHENTICATOR
+E_DBUS_AUTHENTICATOR_GET_IFACE
+EDBusAuthenticatorIface
+<SUBSECTION Private>
+e_dbus_authenticator_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-authenticator-proxy</FILE>
+<TITLE>EDBusAuthenticatorProxy</TITLE>
+EDBusAuthenticatorProxy
+e_dbus_authenticator_proxy_new_sync
+e_dbus_authenticator_proxy_new
+e_dbus_authenticator_proxy_new_finish
+e_dbus_authenticator_proxy_new_for_bus_sync
+e_dbus_authenticator_proxy_new_for_bus
+e_dbus_authenticator_proxy_new_for_bus_finish
+<SUBSECTION Standard>
+E_DBUS_AUTHENTICATOR_PROXY
+E_DBUS_IS_AUTHENTICATOR_PROXY
+E_DBUS_TYPE_AUTHENTICATOR_PROXY
+E_DBUS_AUTHENTICATOR_PROXY_CLASS
+E_DBUS_IS_AUTHENTICATOR_PROXY_CLASS
+E_DBUS_AUTHENTICATOR_PROXY_GET_CLASS
+EDBusAuthenticatorProxyClass
+<SUBSECTION Private>
+EDBusAuthenticatorProxyPrivate
+e_dbus_authenticator_proxy_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-authenticator-skeleton</FILE>
+<TITLE>EDBusAuthenticatorSkeleton</TITLE>
+EDBusAuthenticatorSkeleton
+e_dbus_authenticator_skeleton_new
+<SUBSECTION Standard>
+E_DBUS_AUTHENTICATOR_SKELETON
+E_DBUS_IS_AUTHENTICATOR_SKELETON
+E_DBUS_TYPE_AUTHENTICATOR_SKELETON
+E_DBUS_AUTHENTICATOR_SKELETON_CLASS
+E_DBUS_IS_AUTHENTICATOR_SKELETON_CLASS
+E_DBUS_AUTHENTICATOR_SKELETON_GET_CLASS
+EDBusAuthenticatorSkeletonClass
+<SUBSECTION Private>
+EDBusAuthenticatorSkeletonPrivate
+e_dbus_authenticator_skeleton_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-object</FILE>
+<TITLE>EDBusObject</TITLE>
+EDBusObject
+e_dbus_object_get_source
+e_dbus_object_peek_source
+e_dbus_object_get_source_removable
+e_dbus_object_peek_source_removable
+e_dbus_object_get_source_writable
+e_dbus_object_peek_source_writable
+<SUBSECTION Standard>
+E_DBUS_OBJECT
+E_DBUS_IS_OBJECT
+E_DBUS_TYPE_OBJECT
+E_DBUS_OBJECT_GET_IFACE
+EDBusObjectIface
+<SUBSECTION Private>
+e_dbus_object_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-object-manager-client</FILE>
+<TITLE>EDBusObjectManagerClient</TITLE>
+EDBusObjectManagerClient
+e_dbus_object_manager_client_new_sync
+e_dbus_object_manager_client_new
+e_dbus_object_manager_client_new_finish
+e_dbus_object_manager_client_new_for_bus_sync
+e_dbus_object_manager_client_new_for_bus
+e_dbus_object_manager_client_new_for_bus_finish
+e_dbus_object_manager_client_get_proxy_type
+<SUBSECTION Standard>
+E_DBUS_OBJECT_MANAGER_CLIENT
+E_DBUS_IS_OBJECT_MANAGER_CLIENT
+E_DBUS_TYPE_OBJECT_MANAGER_CLIENT
+E_DBUS_OBJECT_MANAGER_CLIENT_CLASS
+E_DBUS_IS_OBJECT_MANAGER_CLIENT_CLASS
+E_DBUS_OBJECT_MANAGER_CLIENT_GET_CLASS
+EDBusObjectManagerClientClass
+<SUBSECTION Private>
+EDBusObjectManagerClientPrivate
+e_dbus_object_manager_client_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-object-proxy</FILE>
+<TITLE>EDBusObjectProxy</TITLE>
+EDBusObjectProxy
+e_dbus_object_proxy_new
+<SUBSECTION Standard>
+E_DBUS_OBJECT_PROXY
+E_DBUS_IS_OBJECT_PROXY
+E_DBUS_TYPE_OBJECT_PROXY
+E_DBUS_OBJECT_PROXY_CLASS
+E_DBUS_IS_OBJECT_PROXY_CLASS
+E_DBUS_OBJECT_PROXY_GET_CLASS
+EDBusObjectProxyClass
+<SUBSECTION Private>
+EDBusObjectProxyPrivate
+e_dbus_object_proxy_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-object-skeleton</FILE>
+<TITLE>EDBusObjectSkeleton</TITLE>
+EDBusObjectSkeleton
+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
+<SUBSECTION Standard>
+E_DBUS_OBJECT_SKELETON
+E_DBUS_IS_OBJECT_SKELETON
+E_DBUS_TYPE_OBJECT_SKELETON
+E_DBUS_OBJECT_SKELETON_CLASS
+E_DBUS_IS_OBJECT_SKELETON_CLASS
+E_DBUS_OBJECT_SKELETON_GET_CLASS
+EDBusObjectSkeletonClass
+<SUBSECTION Private>
+EDBusObjectSkeletonPrivate
+e_dbus_object_skeleton_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source</FILE>
+<TITLE>EDBusSource</TITLE>
+EDBusSource
+e_dbus_source_get_uid
+e_dbus_source_dup_uid
+e_dbus_source_set_uid
+e_dbus_source_get_data
+e_dbus_source_dup_data
+e_dbus_source_set_data
+e_dbus_source_call_allow_auth_prompt_sync
+e_dbus_source_call_allow_auth_prompt
+e_dbus_source_call_allow_auth_prompt_finish
+e_dbus_source_complete_allow_auth_prompt
+e_dbus_source_interface_info
+e_dbus_source_override_properties
+<SUBSECTION Standard>
+E_DBUS_SOURCE
+E_DBUS_IS_SOURCE
+E_DBUS_TYPE_SOURCE
+E_DBUS_SOURCE_CLASS
+E_DBUS_SOURCE_GET_IFACE
+E_DBUS_SOURCE_SKELETON
+E_DBUS_IS_SOURCE_SKELETON
+E_DBUS_TYPE_SOURCE_SKELETON
+E_DBUS_SOURCE_SKELETON_CLASS
+E_DBUS_IS_SOURCE_SKELETON_CLASS
+E_DBUS_SOURCE_SKELETON_GET_CLASS
+EDBusSourceIface
+<SUBSECTION Private>
+e_dbus_source_get_type
+e_dbus_source_skeleton_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-proxy</FILE>
+<TITLE>EDBusSourceProxy</TITLE>
+EDBusSourceProxy
+e_dbus_source_proxy_new_sync
+e_dbus_source_proxy_new
+e_dbus_source_proxy_new_finish
+e_dbus_source_proxy_new_for_bus_sync
+e_dbus_source_proxy_new_for_bus
+e_dbus_source_proxy_new_for_bus_finish
+<SUBSECTION Standard>
+E_DBUS_SOURCE_PROXY
+E_DBUS_IS_SOURCE_PROXY
+E_DBUS_TYPE_SOURCE_PROXY
+E_DBUS_SOURCE_PROXY_CLASS
+E_DBUS_IS_SOURCE_PROXY_CLASS
+E_DBUS_SOURCE_PROXY_GET_CLASS
+EDBusSourceProxyClass
+<SUBSECTION Private>
+EDBusSourceProxyPrivate
+e_dbus_source_proxy_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-skeleton</FILE>
+<TITLE>EDBusSourceSkeleton</TITLE>
+EDBusSourceSkeleton
+e_dbus_source_skeleton_new
+<SUBSECTION Standard>
+E_DBUS_SOURCE_SKELETON
+E_DBUS_IS_SOURCE_SKELETON
+E_DBUS_TYPE_SOURCE_SKELETON
+E_DBUS_SOURCE_SKELETON_CLASS
+E_DBUS_IS_SOURCE_SKELETON_CLASS
+E_DBUS_SOURCE_SKELETON_GET_CLASS
+EDBusSourceSkeletonClass
+<SUBSECTION Private>
+EDBusSourceSkeletonPrivate
+e_dbus_source_skeleton_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-manager</FILE>
+<TITLE>EDBusSourceManager</TITLE>
+EDBusSourceManager
+e_dbus_source_manager_call_authenticate_sync
+e_dbus_source_manager_call_authenticate
+e_dbus_source_manager_call_authenticate_finish
+e_dbus_source_manager_complete_authenticate
+e_dbus_source_manager_call_create_sources_sync
+e_dbus_source_manager_call_create_sources
+e_dbus_source_manager_call_create_sources_finish
+e_dbus_source_manager_complete_create_sources
+e_dbus_source_manager_call_reload_sync
+e_dbus_source_manager_call_reload
+e_dbus_source_manager_call_reload_finish
+e_dbus_source_manager_complete_reload
+e_dbus_source_manager_interface_info
+e_dbus_source_manager_override_properties
+<SUBSECTION Standard>
+E_DBUS_SOURCE_MANAGER
+E_DBUS_IS_SOURCE_MANAGER
+E_DBUS_TYPE_SOURCE_MANAGER
+E_DBUS_SOURCE_MANAGER_GET_IFACE
+EDBusSourceManagerIface
+<SUBSECTION Private>
+e_dbus_source_manager_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-manager-proxy</FILE>
+<TITLE>EDBusSourceManagerProxy</TITLE>
+EDBusSourceManagerProxy
+e_dbus_source_manager_proxy_new_sync
+e_dbus_source_manager_proxy_new
+e_dbus_source_manager_proxy_new_finish
+e_dbus_source_manager_proxy_new_for_bus_sync
+e_dbus_source_manager_proxy_new_for_bus
+e_dbus_source_manager_proxy_new_for_bus_finish
+<SUBSECTION Standard>
+E_DBUS_SOURCE_MANAGER_PROXY
+E_DBUS_IS_SOURCE_MANAGER_PROXY
+E_DBUS_TYPE_SOURCE_MANAGER_PROXY
+E_DBUS_SOURCE_MANAGER_PROXY_CLASS
+E_DBUS_IS_SOURCE_MANAGER_PROXY_CLASS
+E_DBUS_SOURCE_MANAGER_PROXY_GET_CLASS
+EDBusSourceManagerProxyClass
+<SUBSECTION Private>
+EDBusSourceManagerProxyPrivate
+e_dbus_source_manager_proxy_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-manager-skeleton</FILE>
+<TITLE>EDBusSourceManagerSkeleton</TITLE>
+EDBusSourceManagerSkeleton
+e_dbus_source_manager_skeleton_new
+<SUBSECTION Standard>
+E_DBUS_SOURCE_MANAGER_SKELETON
+E_DBUS_IS_SOURCE_MANAGER_SKELETON
+E_DBUS_TYPE_SOURCE_MANAGER_SKELETON
+E_DBUS_SOURCE_MANAGER_SKELETON_CLASS
+E_DBUS_IS_SOURCE_MANAGER_SKELETON_CLASS
+E_DBUS_SOURCE_MANAGER_SKELETON_GET_CLASS
+EDBusSourceManagerSkeletonClass
+<SUBSECTION Private>
+EDBusSourceManagerSkeletonPrivate
+e_dbus_source_manager_skeleton_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-removable</FILE>
+<TITLE>EDBusSourceRemovable</TITLE>
+EDBusSourceRemovable
+e_dbus_source_removable_call_remove_sync
+e_dbus_source_removable_call_remove
+e_dbus_source_removable_call_remove_finish
+e_dbus_source_removable_complete_remove
+e_dbus_source_removable_interface_info
+e_dbus_source_removable_override_properties
+<SUBSECTION Standard>
+E_DBUS_SOURCE_REMOVABLE
+E_DBUS_IS_SOURCE_REMOVABLE
+E_DBUS_TYPE_SOURCE_REMOVABLE
+E_DBUS_SOURCE_REMOVABLE_GET_IFACE
+EDBusSourceRemovableIface
+<SUBSECTION Private>
+e_dbus_source_removable_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-removable-proxy</FILE>
+<TITLE>EDBusSourceRemovableProxy</TITLE>
+EDBusSourceRemovableProxy
+e_dbus_source_removable_proxy_new
+e_dbus_source_removable_proxy_new_finish
+e_dbus_source_removable_proxy_new_for_bus
+e_dbus_source_removable_proxy_new_for_bus_finish
+e_dbus_source_removable_proxy_new_for_bus_sync
+e_dbus_source_removable_proxy_new_sync
+<SUBSECTION Standard>
+E_DBUS_SOURCE_REMOVABLE_PROXY
+E_DBUS_IS_SOURCE_REMOVABLE_PROXY
+E_DBUS_TYPE_SOURCE_REMOVABLE_PROXY
+E_DBUS_SOURCE_REMOVABLE_PROXY_CLASS
+E_DBUS_IS_SOURCE_REMOVABLE_PROXY_CLASS
+E_DBUS_SOURCE_REMOVABLE_PROXY_GET_CLASS
+EDBusSourceRemovableProxyClass
+<SUBSECTION Private>
+EDBusSourceRemovableProxyPrivate
+e_dbus_source_removable_proxy_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-removable-skeleton</FILE>
+<TITLE>EDBusSourceRemovableSkeleton</TITLE>
+EDBusSourceRemovableSkeleton
+e_dbus_source_removable_skeleton_new
+<SUBSECTION Standard>
+E_DBUS_SOURCE_REMOVABLE_SKELETON
+E_DBUS_IS_SOURCE_REMOVABLE_SKELETON
+E_DBUS_TYPE_SOURCE_REMOVABLE_SKELETON
+E_DBUS_SOURCE_REMOVABLE_SKELETON_CLASS
+E_DBUS_IS_SOURCE_REMOVABLE_SKELETON_CLASS
+E_DBUS_SOURCE_REMOVABLE_SKELETON_GET_CLASS
+EDBusSourceRemovableSkeletonClass
+<SUBSECTION Private>
+EDBusSourceRemovableSkeletonPrivate
+e_dbus_source_removable_skeleton_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-writable</FILE>
+<TITLE>EDBusSourceWritable</TITLE>
+EDBusSourceWritable
+e_dbus_source_writable_call_write_sync
+e_dbus_source_writable_call_write
+e_dbus_source_writable_call_write_finish
+e_dbus_source_writable_complete_write
+e_dbus_source_writable_interface_info
+e_dbus_source_writable_override_properties
+<SUBSECTION Standard>
+E_DBUS_SOURCE_WRITABLE
+E_DBUS_IS_SOURCE_WRITABLE
+E_DBUS_TYPE_SOURCE_WRITABLE
+E_DBUS_SOURCE_WRITABLE_GET_IFACE
+EDBusSourceWritableIface
+<SUBSECTION Private>
+e_dbus_source_writable_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-writable-proxy</FILE>
+<TITLE>EDBusSourceWritableProxy</TITLE>
+EDBusSourceWritableProxy
+e_dbus_source_writable_proxy_new
+e_dbus_source_writable_proxy_new_finish
+e_dbus_source_writable_proxy_new_for_bus
+e_dbus_source_writable_proxy_new_for_bus_finish
+e_dbus_source_writable_proxy_new_for_bus_sync
+e_dbus_source_writable_proxy_new_sync
+<SUBSECTION Standard>
+E_DBUS_SOURCE_WRITABLE_PROXY
+E_DBUS_IS_SOURCE_WRITABLE_PROXY
+E_DBUS_TYPE_SOURCE_WRITABLE_PROXY
+E_DBUS_SOURCE_WRITABLE_PROXY_CLASS
+E_DBUS_IS_SOURCE_WRITABLE_PROXY_CLASS
+E_DBUS_SOURCE_WRITABLE_PROXY_GET_CLASS
+EDBusSourceWritableProxyClass
+<SUBSECTION Private>
+EDBusSourceWritableProxyPrivate
+e_dbus_source_writable_proxy_get_type
+</SECTION>
+
+<SECTION>
+<FILE>e-dbus-source-writable-skeleton</FILE>
+<TITLE>EDBusSourceWritableSkeleton</TITLE>
+EDBusSourceWritableSkeleton
+e_dbus_source_writable_skeleton_new
+<SUBSECTION Standard>
+E_DBUS_SOURCE_WRITABLE_SKELETON
+E_DBUS_IS_SOURCE_WRITABLE_SKELETON
+E_DBUS_TYPE_SOURCE_WRITABLE_SKELETON
+E_DBUS_SOURCE_WRITABLE_SKELETON_CLASS
+E_DBUS_IS_SOURCE_WRITABLE_SKELETON_CLASS
+E_DBUS_SOURCE_WRITABLE_SKELETON_GET_CLASS
+EDBusSourceWritableSkeletonClass
+<SUBSECTION Private>
+EDBusSourceWritableSkeletonPrivate
+e_dbus_source_writable_skeleton_get_type
+</SECTION>
+
diff --git a/docs/reference/private/libedbus-private.types b/docs/reference/private/libedbus-private.types
new file mode 100644
index 0000000..84f9e69
--- /dev/null
+++ b/docs/reference/private/libedbus-private.types
@@ -0,0 +1,23 @@
+#include <private/e-dbus-source.h>
+#include <private/e-dbus-source-manager.h>
+#include <private/e-dbus-authenticator.h>
+
+e_dbus_object_get_type
+e_dbus_object_proxy_get_type
+e_dbus_object_skeleton_get_type
+e_dbus_object_manager_client_get_type
+e_dbus_source_get_type
+e_dbus_source_proxy_get_type
+e_dbus_source_skeleton_get_type
+e_dbus_source_manager_get_type
+e_dbus_source_manager_proxy_get_type
+e_dbus_source_manager_skeleton_get_type
+e_dbus_source_removable_get_type
+e_dbus_source_removable_proxy_get_type
+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_authenticator_get_type
+e_dbus_authenticator_proxy_get_type
+e_dbus_authenticator_skeleton_get_type
diff --git a/libebackend/Makefile.am b/libebackend/Makefile.am
index 895818e..0b6c2a6 100644
--- a/libebackend/Makefile.am
+++ b/libebackend/Makefile.am
@@ -13,6 +13,7 @@ lib_LTLIBRARIES = libebackend-1.2.la
 libebackend_1_2_la_CPPFLAGS = \
 	$(AM_CPPFLAGS)						\
 	-I$(top_srcdir)						\
+	-I$(top_srcdir)/private					\
 	-DG_LOG_DOMAIN=\"e-data-server\"			\
 	$(DB_CFLAGS)						\
 	$(SQLITE3_CFLAGS)					\
diff --git a/libedataserver/Makefile.am b/libedataserver/Makefile.am
index 2195d52..c1eb91d 100644
--- a/libedataserver/Makefile.am
+++ b/libedataserver/Makefile.am
@@ -4,11 +4,16 @@ MARSHAL_GENERATED = \
 	e-gdbus-marshallers.h
 @EVO_MARSHAL_RULE@
 
+BUILT_SOURCES = \
+	$(ENUM_GENERATED) \
+	$(MARSHAL_GENERATED)
+
 lib_LTLIBRARIES = libedataserver-1.2.la
 
 libedataserver_1_2_la_CPPFLAGS = \
 	$(AM_CPPFLAGS)							\
 	-I$(top_srcdir)							\
+	-I$(top_srcdir)/private						\
 	-DG_LOG_DOMAIN=\"e-data-server\"				\
 	-DE_DATA_SERVER_PREFIX=\"$(prefix)\"				\
 	-DE_DATA_SERVER_LOCALEDIR=\""$(localedir)"\"			\
@@ -17,12 +22,13 @@ libedataserver_1_2_la_CPPFLAGS = \
 	-DE_DATA_SERVER_UI_UIDIR=\""$(uidir)"\"				\
 	-DDEFAULT_EDS_DBUS_TIMEOUT=$(DEFAULT_EDS_DBUS_TIMEOUT)		\
 	$(E_DATA_SERVER_CFLAGS)						\
+	$(GIO_UNIX_CFLAGS)						\
 	$(SOUP_CFLAGS)							\
 	$(CODE_COVERAGE_CFLAGS)						\
 	$(NULL)
 
 libedataserver_1_2_la_SOURCES =		\
-	$(MARSHAL_GENERATED)		\
+	$(BUILT_SOURCES)		\
 	e-categories.c			\
 	e-client.c			\
 	e-client-private.h		\
@@ -48,7 +54,10 @@ libedataserver_1_2_la_SOURCES =		\
 	eds-version.c
 
 libedataserver_1_2_la_LIBADD =				\
+	$(top_builddir)/camel/libcamel-1.2.la		\
+	$(top_builddir)/private/libedbus-private.la	\
 	$(E_DATA_SERVER_LIBS)				\
+	$(GIO_UNIX_LIBS)				\
 	$(ICONV_LIBS)					\
 	$(SOCKET_LIBS)					\
 	$(SOUP_LIBS)					\
@@ -107,7 +116,6 @@ EXTRA_DIST = 						\
 	$(convert_DATA)					\
 	$(gsettings_SCHEMAS:.xml=.xml.in)
 
-BUILT_SOURCES = $(MARSHAL_GENERATED)
 CLEANFILES = $(BUILT_SOURCES) $(gsettings_SCHEMAS:.xml=.valid)
 
 DISTCLEANFILES = eds-version.h				\
diff --git a/private/Makefile.am b/private/Makefile.am
new file mode 100644
index 0000000..241386e
--- /dev/null
+++ b/private/Makefile.am
@@ -0,0 +1,87 @@
+NULL =
+
+$(GENERATED_DBUS_SOURCE) : Makefile.am org.gnome.evolution.dataserver.Source.xml
+	$(AM_V_GEN) gdbus-codegen \
+	--interface-prefix org.gnome.evolution.dataserver. \
+	--c-namespace E_DBus \
+	--c-generate-object-manager \
+	--generate-c-code e-dbus-source \
+	--generate-docbook e-dbus-source \
+	org.gnome.evolution.dataserver.Source.xml \
+	$(NULL)
+
+$(GENERATED_DBUS_SOURCE_MANAGER) : Makefile.am org.gnome.evolution.dataserver.SourceManager.xml
+	$(AM_V_GEN) gdbus-codegen \
+	--interface-prefix org.gnome.evolution.dataserver. \
+	--c-namespace E_DBus \
+	--generate-c-code e-dbus-source-manager \
+	--generate-docbook e-dbus-source-manager \
+	org.gnome.evolution.dataserver.SourceManager.xml \
+	$(NULL)
+
+$(GENERATED_DBUS_AUTHENTICATOR) : Makefile.am org.gnome.evolution.dataserver.Authenticator.xml
+	$(AM_V_GEN) gdbus-codegen \
+	--interface-prefix org.gnome.evolution.dataserver \
+	--c-namespace E_DBus \
+	--generate-c-code e-dbus-authenticator \
+	--generate-docbook e-dbus-authenticator \
+	org.gnome.evolution.dataserver.Authenticator.xml \
+	$(NULL)
+
+GENERATED_DBUS_SOURCE = \
+	e-dbus-source.c \
+	e-dbus-source.h \
+	$(NULL)
+
+GENERATED_DBUS_SOURCE_MANAGER = \
+	e-dbus-source-manager.c \
+	e-dbus-source-manager.h \
+	$(NULL)
+
+GENERATED_DBUS_AUTHENTICATOR = \
+	e-dbus-authenticator.c \
+	e-dbus-authenticator.h \
+	$(NULL)
+
+BUILT_SOURCES = \
+	$(GENERATED_DBUS_SOURCE) \
+	$(GENERATED_DBUS_SOURCE_MANAGER) \
+	$(GENERATED_DBUS_AUTHENTICATOR) \
+	$(NULL)
+
+noinst_LTLIBRARIES = libedbus-private.la
+
+libedbus_private_la_CPPFLAGS = \
+	$(AM_CPPFLAGS) \
+	-I$(top_srcdir) \
+	$(E_DATA_SERVER_CFLAGS) \
+	$(GIO_UNIX_CFLAGS) \
+	$(CODE_COVERAGE_CFLAGS) \
+	$(NULL)
+
+libedbus_private_la_SOURCES = \
+	$(BUILT_SOURCES) \
+	$(NULL)
+
+libedbus_private_la_LIBADD = \
+	$(E_DATA_SERVER_LIBS) \
+	$(GIO_UNIX_LIBS) \
+	$(NULL)
+
+libedbus_private_la_LDFLAGS = \
+	$(NO_UNDEFINED) \
+	$(CODE_COVERAGE_LDFLAGS) \
+	$(NULL)
+
+EXTRA_DIST = \
+	org.gnome.evolution.dataserver.Source.xml \
+	org.gnome.evolution.dataserver.SourceManager.xml \
+	org.gnome.evolution.dataserver.Authenticator.xml \
+	$(NULL)
+
+CLEANFILES = \
+	$(BUILT_SOURCES) \
+	e-dbus-*-org.gnome.evolution.dataserver.*.xml \
+	$(NULL)
+
+-include $(top_srcdir)/git.mk
diff --git a/private/org.gnome.evolution.dataserver.Authenticator.xml b/private/org.gnome.evolution.dataserver.Authenticator.xml
new file mode 100644
index 0000000..195e73a
--- /dev/null
+++ b/private/org.gnome.evolution.dataserver.Authenticator.xml
@@ -0,0 +1,92 @@
+<!DOCTYPE node PUBLIC
+"-//freedesktop//DTD D-Bus Object Introspection 1.0//EN"
+"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd";>
+<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd";>
+
+<!--
+    org.gnome.evolution.dataserver.Authenticator:
+    @short_description: Authentication interface
+
+    Interface for an authentication session.
+-->
+<interface name="org.gnome.evolution.dataserver.Authenticator">
+  <!--
+      Ready:
+      @encryption_key: Implementation defined encryption key
+
+      Indicates the client is ready to receive Response signals.
+      If this method is not called within a short duration after
+      the object path for this interface is exported, the object
+      path will be unexported.
+  -->
+  <method name="Ready">
+    <arg name="encryption_key" direction="in" type="s"/>
+  </method>
+
+  <!--
+      Cancel:
+
+      Indicates the client no longer wishes to authenticate.
+      Any active or pending authentication prompt will be cancelled,
+      and the object path for this interface will be unexported.
+
+      The object path for this interface will be unexported.
+
+      This method ends the authentication session.
+  -->
+  <method name="Cancel"/>
+
+  <!--
+      Accepted:
+
+      Indicates the most-recently-passed secret was accepted.  If the
+      user wishes, the secret can be copied to a keyring for permanent
+      storage at this point.
+
+      The object path for this interface will be unexported.
+
+      This method ends the authentication session.
+  -->
+  <method name="Accepted"/>
+
+  <!--
+      Rejected:
+
+      Indicates the most-recently-passed secret was rejected.  The
+      client should continue listening for a new Authenticate signal.
+  -->
+  <method name="Rejected"/>
+
+  <!--
+      Authenticate:
+      @encrypted_secret: Encrypted secret string
+
+      Emitted when the user has responded to an authentication prompt.
+
+      The client should attempt to authenticate using the provided
+      secret and then respond by calling either Accepted, Rejected
+      or Cancel.  The Authenticate signal will not be emitted again
+      until the client has responded.
+
+      If at any time the user cancels the authentication prompt, the
+      Dismissed signal is emitted immediately.
+  -->
+  <signal name="Authenticate">
+    <arg name="encrypted_secret" type="s"/>
+  </signal>
+
+  <!--
+      Dismissed:
+
+      Emitted when the user has declined to provide a secret.
+
+      Any further attempts to authenticate the Source will emit a
+      Dismissed signal without interrupting the user.  This state
+      persists until the ResetAuthDismissal method is called.
+
+      This signal ends the authentication session.
+  -->
+  <signal name="Dismissed"/>
+
+</interface>
+
diff --git a/private/org.gnome.evolution.dataserver.Source.xml b/private/org.gnome.evolution.dataserver.Source.xml
new file mode 100644
index 0000000..8eeff50
--- /dev/null
+++ b/private/org.gnome.evolution.dataserver.Source.xml
@@ -0,0 +1,59 @@
+<!DOCTYPE node PUBLIC
+"-//freedesktop//DTD D-Bus Object Introspection 1.0//EN"
+"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd";>
+<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd";>
+
+<!--
+    org.gnome.evolution.dataserver.Source:
+    @short_description: Data source
+
+    This interface is used to represent data sources.
+-->
+<interface name="org.gnome.evolution.dataserver.Source">
+  <!-- UID: The unique identifier for the source. -->
+  <property name="UID" type="s" access="read"/>
+  <!-- Data: Raw key file data describing the source. -->
+  <property name="Data" type="s" access="read"/>
+
+  <!--
+      AllowAuthPrompt:
+
+      If the user declines to provide a secret when prompted, further
+      authentication prompts are inhibited until this method is called.
+  -->
+  <method name="AllowAuthPrompt"/>
+</interface>
+
+<!--
+    org.gnome.evolution.dataserver.Source.Removable:
+    @short_description: Removable data source
+
+    This interface is used to represent removable data sources.
+-->
+<interface name="org.gnome.evolution.dataserver.Source.Removable">
+  <!--
+      Remove:
+
+      Permanently removes the data source.
+  -->
+  <method name="Remove"/>
+</interface>
+
+<!--
+    org.gnome.evolution.dataserver.Source.Writable:
+    @short_description: Writable data source
+
+    This interface is used to represent writable data sources.
+-->
+<interface name="org.gnome.evolution.dataserver.Source.Writable">
+  <!--
+      Write:
+      @data: Raw key file data describing the source.
+
+      Submits new key file data for the source, which is written
+      to disk and then reflected in the Data property.
+  -->
+  <method name="Write">
+    <arg name="data" direction="in" type="s"/>
+  </method>
+</interface>
diff --git a/private/org.gnome.evolution.dataserver.SourceManager.xml b/private/org.gnome.evolution.dataserver.SourceManager.xml
new file mode 100644
index 0000000..a202be6
--- /dev/null
+++ b/private/org.gnome.evolution.dataserver.SourceManager.xml
@@ -0,0 +1,66 @@
+<!DOCTYPE node PUBLIC
+"-//freedesktop//DTD D-Bus Object Introspection 1.0//EN"
+"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd";>
+<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd";>
+
+<!--
+    org.gnome.evolution.dataserver.SourceManager:
+    @short_description: SourceManager interface
+
+    Interface for top-level manager singleton objects.
+-->
+<interface name="org.gnome.evolution.dataserver.SourceManager">
+  <!--
+      Authenticate:
+      @uid: Unique identifier for the authenticating source
+      @prompt_title: The title of the prompt
+      @prompt_message: The prompt message for the user
+      @prompt_description: The detailed description of the prompt
+      @object_path: Object path of a new authentication session
+
+      Initiates a new authentication session at the returned object
+      path.  The client should prepare to receive Response signals
+      from the Authenticator interface at that object path, then
+      call the interface's Ready method.
+
+      The @prompt_title, @prompt_message and @prompt_description
+      arguments are used to construct an authentication prompt if
+      necessary.  (See #GcrPrompt for details.)
+  -->
+  <method name="Authenticate">
+    <arg name="uid" direction="in" type="s"/>
+    <arg name="prompt_title" direction="in" type="s"/>
+    <arg name="prompt_message" direction="in" type="s"/>
+    <arg name="prompt_description" direction="in" type="s"/>
+    <arg name="object_path" direction="out" type="s"/>
+  </method>
+
+  <!--
+      CreateSources:
+      @array: An array of "uid" and "data" pairs
+
+      Creates a new data source for each "uid" and "data" string pair in
+      @array and adds them to the list of managed objects.  The "uid" part
+      is a unique identifier for the new source, and the "data" part is the
+      raw key file data describing the new source.
+  -->
+  <method name="CreateSources">
+    <arg name="array" direction="in" type="a{ss}"/>
+  </method>
+
+  <!--
+      Reload:
+
+      Reloads the registry service as if it were stopped and restarted.
+      Client applications will see all exported objects suddenly removed
+      and replaced by a new and possibly different set of objects.
+
+      The primary use case for this method is to rerun the data migration
+      routines that run automatically on startup.
+
+      A reload can also be triggered by sending the SourceManager process
+      a SIGHUP on platforms that support it.
+  -->
+  <method name="Reload"/>
+</interface>
+



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]