[Telepathy-commits] [telepathy-spec/master] Add a sketch of ChannelRequest, a "cursor"-style object used in the channel dispatcher to track a request
Simon McVittie
simon.mcvittie at collabora.co.uk
Fri Sep 26 08:21:12 PDT 2008
20080711190218-53eee-4aa883fa758cfb233919c7ae1d5ecefc4f4e8722.gz
---
spec/Channel_Request.xml | 130 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 130 insertions(+), 0 deletions(-)
create mode 100644 spec/Channel_Request.xml
diff --git a/spec/Channel_Request.xml b/spec/Channel_Request.xml
new file mode 100644
index 0000000..bc38af8
--- /dev/null
+++ b/spec/Channel_Request.xml
@@ -0,0 +1,130 @@
+<?xml version="1.0" ?>
+<node name="/Channel_Request"
+ 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.ChannelRequest.DRAFT"
+ tp:causes-havoc="experimental">
+
+ <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+ <p>A channel request is an object in the ChannelDispatcher representing
+ an ongoing request for some channels to be created or found.</p>
+
+ <tp:docstring>
+ </tp:docstring>
+ </tp:docstring>
+
+ <method name="RequestChannels">
+ <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+ <p>Actually request the channels.</p>
+
+ <p>This method SHOULD return immediately; on success, the request
+ might still fail, but this will be indicated asynchronously.</p>
+
+ <tp:rationale>
+ <p>The request can take a long time - in the worst case, the
+ channel dispatcher has to ask the account manager to put the
+ account online, the account manager has to ask the operating
+ system to obtain an Internet connection, and the operating
+ system has to ask the user whether to activate an Internet
+ connection using an on-demand mechanism like dialup.</p>
+ </tp:rationale>
+ </tp:docstring>
+
+ <arg direction="in" name="Connection" type="o">
+ <tp:docstring>
+ The connection to be used, which MUST already have status
+ Connection_Status_Connected. Its well-known bus name can be derived
+ by removing the leading '/' and replacing all subsequent '/'
+ characters with '.', so it does not need to be provided explicitly.
+ </tp:docstring>
+ </arg>
+
+ <arg direction="in" name="Request_Flags" type="u"
+ tp:type="Channel_Request_Flags">
+ <tp:docstring>
+ Flags to influence the connection manager's behaviour - see the
+ corresponding argument to
+ <tp:dbus-ref namespace="org.freedesktop.Telepathy">Connection.Interface.Requests.DRAFT.RequestChannels</tp:dbus-ref>.
+ </tp:docstring>
+ </arg>
+
+ <arg direction="in" name="Requests" type="aa{sv}"
+ tp:type="Qualified_Property_Value_Map[]">
+ <tp:docstring>
+ The requested channels - see the corresponding argument to
+ <tp:dbus-ref namespace="org.freedesktop.Telepathy">Connection.Interface.Requests.DRAFT.RequestChannels</tp:dbus-ref>.
+ </tp:docstring>
+ </arg>
+
+ <arg direction="in" name="Preferred_Handler" type="s"
+ tp:type="DBus_Bus_Name">
+ <tp:docstring>
+ Either the well-known bus name of the preferred handler for this
+ channel, or an empty string to indicate that any handler would be
+ acceptable. The channel dispatcher SHOULD dispatch as many as
+ possible of the resulting channels (ideally, all of them)
+ to that handler.
+ </tp:docstring>
+ </arg>
+
+ <tp:possible-errors>
+ <tp:error name="org.freedesktop.Telepathy.Errors.NotAvailable">
+ <tp:docstring>
+ This method has already been called, so it is no longer
+ available. Stop calling it.
+ </tp:docstring>
+ </tp:error>
+ </tp:possible-errors>
+ </method>
+
+ <signal name="Failed">
+ <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+ <p>The channel request has failed. It is no longer present,
+ and further methods must not be called on it.</p>
+ </tp:docstring>
+
+ <arg name="Error" type="s" tp:type="DBus_Error_Name">
+ <tp:docstring>
+ The name of a D-Bus error raised when RequestChannels was
+ called on the Connection, or if RequestChannels could not even
+ be called, a suitable D-Bus error.
+ </tp:docstring>
+ </arg>
+
+ <arg name="Debug_Message" type="s">
+ <tp:docstring>
+ If the first argument of the D-Bus error message was a string,
+ that string. Otherwise, an empty string.
+ </tp:docstring>
+ </arg>
+ </signal>
+
+ <signal name="Succeeded">
+ <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+ <p>The channel request has succeeded. It is no longer present,
+ and further methods must not be called on it.</p>
+ </tp:docstring>
+ </signal>
+
+ </interface>
+</node>
+<!-- vim:set sw=2 sts=2 et ft=xml: -->
--
1.5.6.5
More information about the Telepathy-commits
mailing list