diff options
Diffstat (limited to 'qt4/spec/Account_Interface_Storage.xml')
-rw-r--r-- | qt4/spec/Account_Interface_Storage.xml | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/qt4/spec/Account_Interface_Storage.xml b/qt4/spec/Account_Interface_Storage.xml new file mode 100644 index 000000000..4e3ba5dca --- /dev/null +++ b/qt4/spec/Account_Interface_Storage.xml @@ -0,0 +1,169 @@ +<?xml version="1.0" ?> +<node name="/Account_Interface_Storage" + xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0"> + <tp:copyright>Copyright (C) 2010 Collabora Ltd.</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.Account.Interface.Storage"> + <tp:requires interface="org.freedesktop.Telepathy.Account"/> + + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p> + This interface extends the core Account interface to specify details + regarding the storage of this account. + </p> + + <tp:rationale> + <p> + Single-sign-on systems do not generally have directly user-editable + properties for Accounts, and require the user to visit a specific UI + to alter their account properties. User interfaces should know not to + expose these account properties as user-editable, and instead + redirect the user to the appropriate interface. + </p> + </tp:rationale> + + </tp:docstring> + <tp:added version="0.19.8"/> + + <property name="StorageProvider" tp:name-for-bindings="Storage_Provider" + type="s" access="read"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p> + The name of the account storage implementation, which SHOULD start + with a reversed domain name in the same way as D-Bus interface names. + When this is the empty string the account is internally stored. + </p> + <p> + This property cannot change once an Account has been created. + </p> + </tp:docstring> + </property> + + <property name="StorageIdentifier" + tp:name-for-bindings="Storage_Identifier" type="v" access="read"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p> + Unique identification of the account within the storage backend. + The contents of the variant are defined by the + <tp:member-ref>StorageProvider</tp:member-ref>. + </p> + <p> + This property cannot change once an Account has been created. + </p> + <tp:rationale> + <p> + Different storage systems will have their own way of uniquely + identifying an account, typically an integer or a string. + Given that all users of this property should have direct knowledge + of the backend they should know what types to expect and how to + handle it. + </p> + </tp:rationale> + </tp:docstring> + </property> + + <property name="StorageSpecificInformation" + tp:name-for-bindings="Storage_Specific_Information" type="a{sv}" + access="read"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p> + Map containing information specific to the storage backend. The keys + and the types of their values are defined by the + <tp:member-ref>StorageProvider</tp:member-ref>, and are not + interpreted by the AccountManager implementation. + </p> + <p> + As the values in this map may change at any time (due to an external + application manipulating the storage provider directly), this + property should not be cached; it should instead be retrieved each + time it is needed. + </p> + + <tp:rationale> + <p> + This can be used to provide additional hints to user interfaces + aware of a specific storage provider, without requiring those user + interfaces to use the + <tp:member-ref>StorageIdentifier</tp:member-ref> to query the + storage provider directly. + </p> + </tp:rationale> + </tp:docstring> + </property> + + <property name="StorageRestrictions" + tp:name-for-bindings="Storage_Restrictions" type="u" + tp:type="Storage_Restriction_Flags" + access="read"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p> + Bitfield which defines what restrictions this Storage method has. + </p> + <p> + This property cannot change once an Account has been created. + </p> + </tp:docstring> + </property> + + <tp:flags name="Storage_Restriction_Flags" + value-prefix="Storage_Restriction_Flag" type="u"> + <tp:docstring> + Flags indicating restrictions imposed on an Account by its storage + method. + </tp:docstring> + + <tp:flag suffix="Cannot_Set_Parameters" value="1"> + <tp:docstring> + The account's <tp:dbus-ref + namespace="org.freedesktop.Telepathy.Account" + >Parameters</tp:dbus-ref> property can't be changed by calling + <tp:dbus-ref namespace="org.freedesktop.Telepathy.Account" + >UpdateParameters</tp:dbus-ref>. + </tp:docstring> + </tp:flag> + + <tp:flag suffix="Cannot_Set_Enabled" value="2"> + <tp:docstring> + The account can't be enabled/disabled by setting the <tp:dbus-ref + namespace="org.freedesktop.Telepathy.Account" + >Enabled</tp:dbus-ref> property. + </tp:docstring> + </tp:flag> + + <tp:flag suffix="Cannot_Set_Presence" value="4"> + <tp:docstring> + The account's presence can't be changed by setting the <tp:dbus-ref + namespace="org.freedesktop.Telepathy.Account" + >RequestedPresence</tp:dbus-ref> and <tp:dbus-ref + namespace="org.freedesktop.Telepathy.Account" + >AutomaticPresence</tp:dbus-ref> properties. + </tp:docstring> + </tp:flag> + + <tp:flag suffix="Cannot_Set_Service" value="8"> + <tp:docstring> + The account's <tp:dbus-ref + namespace="org.freedesktop.Telepathy.Account">Service</tp:dbus-ref> + property cannot be changed. + </tp:docstring> + </tp:flag> + </tp:flags> + + </interface> +</node> +<!-- vim:set sw=2 sts=2 et ft=xml: --> |