[Telepathy-commits] [telepathy-spec/master] Rename ContactInfo2 to ContactInfo

Will Thompson will.thompson at collabora.co.uk
Thu Jan 15 09:48:50 PST 2009


---
 spec/Connection_Interface_Contact_Info.xml  |  323 +++++++++++++++++++++++++++
 spec/Connection_Interface_Contact_Info2.xml |  323 ---------------------------
 spec/all.xml                                |    2 +-
 3 files changed, 324 insertions(+), 324 deletions(-)
 create mode 100644 spec/Connection_Interface_Contact_Info.xml
 delete mode 100644 spec/Connection_Interface_Contact_Info2.xml

diff --git a/spec/Connection_Interface_Contact_Info.xml b/spec/Connection_Interface_Contact_Info.xml
new file mode 100644
index 0000000..6f16028
--- /dev/null
+++ b/spec/Connection_Interface_Contact_Info.xml
@@ -0,0 +1,323 @@
+<?xml version="1.0" ?>
+<node name="/Connection_Interface_Contact_Info" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
+  <tp:copyright> Copyright (C) 2008 Collabora Limited </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.Connection.Interface.ContactInfo">
+    <tp:requires interface="org.freedesktop.Telepathy.Connection"/>
+
+    <tp:struct name="Contact_Info_Field" array-name="Contact_Info_Field_List">
+      <tp:member type="s" name="Field_Name">
+        <tp:docstring>
+          The name of the field; this is the lowercased name of a vCard field.
+          For example, a field representing a contact's address would be named
+          "adr".
+        </tp:docstring>
+      </tp:member>
+      <tp:member type="as" name="Field_Flags">
+        <tp:docstring>
+          A list of (lowercased) vCard field types applicable to this field.
+          For example, a contact's preferred home address would have flags
+          'home' and 'pref'.
+
+          <tp:rationale>
+            This is a list of strings rather than a bitwise OR of enum members
+            because vCard field types are essentially arbitrary strings.
+          </tp:rationale>
+        </tp:docstring>
+      </tp:member>
+      <tp:member type="as" name="Field_Value">
+        <tp:docstring>
+          For unstructured vCard fields (such as 'fn', a formatted name
+          field), a single-element array containing the field's value; for
+          structured fields (such as 'adr', an address field), an array
+          corresponding to the semicolon-separated elements of the field (with
+          empty strings for empty elements).  A vCard field with multiple
+          comma-separated values should be represented by several
+          <tp:type>Contact_Info_Field</tp:type>s.  Characters which are
+          required to be escaped in vCard values, such as semi-colons, should
+          not be escaped in this list.
+
+          <tp:rationale>
+            An earlier draft of this interface split structured vCard fields
+            into multiple Telepathy-level fields; for example, 'n' became
+            'family-name', 'given-name', etc.  But under this representation,
+            omitting empty components leads to difficulty identifying where one
+            name ends and another begins.  Consider the fields ['given-name',
+            'honorific-suffixes', 'family-name', 'honorific-prefixes']: does
+            this represent two 'n' fields, or one with incorrect component
+            ordering?
+          </tp:rationale>
+        </tp:docstring>
+      </tp:member>
+      <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+        <p>Represents one piece of information about a contact, as modelled by
+          a single vCard field. Of the fields defined in RFC 2426, common
+          examples include:</p>
+
+        <dl>
+          <dt>fn</dt>
+          <dd>The contact's full name, formatted to their liking</dd>
+
+          <dt>n</dt>
+          <dd>The contact's full name, divided into five parts: family name,
+            given name, additional names, honorific prefixes, and honorific
+            suffixes</dd>
+
+          <dt>org</dt>
+          <dd>The contact's organisation, divided into the organization's name
+            possibly followed by one or more organizational unit names.</dd>
+
+          <dt>adr</dt>
+          <dd>A street address for the contact, divided into seven components:
+            post office box, extended address, street address, locality (e.g.,
+            city), region (e.g., state or province), the postal code, and the
+            country name.</dd>
+
+          <dt>tel</dt>
+          <dd>A telephone number for the contact.</dd>
+
+          <dt>email</dt>
+          <dd>An email address for the contact.</dd>
+        </dl>
+
+        <p>For example, the following vCard:</p>
+
+        <pre>
+   BEGIN:vCard
+   VERSION:3.0
+   FN:Wee Ninja
+   N:Ninja;Wee;;;-san
+   ORG:Collabora, Ltd.;Human Resources\; Company Policy Enforcement
+   ADR;TYPE=WORK,POSTAL,PARCEL:;;11 Kings Parade;Cambridge;Cambridgeshire
+    ;CB2 1SJ;UK
+   TEL;TYPE=VOICE,WORK:+44 1223 362967, +44 7700 900753
+   EMAIL;TYPE=INTERNET,PREF:wee.ninja at collabora.co.uk
+   EMAIL;TYPE=INTERNET:wee.ninja at example.com
+   URL:http://www.thinkgeek.com/geektoys/plush/8823/
+   END:vCard</pre>
+
+        <p>would be represented by (in Python-like syntax):</p>
+
+        <pre>
+[
+  ('fn', [], ['Wee Ninja']),
+  ('n', [], ['Ninja', 'Wee', '', '', '-san']),
+  ('org', [], ['Collabora, Ltd.', 'Human Resources; Company Policy Enforcement']),
+  ('adr', ['work','postal','parcel'], ['','','11 Kings Parade','Cambridge',
+                                       'Cambridgeshire','CB2 1SJ','UK']),
+  ('tel', ['voice','work'], ['+44 1223 362967']),
+  ('tel', ['voice','work'], ['+44 7700 900753']),
+  ('email', ['internet','pref'], ['wee.ninja at collabora.co.uk']),
+  ('email', ['internet'], ['wee.ninja at example.com']),
+  ('url', [], ['http://www.thinkgeek.com/geektoys/plush/8823/']),
+]</pre>
+      </tp:docstring>
+    </tp:struct>
+
+    <tp:mapping name="Contact_Info_Map" array-name="">
+      <tp:docstring>A dictionary whose keys are contact handles and whose
+        values are contact information..</tp:docstring>
+      <tp:member type="u" tp:type="Contact_Handle" name="Handle"/>
+      <tp:member type="a(sasas)" tp:type="Contact_Info_Field[]"
+        name="Contact_Info"/>
+    </tp:mapping>
+
+    <signal name="ContactInfoChanged" tp:name-for-bindings="ContactInfoChanged">
+      <arg name="Contact" type="u" tp:type="Contact_Handle">
+        <tp:docstring>
+          An integer handle for the contact whose info has changed.
+        </tp:docstring>
+      </arg>
+      <arg name="ContactInfo" type="a(sasas)" tp:type="Contact_Info_Field[]">
+        <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+          An array of fields representing information about this contact.
+        </tp:docstring>
+      </arg>
+      <tp:docstring>
+        Emitted when a contact's information has changed or been received for
+        the first time on this connection.
+      </tp:docstring>
+    </signal>
+
+    <method name="GetContactInfo"
+      tp:name-for-bindings="Get_Contact_Info">
+      <arg direction="in" name="Contacts" type="au" tp:type="Contact_Handle[]">
+        <tp:docstring>
+          An array of handles representing contacts.
+        </tp:docstring>
+      </arg>
+      <arg direction="out" name="ContactInfo" type="a{ua(sasas)}"
+        tp:type="Contact_Info_Map">
+        <tp:docstring>
+          A dictionary mapping contact handles to information, whose keys are
+          the subset of the requested list of handles for which information was
+          cached.
+        </tp:docstring>
+      </arg>
+      <tp:docstring>
+        Request information on several contacts at once.  This SHOULD only
+        return cached information, omitting handles for which no information is
+        cached from the returned map.  For contacts without cached information,
+        the information SHOULD be requested from the network, with the result
+        signalled later by <tp:member-ref>ContactInfoChanged</tp:member-ref>.
+      </tp:docstring>
+    </method>
+
+    <method name="RequestContactInfo"
+      tp:name-for-bindings="Request_Contact_Info">
+      <arg direction="in" name="Contact" type="u" tp:type="Contact_Handle">
+        <tp:docstring>
+          An integer handle for a contact.
+        </tp:docstring>
+      </arg>
+      <arg direction="out" name="Contact_Info" type="a(sasas)"
+        tp:type="Contact_Info_Field[]">
+        <tp:docstring>
+          Information about that contact.
+        </tp:docstring>
+      </arg>
+      <tp:docstring>
+        Retrieve information for a contact, requesting it from the network if
+        it is not cached locally.
+      </tp:docstring>
+      <tp:possible-errors>
+        <tp:error name="org.freedesktop.Telepathy.Error.NotAvailable">
+          <tp:docstring>
+            The contact's information could not be retrieved.
+          </tp:docstring>
+        </tp:error>
+      </tp:possible-errors>
+    </method>
+
+    <method name="SetContactInfo" tp:name-for-bindings="Set_Contact_Info">
+      <tp:docstring>
+        Set new contact information for this connection, replacing existing
+        information.  This method is only suppported if
+        <tp:member-ref>ContactInfoFlags</tp:member-ref> contains
+        <code>Can_Set</code>, and may only be passed fields conforming to
+        <tp:member-ref>SupportedFields</tp:member-ref>.
+      </tp:docstring>
+      <arg direction="in" name="ContactInfo" type="a(sasas)"
+        tp:type="Contact_Info_Field[]">
+        <tp:docstring>
+          The new information to be set.
+        </tp:docstring>
+      </arg>
+      <tp:possible-errors>
+        <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/>
+        <tp:error name="org.freedesktop.Telepathy.Error.NetworkError"/>
+        <tp:error name="org.freedesktop.Telepathy.Error.PermissionDenied"/>
+        <tp:error name="org.freedesktop.Telepathy.Error.NotAvailable"/>
+        <tp:error name="org.freedesktop.Telepathy.Error.NotImplemented">
+          <tp:docstring>
+            Setting your own information is not supported on this protocol.
+          </tp:docstring>
+        </tp:error>
+        <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument">
+          <tp:docstring>
+            The supplied fields do not match the restrictions specified by
+            <tp:member-ref>SupportedFields</tp:member-ref>.
+          </tp:docstring>
+        </tp:error>
+      </tp:possible-errors>
+    </method>
+
+    <tp:enum name="Contact_Info_Flag" value-prefix="Contact_Info_Flag"
+      type="u">
+      <tp:docstring>
+        Flags defining the behaviour of contact information on this protocol.
+        Some protocols provide no information on contacts without an explicit
+        request; others always push information to the connection manager as
+        and when it changes.
+      </tp:docstring>
+
+      <tp:enumvalue suffix="Can_Set" value="1">
+        <tp:docstring>
+          Indicates that <tp:member-ref>SetContactInfo</tp:member-ref> is
+          supported on this connection.
+        </tp:docstring>
+      </tp:enumvalue>
+
+      <tp:enumvalue suffix="Push" value="2">
+        <tp:docstring>
+          Indicates that the protocol pushes all contacts' information to the
+          connection manager without prompting. If set,
+          <tp:member-ref>RequestContactInfo</tp:member-ref> will not cause a
+          network roundtrip and
+          <tp:member-ref>ContactInfoChanged</tp:member-ref> will be emitted
+          whenever contacts' information changes.
+        </tp:docstring>
+      </tp:enumvalue>
+    </tp:enum>
+
+    <property name="ContactInfoFlags" type="u" access="read"
+      tp:type="Contact_Info_Flag" tp:name-for-bindings="Contact_Info_Flags">
+      <tp:docstring>
+        An integer representing the bitwise-OR of flags on this channel. This
+        property should be constant over the lifetime of a connection.
+      </tp:docstring>
+    </property>
+
+    <tp:struct name="Field_Spec" array-name="Field_Specs">
+      <tp:docstring>A struct describing a vCard field, with flags, that may be
+        passed to <tp:member-ref>SetContactInfo</tp:member-ref> on this
+        Connection.</tp:docstring>
+
+      <tp:member type="s" name="Name">
+        <tp:docstring>A vCard field name, such as 'tel'.</tp:docstring>
+      </tp:member>
+
+      <tp:member type="as" name="Flags">
+        <tp:docstring>The set of vCard flags which may be set on this
+          field.</tp:docstring>
+      </tp:member>
+
+      <tp:member type="b" name="Mandatory">
+        <tp:docstring>True if those flags must be set on this field, as opposed
+          to being optional.</tp:docstring>
+      </tp:member>
+
+      <tp:member type="u" name="Max">
+        <tp:docstring>Maximum number of instances of this field which may be
+          set.  MAXUINT32 is used to indicate that there is no
+          limit.</tp:docstring>
+      </tp:member>
+    </tp:struct>
+
+    <property name="SupportedFields" type="a(sasbu)" tp:type="Field_Spec[]"
+      access="read" tp:name-for-bindings="Supported_Fields">
+      <tp:docstring>
+        A list of field specifications describing the kinds of fields which may
+        be passed to <tp:member-ref>SetContactInfo</tp:member-ref>.  The empty
+        list indicates that arbitrary vCard fields are permitted.  This
+        property SHOULD be the empty list, and be ignored by clients, if
+        <tp:member-ref>ContactInfoFlags</tp:member-ref> does not contain the
+        Can_Set <tp:type>Contact_Info_Flag</tp:type>.
+      </tp:docstring>
+    </property>
+
+    <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+      <p>An interface for requesting information about a contact on a given
+        connection. Information is represented as a list of
+        <tp:type>Contact_Info_Field</tp:type>s forming a
+        structured representation of a vCard (as defined by RFC 2426), using
+        field names and semantics defined therein.</p>
+    </tp:docstring>
+  </interface>
+</node>
+<!-- vim:set sw=2 sts=2 et ft=xml: -->
diff --git a/spec/Connection_Interface_Contact_Info2.xml b/spec/Connection_Interface_Contact_Info2.xml
deleted file mode 100644
index df28a15..0000000
--- a/spec/Connection_Interface_Contact_Info2.xml
+++ /dev/null
@@ -1,323 +0,0 @@
-<?xml version="1.0" ?>
-<node name="/Connection_Interface_Contact_Info2" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
-  <tp:copyright> Copyright (C) 2008 Collabora Limited </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.Connection.Interface.ContactInfo2">
-    <tp:requires interface="org.freedesktop.Telepathy.Connection"/>
-
-    <tp:struct name="Contact_Info_Field" array-name="Contact_Info_Field_List">
-      <tp:member type="s" name="Field_Name">
-        <tp:docstring>
-          The name of the field; this is the lowercased name of a vCard field.
-          For example, a field representing a contact's address would be named
-          "adr".
-        </tp:docstring>
-      </tp:member>
-      <tp:member type="as" name="Field_Flags">
-        <tp:docstring>
-          A list of (lowercased) vCard field types applicable to this field.
-          For example, a contact's preferred home address would have flags
-          'home' and 'pref'.
-
-          <tp:rationale>
-            This is a list of strings rather than a bitwise OR of enum members
-            because vCard field types are essentially arbitrary strings.
-          </tp:rationale>
-        </tp:docstring>
-      </tp:member>
-      <tp:member type="as" name="Field_Value">
-        <tp:docstring>
-          For unstructured vCard fields (such as 'fn', a formatted name
-          field), a single-element array containing the field's value; for
-          structured fields (such as 'adr', an address field), an array
-          corresponding to the semicolon-separated elements of the field (with
-          empty strings for empty elements).  A vCard field with multiple
-          comma-separated values should be represented by several
-          <tp:type>Contact_Info_Field</tp:type>s.  Characters which are
-          required to be escaped in vCard values, such as semi-colons, should
-          not be escaped in this list.
-
-          <tp:rationale>
-            An earlier draft of this interface split structured vCard fields
-            into multiple Telepathy-level fields; for example, 'n' became
-            'family-name', 'given-name', etc.  But under this representation,
-            omitting empty components leads to difficulty identifying where one
-            name ends and another begins.  Consider the fields ['given-name',
-            'honorific-suffixes', 'family-name', 'honorific-prefixes']: does
-            this represent two 'n' fields, or one with incorrect component
-            ordering?
-          </tp:rationale>
-        </tp:docstring>
-      </tp:member>
-      <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
-        <p>Represents one piece of information about a contact, as modelled by
-          a single vCard field. Of the fields defined in RFC 2426, common
-          examples include:</p>
-
-        <dl>
-          <dt>fn</dt>
-          <dd>The contact's full name, formatted to their liking</dd>
-
-          <dt>n</dt>
-          <dd>The contact's full name, divided into five parts: family name,
-            given name, additional names, honorific prefixes, and honorific
-            suffixes</dd>
-
-          <dt>org</dt>
-          <dd>The contact's organisation, divided into the organization's name
-            possibly followed by one or more organizational unit names.</dd>
-
-          <dt>adr</dt>
-          <dd>A street address for the contact, divided into seven components:
-            post office box, extended address, street address, locality (e.g.,
-            city), region (e.g., state or province), the postal code, and the
-            country name.</dd>
-
-          <dt>tel</dt>
-          <dd>A telephone number for the contact.</dd>
-
-          <dt>email</dt>
-          <dd>An email address for the contact.</dd>
-        </dl>
-
-        <p>For example, the following vCard:</p>
-
-        <pre>
-   BEGIN:vCard
-   VERSION:3.0
-   FN:Wee Ninja
-   N:Ninja;Wee;;;-san
-   ORG:Collabora, Ltd.;Human Resources\; Company Policy Enforcement
-   ADR;TYPE=WORK,POSTAL,PARCEL:;;11 Kings Parade;Cambridge;Cambridgeshire
-    ;CB2 1SJ;UK
-   TEL;TYPE=VOICE,WORK:+44 1223 362967, +44 7700 900753
-   EMAIL;TYPE=INTERNET,PREF:wee.ninja at collabora.co.uk
-   EMAIL;TYPE=INTERNET:wee.ninja at example.com
-   URL:http://www.thinkgeek.com/geektoys/plush/8823/
-   END:vCard</pre>
-
-        <p>would be represented by (in Python-like syntax):</p>
-
-        <pre>
-[
-  ('fn', [], ['Wee Ninja']),
-  ('n', [], ['Ninja', 'Wee', '', '', '-san']),
-  ('org', [], ['Collabora, Ltd.', 'Human Resources; Company Policy Enforcement']),
-  ('adr', ['work','postal','parcel'], ['','','11 Kings Parade','Cambridge',
-                                       'Cambridgeshire','CB2 1SJ','UK']),
-  ('tel', ['voice','work'], ['+44 1223 362967']),
-  ('tel', ['voice','work'], ['+44 7700 900753']),
-  ('email', ['internet','pref'], ['wee.ninja at collabora.co.uk']),
-  ('email', ['internet'], ['wee.ninja at example.com']),
-  ('url', [], ['http://www.thinkgeek.com/geektoys/plush/8823/']),
-]</pre>
-      </tp:docstring>
-    </tp:struct>
-
-    <tp:mapping name="Contact_Info_Map" array-name="">
-      <tp:docstring>A dictionary whose keys are contact handles and whose
-        values are contact information..</tp:docstring>
-      <tp:member type="u" tp:type="Contact_Handle" name="Handle"/>
-      <tp:member type="a(sasas)" tp:type="Contact_Info_Field[]"
-        name="Contact_Info"/>
-    </tp:mapping>
-
-    <signal name="ContactInfoChanged" tp:name-for-bindings="ContactInfoChanged">
-      <arg name="Contact" type="u" tp:type="Contact_Handle">
-        <tp:docstring>
-          An integer handle for the contact whose info has changed.
-        </tp:docstring>
-      </arg>
-      <arg name="ContactInfo" type="a(sasas)" tp:type="Contact_Info_Field[]">
-        <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
-          An array of fields representing information about this contact.
-        </tp:docstring>
-      </arg>
-      <tp:docstring>
-        Emitted when a contact's information has changed or been received for
-        the first time on this connection.
-      </tp:docstring>
-    </signal>
-
-    <method name="GetContactInfo"
-      tp:name-for-bindings="Get_Contact_Info">
-      <arg direction="in" name="Contacts" type="au" tp:type="Contact_Handle[]">
-        <tp:docstring>
-          An array of handles representing contacts.
-        </tp:docstring>
-      </arg>
-      <arg direction="out" name="ContactInfo" type="a{ua(sasas)}"
-        tp:type="Contact_Info_Map">
-        <tp:docstring>
-          A dictionary mapping contact handles to information, whose keys are
-          the subset of the requested list of handles for which information was
-          cached.
-        </tp:docstring>
-      </arg>
-      <tp:docstring>
-        Request information on several contacts at once.  This SHOULD only
-        return cached information, omitting handles for which no information is
-        cached from the returned map.  For contacts without cached information,
-        the information SHOULD be requested from the network, with the result
-        signalled later by <tp:member-ref>ContactInfoChanged</tp:member-ref>.
-      </tp:docstring>
-    </method>
-
-    <method name="RequestContactInfo"
-      tp:name-for-bindings="Request_Contact_Info">
-      <arg direction="in" name="Contact" type="u" tp:type="Contact_Handle">
-        <tp:docstring>
-          An integer handle for a contact.
-        </tp:docstring>
-      </arg>
-      <arg direction="out" name="Contact_Info" type="a(sasas)"
-        tp:type="Contact_Info_Field[]">
-        <tp:docstring>
-          Information about that contact.
-        </tp:docstring>
-      </arg>
-      <tp:docstring>
-        Retrieve information for a contact, requesting it from the network if
-        it is not cached locally.
-      </tp:docstring>
-      <tp:possible-errors>
-        <tp:error name="org.freedesktop.Telepathy.Error.NotAvailable">
-          <tp:docstring>
-            The contact's information could not be retrieved.
-          </tp:docstring>
-        </tp:error>
-      </tp:possible-errors>
-    </method>
-
-    <method name="SetContactInfo" tp:name-for-bindings="Set_Contact_Info">
-      <tp:docstring>
-        Set new contact information for this connection, replacing existing
-        information.  This method is only suppported if
-        <tp:member-ref>ContactInfoFlags</tp:member-ref> contains
-        <code>Can_Set</code>, and may only be passed fields conforming to
-        <tp:member-ref>SupportedFields</tp:member-ref>.
-      </tp:docstring>
-      <arg direction="in" name="ContactInfo" type="a(sasas)"
-        tp:type="Contact_Info_Field[]">
-        <tp:docstring>
-          The new information to be set.
-        </tp:docstring>
-      </arg>
-      <tp:possible-errors>
-        <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/>
-        <tp:error name="org.freedesktop.Telepathy.Error.NetworkError"/>
-        <tp:error name="org.freedesktop.Telepathy.Error.PermissionDenied"/>
-        <tp:error name="org.freedesktop.Telepathy.Error.NotAvailable"/>
-        <tp:error name="org.freedesktop.Telepathy.Error.NotImplemented">
-          <tp:docstring>
-            Setting your own information is not supported on this protocol.
-          </tp:docstring>
-        </tp:error>
-        <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument">
-          <tp:docstring>
-            The supplied fields do not match the restrictions specified by
-            <tp:member-ref>SupportedFields</tp:member-ref>.
-          </tp:docstring>
-        </tp:error>
-      </tp:possible-errors>
-    </method>
-
-    <tp:enum name="Contact_Info_Flag" value-prefix="Contact_Info_Flag"
-      type="u">
-      <tp:docstring>
-        Flags defining the behaviour of contact information on this protocol.
-        Some protocols provide no information on contacts without an explicit
-        request; others always push information to the connection manager as
-        and when it changes.
-      </tp:docstring>
-
-      <tp:enumvalue suffix="Can_Set" value="1">
-        <tp:docstring>
-          Indicates that <tp:member-ref>SetContactInfo</tp:member-ref> is
-          supported on this connection.
-        </tp:docstring>
-      </tp:enumvalue>
-
-      <tp:enumvalue suffix="Push" value="2">
-        <tp:docstring>
-          Indicates that the protocol pushes all contacts' information to the
-          connection manager without prompting. If set,
-          <tp:member-ref>RequestContactInfo</tp:member-ref> will not cause a
-          network roundtrip and
-          <tp:member-ref>ContactInfoChanged</tp:member-ref> will be emitted
-          whenever contacts' information changes.
-        </tp:docstring>
-      </tp:enumvalue>
-    </tp:enum>
-
-    <property name="ContactInfoFlags" type="u" access="read"
-      tp:type="Contact_Info_Flag" tp:name-for-bindings="Contact_Info_Flags">
-      <tp:docstring>
-        An integer representing the bitwise-OR of flags on this channel. This
-        property should be constant over the lifetime of a connection.
-      </tp:docstring>
-    </property>
-
-    <tp:struct name="Field_Spec" array-name="Field_Specs">
-      <tp:docstring>A struct describing a vCard field, with flags, that may be
-        passed to <tp:member-ref>SetContactInfo</tp:member-ref> on this
-        Connection.</tp:docstring>
-
-      <tp:member type="s" name="Name">
-        <tp:docstring>A vCard field name, such as 'tel'.</tp:docstring>
-      </tp:member>
-
-      <tp:member type="as" name="Flags">
-        <tp:docstring>The set of vCard flags which may be set on this
-          field.</tp:docstring>
-      </tp:member>
-
-      <tp:member type="b" name="Mandatory">
-        <tp:docstring>True if those flags must be set on this field, as opposed
-          to being optional.</tp:docstring>
-      </tp:member>
-
-      <tp:member type="u" name="Max">
-        <tp:docstring>Maximum number of instances of this field which may be
-          set.  MAXUINT32 is used to indicate that there is no
-          limit.</tp:docstring>
-      </tp:member>
-    </tp:struct>
-
-    <property name="SupportedFields" type="a(sasbu)" tp:type="Field_Spec[]"
-      access="read" tp:name-for-bindings="Supported_Fields">
-      <tp:docstring>
-        A list of field specifications describing the kinds of fields which may
-        be passed to <tp:member-ref>SetContactInfo</tp:member-ref>.  The empty
-        list indicates that arbitrary vCard fields are permitted.  This
-        property SHOULD be the empty list, and be ignored by clients, if
-        <tp:member-ref>ContactInfoFlags</tp:member-ref> does not contain the
-        Can_Set <tp:type>Contact_Info_Flag</tp:type>.
-      </tp:docstring>
-    </property>
-
-    <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
-      <p>An interface for requesting information about a contact on a given
-        connection. Information is represented as a list of
-        <tp:type>Contact_Info_Field</tp:type>s forming a
-        structured representation of a vCard (as defined by RFC 2426), using
-        field names and semantics defined therein.</p>
-    </tp:docstring>
-  </interface>
-</node>
-<!-- vim:set sw=2 sts=2 et ft=xml: -->
diff --git a/spec/all.xml b/spec/all.xml
index 2f8abbe..8aac837 100644
--- a/spec/all.xml
+++ b/spec/all.xml
@@ -32,7 +32,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</
 <xi:include href="Connection_Interface_Capabilities.xml"/>
 <xi:include href="Connection_Interface_Contact_Capabilities.xml"/>
 <xi:include href="Connection_Interface_Contacts.xml"/>
-<xi:include href="Connection_Interface_Contact_Info2.xml"/>
+<xi:include href="Connection_Interface_Contact_Info.xml"/>
 <xi:include href="Connection_Interface_Simple_Presence.xml"/>
 <xi:include href="Connection_Interface_Presence.xml"/>
 <xi:include href="Connection_Interface_Renaming.xml"/>
-- 
1.5.6.5




More information about the Telepathy-commits mailing list