From 346153c4fe9a3bbb4de4e25fd769372b46de76e4 Mon Sep 17 00:00:00 2001
From: Simon McVittie
Date: Wed, 6 Nov 2013 19:04:27 +0000
Subject: [PATCH 4/4] Do not list Requests in the Interfaces property
---
spec/Connection.xml | 11 +++++++++++
spec/Connection_Interface_Requests.xml | 16 ++++++++++++----
spec/Protocol.xml | 6 +++++-
3 files changed, 28 insertions(+), 5 deletions(-)
diff --git a/spec/Connection.xml b/spec/Connection.xml
index 1af4786..606ce4f 100644
--- a/spec/Connection.xml
+++ b/spec/Connection.xml
@@ -67,6 +67,17 @@ USA.
to have evaluated the server's functionality and enabled any extra
interfaces for the remainder of the Connection's lifetime.
+
+ As a special case, the mandatory Requests
+ interface SHOULD NOT be listed in this property.
+
+
+ It has been mandatory since Telepathy 0.18 in 2009,
+ and contains essential functionality for this interface,
+ so there seems no point in wasting bytes on capability discovery
+ for it.
+
diff --git a/spec/Connection_Interface_Requests.xml b/spec/Connection_Interface_Requests.xml
index c08860f..c34b8c1 100644
--- a/spec/Connection_Interface_Requests.xml
+++ b/spec/Connection_Interface_Requests.xml
@@ -26,10 +26,18 @@
(as stable API)
- An enhanced version of the Telepathy connection interface, which can
- represent bundles of channels that should be dispatched together, and
- does not assume any particular properties by which channels are
- uniquely identifiable.
+ An interface for channel requests and channel lists. Under
+ normal circumstances, applications should deal with this
+ interface via the ChannelDispatcher,
+ but lower-level Telepathy applications (such as the
+ ChannelDispatcher itself) might need to use this interface
+ directly.
+
+ This interface is conceptually part of the core Connection
+ interface, but is kept separate so that its properties will
+ normally only need to be retrieved by the ChannelDispatcher,
+ and its signals will normally only wake up the ChannelDispatcher.
diff --git a/spec/Protocol.xml b/spec/Protocol.xml
index 610ecfc..a729393 100644
--- a/spec/Protocol.xml
+++ b/spec/Protocol.xml
@@ -53,7 +53,7 @@ Interfaces=
[Protocol example]
Interfaces=
-ConnectionInterfaces=im.telepathy.v1.Connection.Interface.Requests;
+ConnectionInterfaces=im.telepathy.v1.Connection.Interface.Aliasing;
param-account=s required
param-password=s required secret
RequestableChannelClasses=text;
@@ -137,6 +137,10 @@ allowed=im.telepathy.v1.Channel.TargetHandle;im.telepathy.v1.Channel.TargetID;
.manager
file, using the key
ConnectionInterfaces
. The corresponding value
is a list of D-Bus interface names, each followed by a semicolon.
+
+ As a special case, the mandatory Requests
+ interface SHOULD NOT be listed in this property.
--
1.8.4.2