[Telepathy-commits] [telepathy-gabble/master] bytestream-multiple: add self-jid property
Guillaume Desmottes
guillaume.desmottes at collabora.co.uk
Tue Mar 17 09:43:07 PDT 2009
---
src/bytestream-multiple.c | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/src/bytestream-multiple.c b/src/bytestream-multiple.c
index 10e7869..cc33748 100644
--- a/src/bytestream-multiple.c
+++ b/src/bytestream-multiple.c
@@ -58,6 +58,7 @@ enum
PROP_STATE,
PROP_PROTOCOL,
PROP_FACTORY,
+ PROP_SELF_JID,
LAST_PROPERTY
};
@@ -71,6 +72,7 @@ struct _GabbleBytestreamMultiplePrivate
GabbleBytestreamState state;
gchar *peer_jid;
GabbleBytestreamFactory *factory;
+ gchar *self_full_jid;
/* List of (gchar *) containing the NS of a stream method */
GList *fallback_stream_methods;
@@ -132,6 +134,7 @@ gabble_bytestream_multiple_finalize (GObject *object)
g_free (priv->stream_init_id);
g_free (priv->peer_resource);
g_free (priv->peer_jid);
+ g_free (priv->self_full_jid);
G_OBJECT_CLASS (gabble_bytestream_multiple_parent_class)->finalize (object);
}
@@ -178,6 +181,9 @@ gabble_bytestream_multiple_get_property (GObject *object,
case PROP_FACTORY:
g_value_set_object (value, priv->factory);
break;
+ case PROP_SELF_JID:
+ g_value_set_string (value, priv->self_full_jid);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
break;
@@ -224,6 +230,10 @@ gabble_bytestream_multiple_set_property (GObject *object,
case PROP_FACTORY:
priv->factory = g_value_get_object (value);
break;
+ case PROP_SELF_JID:
+ g_free (priv->self_full_jid);
+ priv->self_full_jid = g_value_dup_string (value);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
break;
@@ -262,6 +272,8 @@ gabble_bytestream_multiple_constructor (GType type,
else
priv->peer_jid = g_strdup (jid);
+ g_assert (priv->self_full_jid != NULL);
+
return obj;
}
@@ -324,6 +336,15 @@ gabble_bytestream_multiple_class_init (
G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS);
g_object_class_install_property (object_class, PROP_FACTORY,
param_spec);
+
+ param_spec = g_param_spec_string (
+ "self-jid",
+ "Our self jid",
+ "Either a contact full jid or a muc jid",
+ NULL,
+ G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
+ g_object_class_install_property (object_class, PROP_SELF_JID,
+ param_spec);
}
/*
--
1.5.6.5
More information about the telepathy-commits
mailing list