[telepathy-gabble/master] Add the RelayInfo property to GabbleCallStream.
Mike Ruprecht
mike.ruprecht at collabora.co.uk
Tue Dec 29 05:34:57 PST 2009
---
src/call-stream.c | 26 ++++++++++++++++++++++++++
1 files changed, 26 insertions(+), 0 deletions(-)
diff --git a/src/call-stream.c b/src/call-stream.c
index b996011..6a129fe 100644
--- a/src/call-stream.c
+++ b/src/call-stream.c
@@ -62,6 +62,7 @@ enum
PROP_ENDPOINTS,
PROP_TRANSPORT,
PROP_STUN_SERVERS,
+ PROP_RELAY_INFO,
};
#if 0
@@ -83,6 +84,7 @@ struct _GabbleCallStreamPrivate
gchar *object_path;
GabbleJingleContent *content;
GList *endpoints;
+ GPtrArray *relay_info;
};
static void
@@ -204,6 +206,19 @@ gabble_call_stream_get_property (GObject *object,
g_ptr_array_unref (arr);
break;
}
+ case PROP_RELAY_INFO:
+ {
+ if (priv->relay_info == NULL)
+ {
+ GPtrArray *relay_info = g_ptr_array_sized_new (0);
+ g_value_set_boxed (value, relay_info);
+ g_ptr_array_free (relay_info, TRUE);
+ }
+ else
+ g_value_set_boxed (value, priv->relay_info);
+
+ break;
+ }
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
break;
@@ -271,6 +286,7 @@ gabble_call_stream_class_init (GabbleCallStreamClass *gabble_call_stream_class)
{ "Transport", "transport", NULL },
{ "LocalCandidates", "local-candidates", NULL },
{ "STUNServers", "stun-servers", NULL },
+ { "RelayInfo", "relay-info", NULL },
{ "Endpoints", "endpoints", NULL },
{ NULL }
};
@@ -346,6 +362,13 @@ gabble_call_stream_class_init (GabbleCallStreamClass *gabble_call_stream_class)
g_object_class_install_property (object_class, PROP_STUN_SERVERS,
param_spec);
+ param_spec = g_param_spec_boxed ("relay-info", "RelayInfo",
+ "List of relay information",
+ TP_ARRAY_TYPE_STRING_VARIANT_MAP_LIST,
+ G_PARAM_READABLE | G_PARAM_STATIC_STRINGS);
+ g_object_class_install_property (object_class, PROP_RELAY_INFO,
+ param_spec);
+
gabble_call_stream_class->dbus_props_class.interfaces = prop_interfaces;
tp_dbus_properties_mixin_class_init (object_class,
G_STRUCT_OFFSET (GabbleCallStreamClass, dbus_props_class));
@@ -382,6 +405,9 @@ gabble_call_stream_finalize (GObject *object)
/* free any data held directly by the object here */
g_free (priv->object_path);
+ if (priv->relay_info != NULL)
+ g_boxed_free (TP_ARRAY_TYPE_STRING_VARIANT_MAP_LIST, priv->relay_info);
+
G_OBJECT_CLASS (gabble_call_stream_parent_class)->finalize (object);
}
--
1.5.6.5
More information about the telepathy-commits
mailing list