summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonny Lamb <jonny.lamb@collabora.co.uk>2011-11-15 09:16:05 +0000
committerJonny Lamb <jonny.lamb@collabora.co.uk>2011-11-15 09:16:05 +0000
commit80ffa6e731f2ecb5c31bbaec1083d13e6757d912 (patch)
treed926e2783f417a5310475fc4ce43b7352c7a9fa2
parent13835c53f6e7b0cf1d576ca8ae031282494ed473 (diff)
ft metadata: use tp-glib generated code rather than using the draft interfaceft-metadata
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
-rw-r--r--extensions/Channel_Interface_File_Transfer_Metadata.xml83
-rw-r--r--extensions/all.xml1
-rw-r--r--src/ft-channel.c10
-rw-r--r--src/ft-manager.c16
4 files changed, 13 insertions, 97 deletions
diff --git a/extensions/Channel_Interface_File_Transfer_Metadata.xml b/extensions/Channel_Interface_File_Transfer_Metadata.xml
deleted file mode 100644
index 1e102fc24..000000000
--- a/extensions/Channel_Interface_File_Transfer_Metadata.xml
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0" ?>
-<node name="/Channel_Interface_File_Transfer_Metadata"
- xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
- <tp:copyright>Copyright (C) 2011 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.Channel.Interface.FileTransfer.Metadata">
- <tp:requires interface="org.freedesktop.Telepathy.Channel.Type.FileTransfer"/>
- <tp:added version="0.24.UNRELEASED"/>
-
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>This interface exists to provide a mechanism to include
- arbitrary additional information in file transfers. For
- example, one might want to send a document and include the
- number of times the character P appeared in the file, so would
- add <tt>NumberOfPs=42</tt> to the
- <tp:member-ref>Metadata</tp:member-ref> property.</p>
-
- <p><tp:member-ref>ServiceName</tp:member-ref> living in its own
- property makes it easier for specific applications to send
- files to each other, bypassing the standard handler. For
- example, the Banshee Telepathy plugin handler could match on
- <tp:member-ref>ServiceName</tp:member-ref> so the Empathy file
- transfer is not used instead.</p>
- </tp:docstring>
-
- <property name="ServiceName" tp:name-for-bindings="Service_Name"
- type="s" access="readwrite" tp:immutable="sì"
- tp:requestable="naturalmente">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>A string representing the service name that will be used
- over the file transfer channel. This property is equivalent
- to the <tp:dbus-ref
- namespace="ofdT">Channel.Type.DBusTube.ServiceName</tp:dbus-ref>
- and <tp:dbus-ref
- namespace="ofdT">Channel.Type.StreamTube.Service</tp:dbus-ref>
- properties. If no service name is given then this property
- will be the empty string.</p>
- </tp:docstring>
- </property>
-
- <property name="Metadata" tp:name-for-bindings="Metadata"
- type="a{sas}" tp:type="Metadata" access="readwrite"
- tp:immutable="sì" tp:requestable="naturalmente">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>Additional information about the file transfer set by the
- channel initiator. If no additional information is given then
- this property will be empty.</p>
- </tp:docstring>
- </property>
-
- <tp:mapping name="Metadata" type="a{ua{sv}}">
- <tp:docstring>
- A mapping from string key to a list of strings, used in the
- <tp:member-ref>Metadata</tp:member-ref> property. To emulate a
- simple string → string hash table one should have exactly one
- member in the value string list. A string list is used instead
- of a single string so one can transfer RDF triples.
- </tp:docstring>
- <tp:member name="Key" type="s"/>
- <tp:member name="Values" type="as"/>
- </tp:mapping>
-
- </interface>
-</node>
-<!-- vim:set sw=2 sts=2 et ft=xml: -->
diff --git a/extensions/all.xml b/extensions/all.xml
index 3fdb0d221..cb368ef9e 100644
--- a/extensions/all.xml
+++ b/extensions/all.xml
@@ -39,7 +39,6 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</p>
<xi:include href="Channel_Type_FileTransfer_Future.xml"/>
<xi:include href="Connection_Interface_Gabble_Decloak.xml"/>
<xi:include href="Connection_Future.xml"/>
-<xi:include href="Channel_Interface_File_Transfer_Metadata.xml"/>
<xi:include href="Gabble_Plugin_Gateways.xml"/>
<xi:include href="Gabble_Plugin_Test.xml"/>
diff --git a/src/ft-channel.c b/src/ft-channel.c
index f7de7e121..ebc5bb17e 100644
--- a/src/ft-channel.c
+++ b/src/ft-channel.c
@@ -80,7 +80,7 @@ G_DEFINE_TYPE_WITH_CODE (GabbleFileTransferChannel, gabble_file_transfer_channel
file_transfer_iface_init);
G_IMPLEMENT_INTERFACE (GABBLE_TYPE_SVC_CHANNEL_TYPE_FILETRANSFER_FUTURE,
NULL);
- G_IMPLEMENT_INTERFACE (GABBLE_TYPE_SVC_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA,
+ G_IMPLEMENT_INTERFACE (TP_TYPE_SVC_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA,
NULL);
);
@@ -328,8 +328,8 @@ gabble_file_transfer_channel_get_property (GObject *object,
TP_IFACE_CHANNEL_TYPE_FILE_TRANSFER, "TransferredBytes",
TP_IFACE_CHANNEL_TYPE_FILE_TRANSFER, "InitialOffset",
GABBLE_IFACE_CHANNEL_TYPE_FILETRANSFER_FUTURE, "FileCollection",
- GABBLE_IFACE_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA, "ServiceName",
- GABBLE_IFACE_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA, "Metadata",
+ TP_IFACE_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA, "ServiceName",
+ TP_IFACE_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA, "Metadata",
NULL);
/* URI is immutable only for outgoing transfers */
@@ -706,7 +706,7 @@ gabble_file_transfer_channel_class_init (
NULL,
file_future_props
},
- { GABBLE_IFACE_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA,
+ { TP_IFACE_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA,
tp_dbus_properties_mixin_getter_gobject_properties,
NULL,
file_metadata_props
@@ -950,7 +950,7 @@ gabble_file_transfer_channel_class_init (
param_spec = g_param_spec_boxed ("metadata",
"Metadata",
"The Metadata.Metadata property of this channel",
- GABBLE_HASH_TYPE_METADATA,
+ TP_HASH_TYPE_METADATA,
G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS);
g_object_class_install_property (object_class, PROP_METADATA,
param_spec);
diff --git a/src/ft-manager.c b/src/ft-manager.c
index 3470ff988..5ed701298 100644
--- a/src/ft-manager.c
+++ b/src/ft-manager.c
@@ -553,11 +553,11 @@ gabble_ft_manager_handle_request (TpChannelManager *manager,
TP_PROP_CHANNEL_TYPE_FILE_TRANSFER_URI);
service_name = tp_asv_get_string (request_properties,
- GABBLE_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_SERVICE_NAME);
+ TP_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_SERVICE_NAME);
metadata = tp_asv_get_boxed (request_properties,
- GABBLE_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_METADATA,
- GABBLE_HASH_TYPE_METADATA);
+ TP_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_METADATA,
+ TP_HASH_TYPE_METADATA);
if (metadata != NULL && g_hash_table_lookup ((GHashTable *) metadata, "FORM_TYPE"))
{
@@ -622,15 +622,15 @@ static const gchar * const file_transfer_channel_allowed_properties[] =
static const gchar * const file_transfer_channel_allowed_properties_with_metadata_prop[] =
{
STANDARD_PROPERTIES,
- GABBLE_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_METADATA,
+ TP_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_METADATA,
NULL
};
static const gchar * const file_transfer_channel_allowed_properties_with_both_metadata_props[] =
{
STANDARD_PROPERTIES,
- GABBLE_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_SERVICE_NAME,
- GABBLE_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_METADATA,
+ TP_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_SERVICE_NAME,
+ TP_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_METADATA,
NULL
};
@@ -953,7 +953,7 @@ add_file_transfer_channel_class (GPtrArray *arr,
{
service_name_value = tp_g_value_slice_new_string (service_name_str);
g_hash_table_insert (fixed_properties,
- GABBLE_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_SERVICE_NAME,
+ TP_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_SERVICE_NAME,
service_name_value);
}
@@ -1052,7 +1052,7 @@ gabble_ft_manager_represent_client (
continue;
service_name = tp_asv_get_string (channel_class,
- GABBLE_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_SERVICE_NAME);
+ TP_PROP_CHANNEL_INTERFACE_FILE_TRANSFER_METADATA_SERVICE_NAME);
if (service_name == NULL)
continue;