diff options
Diffstat (limited to 'spec/Channel_Dispatcher_Interface_Operation_List.xml')
-rw-r--r-- | spec/Channel_Dispatcher_Interface_Operation_List.xml | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/spec/Channel_Dispatcher_Interface_Operation_List.xml b/spec/Channel_Dispatcher_Interface_Operation_List.xml new file mode 100644 index 000000000..40cd86e54 --- /dev/null +++ b/spec/Channel_Dispatcher_Interface_Operation_List.xml @@ -0,0 +1,138 @@ +<?xml version="1.0" ?> +<node name="/Channel_Dispatcher_Interface_Operation_List" + xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0"> + + <tp:copyright>Copyright (C) 2008 Collabora Ltd.</tp:copyright> + <tp:copyright>Copyright (C) 2008 Nokia Corporation</tp:copyright> + <tp:license xmlns="http://www.w3.org/1999/xhtml"> + <p>This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version.</p> + + <p>This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details.</p> + + <p>You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, + USA.</p> + </tp:license> + + <interface name="org.freedesktop.Telepathy.ChannelDispatcher.Interface.OperationList.DRAFT" + tp:causes-havoc="experimental"> + + <tp:requires interface="org.freedesktop.Telepathy.ChannelDispatcher.DRAFT"/> + + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p>This interface allows users of the ChannelDispatcher to enumerate + all the pending dispatch operations, with change notification.</p> + + <tp:rationale> + <p>The existence of the DispatchOperations property allows a newly + started approver to pick up existing dispatch operations.</p> + + <p>This is on a separate interface so clients that aren't interested + in doing this aren't woken up by its signals.</p> + </tp:rationale> + </tp:docstring> + + <tp:struct name="Dispatch_Operation_Details" + array-name="Dispatch_Operation_Details_List"> + + <tp:docstring> + Details of a channel dispatch operation. + </tp:docstring> + + <tp:member name="Channel_Dispatch_Operation" type="o"> + <tp:docstring> + The object path of the + <tp:dbus-ref + namespace="org.freedesktop.Telepathy">ChannelDispatchOperation</tp:dbus-ref>. + </tp:docstring> + </tp:member> + + <tp:member name="Properties" type="a{sv}" + tp:type="Qualified_Property_Value_Map"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p>Properties of the channel dispatch operation.</p> + + <p>Connection managers MUST NOT include properties in this mapping + if their values can change. Clients MUST ignore properties + that appear in this mapping if their values can change.</p> + + <tp:rationale> + <p>The rationale is the same as for + <tp:type-ref>Channel_Details</tp:type-ref>.</p> + </tp:rationale> + + <p>Each dictionary MUST contain at least the following keys:</p> + <ul> + <li><tp:dbus-ref>org.freedesktop.Telepathy.ChannelDispatchOperation.DRAFT.Interfaces</tp:dbus-ref></li> + <li><tp:dbus-ref>org.freedesktop.Telepathy.ChannelDispatchOperation.DRAFT.Connection</tp:dbus-ref></li> + <li><tp:dbus-ref>org.freedesktop.Telepathy.ChannelDispatchOperation.DRAFT.Account</tp:dbus-ref></li> + <li><tp:dbus-ref>org.freedesktop.Telepathy.ChannelDispatchOperation.DRAFT.Channels</tp:dbus-ref></li> + <li><tp:dbus-ref>org.freedesktop.Telepathy.ChannelDispatchOperation.DRAFT.PossibleHandlers</tp:dbus-ref></li> + </ul> + </tp:docstring> + </tp:member> + </tp:struct> + + <property + name="DispatchOperations" tp:name-for-bindings="Dispatch_Operations" + type="a(oa{sv})" tp:type="Dispatch_Operation_Details[]" access="read"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p>The list of ChannelDispatchOperation objects currently being + processed. Change notification is via the NewDispatch and + DispatchFinished signals.</p> + </tp:docstring> + </property> + + <signal name="NewDispatchOperation" + tp:name-for-bindings="New_Dispatch_Operation"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p>Emitted when a dispatch operation is added to + <tp:member-ref>DispatchOperations</tp:member-ref>.</p> + </tp:docstring> + + <arg name="Dispatch_Operation" type="o"> + <tp:docstring> + The dispatch operation that was created. + </tp:docstring> + </arg> + + <arg name="Properties" + type="a{sv}" tp:type="Qualified_Property_Value_Map"> + <tp:docstring> + The same properties that would appear in the Properties member of + <tp:type-ref>Dispatch_Operation_Details</tp:type-ref>. + </tp:docstring> + </arg> + </signal> + + <signal name="DispatchOperationFinished" + tp:name-for-bindings="Dispatch_Operation_Finished"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + Emitted when a dispatch operation finishes (i.e. exactly once per + emission of <tp:dbus-ref + namespace="org.freedesktop.Telepathy">ChannelDispatchOperation.DRAFT.Finished</tp:dbus-ref>). + + <tp:rationale> + Strictly speaking this is redundant with + ChannelDispatchOperation.Finished, but it provides full + change-notification for the DispatchOperations property. + </tp:rationale> + </tp:docstring> + + <arg name="Dispatch_Operation" type="o"> + <tp:docstring> + The dispatch operation that was closed. + </tp:docstring> + </arg> + </signal> + + </interface> +</node> +<!-- vim:set sw=2 sts=2 et ft=xml: --> |