[Telepathy-commits] [telepathy-spec/master] ChannelDispatcher: explain what happens when CreateChannel is called on a disabled channel

Simon McVittie simon.mcvittie at collabora.co.uk
Mon Sep 15 10:04:00 PDT 2008


---
 spec/Channel_Dispatcher.xml |   20 +++++++++++++++++---
 1 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/spec/Channel_Dispatcher.xml b/spec/Channel_Dispatcher.xml
index e60ea38..e83a204 100644
--- a/spec/Channel_Dispatcher.xml
+++ b/spec/Channel_Dispatcher.xml
@@ -116,9 +116,23 @@
             timing out, which is not the behaviour we want.</p>
         </tp:rationale>
 
-        <p>(FIXME: something needs to explain what will happen if the Account
-          is disabled - raise PermissionDenied from Proceed, or emit
-          Failed?)</p>
+        <p>If this method is called for an Account that is disabled, invalid
+          or otherwise unusable, no error is signalled until
+          <tp:member-ref
+            namespace="org.freedesktop.Telepathy">ChannelRequest.Proceed</tp:member-ref>
+          is called, at which point
+          <tp:member-ref
+            namespace="org.freedesktop.Telepathy">ChannelRequest.Failed</tp:member-ref>
+          is emitted with an appropriate error.</p>
+
+        <tp:rationale>
+          <p>This means there's only one code path for errors, apart from
+            InvalidArgument for "that request makes no sense".</p>
+
+          <p>It also means that the request will proceed if the account is
+            enabled after calling CreateChannel, but before calling
+            Proceed.</p>
+        </tp:rationale>
       </tp:docstring>
 
       <arg direction="in" name="Account" type="o">
-- 
1.5.6.5




More information about the Telepathy-commits mailing list