summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonny Lamb <jonny.lamb@collabora.co.uk>2012-07-05 15:05:34 +0100
committerJonny Lamb <jonny.lamb@collabora.co.uk>2012-07-05 15:05:34 +0100
commitaaea3147323cd1ad1b67e17c06504a5a6d6517cc (patch)
tree964bca32bd9a094ee6ae3d55154244b7ce9a59b7
parentbcde9c87323454f946be989825b2dc74f61d16f7 (diff)
downloadtelepathy-glib-aaea3147323cd1ad1b67e17c06504a5a6d6517cc.tar.gz
example & test connections: update to use new get_interfaces… vfunc
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
-rw-r--r--examples/cm/call/conn.c17
-rw-r--r--examples/cm/channelspecific/conn.c17
-rw-r--r--examples/cm/contactlist/conn.c18
-rw-r--r--examples/cm/echo-message-parts/conn.c17
-rw-r--r--examples/cm/extended/conn.c17
-rw-r--r--tests/dbus/connection-balance.c20
-rw-r--r--tests/lib/bug16307-conn.c24
-rw-r--r--tests/lib/contacts-conn.c78
-rw-r--r--tests/lib/echo-conn.c18
-rw-r--r--tests/lib/simple-conn.c17
10 files changed, 192 insertions, 51 deletions
diff --git a/examples/cm/call/conn.c b/examples/cm/call/conn.c
index 720cbf13f..187e34b08 100644
--- a/examples/cm/call/conn.c
+++ b/examples/cm/call/conn.c
@@ -377,6 +377,21 @@ example_call_connection_get_possible_interfaces (void)
return interfaces_always_present;
}
+static GPtrArray *
+get_interfaces_always_present (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+ guint i;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ example_call_connection_parent_class)->get_interfaces_always_present (base);
+
+ for (i = 0; interfaces_always_present[i] != NULL; i++)
+ g_ptr_array_add (interfaces, (gchar *) interfaces_always_present[i]);
+
+ return interfaces;
+}
+
static void
example_call_connection_class_init (
ExampleCallConnectionClass *klass)
@@ -397,7 +412,7 @@ example_call_connection_class_init (
base_class->create_channel_managers = create_channel_managers;
base_class->start_connecting = start_connecting;
base_class->shut_down = shut_down;
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = get_interfaces_always_present;
param_spec = g_param_spec_string ("account", "Account name",
"The username of this user", NULL,
diff --git a/examples/cm/channelspecific/conn.c b/examples/cm/channelspecific/conn.c
index 59dba2707..c14b368fb 100644
--- a/examples/cm/channelspecific/conn.c
+++ b/examples/cm/channelspecific/conn.c
@@ -246,6 +246,21 @@ example_csh_connection_get_possible_interfaces (void)
return interfaces_always_present;
}
+static GPtrArray *
+get_interfaces_always_present (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+ guint i;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ example_csh_connection_parent_class)->get_interfaces_always_present (base);
+
+ for (i = 0; interfaces_always_present[i] != NULL; i++)
+ g_ptr_array_add (interfaces, (gchar *) interfaces_always_present[i]);
+
+ return interfaces;
+}
+
static void
example_csh_connection_class_init (ExampleCSHConnectionClass *klass)
{
@@ -265,7 +280,7 @@ example_csh_connection_class_init (ExampleCSHConnectionClass *klass)
base_class->create_channel_managers = create_channel_managers;
base_class->start_connecting = start_connecting;
base_class->shut_down = shut_down;
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = get_interfaces_always_present;
param_spec = g_param_spec_string ("account", "Account name",
"The username of this user", NULL,
diff --git a/examples/cm/contactlist/conn.c b/examples/cm/contactlist/conn.c
index ab4507740..a28ae8547 100644
--- a/examples/cm/contactlist/conn.c
+++ b/examples/cm/contactlist/conn.c
@@ -410,6 +410,22 @@ example_contact_list_connection_get_possible_interfaces (void)
return interfaces_always_present;
}
+static GPtrArray *
+get_interfaces_always_present (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+ guint i;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ example_contact_list_connection_parent_class)->get_interfaces_always_present (
+ base);
+
+ for (i = 0; interfaces_always_present[i] != NULL; i++)
+ g_ptr_array_add (interfaces, (gchar *) interfaces_always_present[i]);
+
+ return interfaces;
+}
+
static void
example_contact_list_connection_class_init (
ExampleContactListConnectionClass *klass)
@@ -430,7 +446,7 @@ example_contact_list_connection_class_init (
base_class->create_channel_managers = create_channel_managers;
base_class->start_connecting = start_connecting;
base_class->shut_down = shut_down;
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = get_interfaces_always_present;
param_spec = g_param_spec_string ("account", "Account name",
"The username of this user", NULL,
diff --git a/examples/cm/echo-message-parts/conn.c b/examples/cm/echo-message-parts/conn.c
index d93229f15..115622bd1 100644
--- a/examples/cm/echo-message-parts/conn.c
+++ b/examples/cm/echo-message-parts/conn.c
@@ -172,6 +172,21 @@ example_echo_2_connection_get_possible_interfaces (void)
return interfaces_always_present;
}
+static GPtrArray *
+get_interfaces_always_present (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+ guint i;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ example_echo_2_connection_parent_class)->get_interfaces_always_present (base);
+
+ for (i = 0; interfaces_always_present[i] != NULL; i++)
+ g_ptr_array_add (interfaces, (gchar *) interfaces_always_present[i]);
+
+ return interfaces;
+}
+
static void
constructed (GObject *object)
{
@@ -206,7 +221,7 @@ example_echo_2_connection_class_init (ExampleEcho2ConnectionClass *klass)
base_class->create_channel_managers = create_channel_managers;
base_class->start_connecting = start_connecting;
base_class->shut_down = shut_down;
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = get_interfaces_always_present;
param_spec = g_param_spec_string ("account", "Account name",
"The username of this user", NULL,
diff --git a/examples/cm/extended/conn.c b/examples/cm/extended/conn.c
index 8b2560564..873fcf2b0 100644
--- a/examples/cm/extended/conn.c
+++ b/examples/cm/extended/conn.c
@@ -203,6 +203,21 @@ example_extended_connection_get_possible_interfaces (void)
return interfaces_always_present;
}
+static GPtrArray *
+get_interfaces_always_present (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+ guint i;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ example_extended_connection_parent_class)->get_interfaces_always_present (base);
+
+ for (i = 0; interfaces_always_present[i] != NULL; i++)
+ g_ptr_array_add (interfaces, (gchar *) interfaces_always_present[i]);
+
+ return interfaces;
+}
+
static void
example_extended_connection_class_init (ExampleExtendedConnectionClass *klass)
{
@@ -223,7 +238,7 @@ example_extended_connection_class_init (ExampleExtendedConnectionClass *klass)
base_class->start_connecting = start_connecting;
base_class->shut_down = shut_down;
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = get_interfaces_always_present;
param_spec = g_param_spec_string ("account", "Account name",
"The username of this user", NULL,
diff --git a/tests/dbus/connection-balance.c b/tests/dbus/connection-balance.c
index 3140e404f..4d022aba3 100644
--- a/tests/dbus/connection-balance.c
+++ b/tests/dbus/connection-balance.c
@@ -79,6 +79,19 @@ balanced_connection_init (BalancedConnection *self G_GNUC_UNUSED)
{
}
+static GPtrArray *
+get_interfaces (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ balanced_connection_parent_class)->get_interfaces_always_present (base);
+
+ g_ptr_array_add (interfaces, TP_IFACE_CONNECTION_INTERFACE_BALANCE);
+
+ return interfaces;
+}
+
static void
balanced_connection_class_init (BalancedConnectionClass *cls)
{
@@ -91,14 +104,9 @@ balanced_connection_class_init (BalancedConnectionClass *cls)
{ NULL }
};
- static const gchar *interfaces[] = {
- TP_IFACE_CONNECTION_INTERFACE_BALANCE,
- NULL
- };
-
object_class->get_property = balanced_connection_get_property;
- base_class->interfaces_always_present = interfaces;
+ base_class->get_interfaces_always_present = get_interfaces;
g_object_class_install_property (object_class, PROP_ACCOUNT_BALANCE,
g_param_spec_boxed ("account-balance", "", "",
diff --git a/tests/lib/bug16307-conn.c b/tests/lib/bug16307-conn.c
index cbabf7393..414d931a0 100644
--- a/tests/lib/bug16307-conn.c
+++ b/tests/lib/bug16307-conn.c
@@ -135,18 +135,28 @@ start_connecting (TpBaseConnection *conn,
return TRUE;
}
+static GPtrArray *
+get_interfaces_always_present (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ tp_tests_bug16307_connection_parent_class)->get_interfaces_always_present (base);
+
+ g_ptr_array_add (interfaces, TP_IFACE_CONNECTION_INTERFACE_ALIASING);
+ g_ptr_array_add (interfaces, TP_IFACE_CONNECTION_INTERFACE_CAPABILITIES);
+ g_ptr_array_add (interfaces, TP_IFACE_CONNECTION_INTERFACE_PRESENCE);
+ g_ptr_array_add (interfaces, TP_IFACE_CONNECTION_INTERFACE_AVATARS);
+
+ return interfaces;
+}
+
static void
tp_tests_bug16307_connection_class_init (TpTestsBug16307ConnectionClass *klass)
{
TpBaseConnectionClass *base_class =
(TpBaseConnectionClass *) klass;
GObjectClass *object_class = (GObjectClass *) klass;
- static const gchar *interfaces_always_present[] = {
- TP_IFACE_CONNECTION_INTERFACE_ALIASING,
- TP_IFACE_CONNECTION_INTERFACE_CAPABILITIES,
- TP_IFACE_CONNECTION_INTERFACE_PRESENCE,
- TP_IFACE_CONNECTION_INTERFACE_AVATARS,
- NULL };
static TpDBusPropertiesMixinPropImpl connection_properties[] = {
{ "Status", "dbus-status-except-i-broke-it", NULL },
{ NULL }
@@ -157,7 +167,7 @@ tp_tests_bug16307_connection_class_init (TpTestsBug16307ConnectionClass *klass)
base_class->start_connecting = start_connecting;
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = get_interfaces_always_present;
signals[SIGNAL_GET_STATUS_RECEIVED] = g_signal_new ("get-status-received",
G_OBJECT_CLASS_TYPE (klass),
diff --git a/tests/lib/contacts-conn.c b/tests/lib/contacts-conn.c
index 6f3088093..5b0dcbba2 100644
--- a/tests/lib/contacts-conn.c
+++ b/tests/lib/contacts-conn.c
@@ -540,13 +540,10 @@ create_channel_managers (TpBaseConnection *conn)
return ret;
}
-static void
-tp_tests_contacts_connection_class_init (TpTestsContactsConnectionClass *klass)
+static GPtrArray *
+tp_tests_contacts_get_interfaces_always_present (TpBaseConnection *base)
{
- TpBaseConnectionClass *base_class =
- (TpBaseConnectionClass *) klass;
- GObjectClass *object_class = (GObjectClass *) klass;
- TpPresenceMixinClass *mixin_class;
+ GPtrArray *interfaces;
static const gchar *interfaces_always_present[] = {
TP_IFACE_CONNECTION_INTERFACE_ALIASING,
TP_IFACE_CONNECTION_INTERFACE_AVATARS,
@@ -559,8 +556,25 @@ tp_tests_contacts_connection_class_init (TpTestsContactsConnectionClass *klass)
TP_IFACE_CONNECTION_INTERFACE_CLIENT_TYPES,
TP_IFACE_CONNECTION_INTERFACE_CONTACT_CAPABILITIES,
TP_IFACE_CONNECTION_INTERFACE_CONTACT_INFO,
- TP_IFACE_CONNECTION_INTERFACE_REQUESTS,
NULL };
+ guint i;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ tp_tests_contacts_connection_parent_class)->get_interfaces_always_present (base);
+
+ for (i = 0; interfaces_always_present[i] != NULL; i++)
+ g_ptr_array_add (interfaces, (gchar *) interfaces_always_present[i]);
+
+ return interfaces;
+}
+
+static void
+tp_tests_contacts_connection_class_init (TpTestsContactsConnectionClass *klass)
+{
+ TpBaseConnectionClass *base_class =
+ (TpBaseConnectionClass *) klass;
+ GObjectClass *object_class = (GObjectClass *) klass;
+ TpPresenceMixinClass *mixin_class;
static TpDBusPropertiesMixinIfaceImpl prop_interfaces[] = {
{ TP_IFACE_CONNECTION_INTERFACE_AVATARS,
conn_avatars_properties_getter,
@@ -579,7 +593,7 @@ tp_tests_contacts_connection_class_init (TpTestsContactsConnectionClass *klass)
object_class->finalize = finalize;
g_type_class_add_private (klass, sizeof (TpTestsContactsConnectionPrivate));
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = tp_tests_contacts_get_interfaces_always_present;
base_class->create_channel_managers = create_channel_managers;
tp_contacts_mixin_class_init (object_class,
@@ -1386,27 +1400,33 @@ tp_tests_legacy_contacts_connection_init (TpTestsLegacyContactsConnection *self)
{
}
+static GPtrArray *
+tp_tests_legacy_contacts_get_interfaces_always_present (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ tp_tests_legacy_contacts_connection_parent_class)->get_interfaces_always_present (base);
+
+ g_ptr_array_remove (interfaces, TP_IFACE_CONNECTION_INTERFACE_CONTACTS);
+ g_ptr_array_remove (interfaces, TP_IFACE_CONNECTION_INTERFACE_CONTACT_CAPABILITIES);
+
+ return interfaces;
+}
+
static void
tp_tests_legacy_contacts_connection_class_init (
TpTestsLegacyContactsConnectionClass *klass)
{
/* Leave Contacts out of the interfaces we say are present, so clients
* won't use it */
- static const gchar *interfaces_always_present[] = {
- TP_IFACE_CONNECTION_INTERFACE_ALIASING,
- TP_IFACE_CONNECTION_INTERFACE_AVATARS,
- TP_IFACE_CONNECTION_INTERFACE_PRESENCE,
- TP_IFACE_CONNECTION_INTERFACE_SIMPLE_PRESENCE,
- TP_IFACE_CONNECTION_INTERFACE_LOCATION,
- TP_IFACE_CONNECTION_INTERFACE_REQUESTS,
- NULL };
TpBaseConnectionClass *base_class =
(TpBaseConnectionClass *) klass;
GObjectClass *object_class = (GObjectClass *) klass;
object_class->get_property = legacy_contacts_connection_get_property;
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = tp_tests_legacy_contacts_get_interfaces_always_present;
g_object_class_override_property (object_class,
LEGACY_PROP_HAS_IMMORTAL_HANDLES, "has-immortal-handles");
@@ -1422,21 +1442,27 @@ tp_tests_no_requests_connection_init (TpTestsNoRequestsConnection *self)
{
}
+static GPtrArray *
+tp_tests_no_requests_get_interfaces_always_present (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ tp_tests_no_requests_connection_parent_class)->get_interfaces_always_present (base);
+
+ g_ptr_array_remove (interfaces, TP_IFACE_CONNECTION_INTERFACE_REQUESTS);
+ g_ptr_array_remove (interfaces, TP_IFACE_CONNECTION_INTERFACE_CONTACT_CAPABILITIES);
+
+ return interfaces;
+}
+
static void
tp_tests_no_requests_connection_class_init (
TpTestsNoRequestsConnectionClass *klass)
{
- static const gchar *interfaces_always_present[] = {
- TP_IFACE_CONNECTION_INTERFACE_ALIASING,
- TP_IFACE_CONNECTION_INTERFACE_AVATARS,
- TP_IFACE_CONNECTION_INTERFACE_CONTACTS,
- TP_IFACE_CONNECTION_INTERFACE_PRESENCE,
- TP_IFACE_CONNECTION_INTERFACE_SIMPLE_PRESENCE,
- TP_IFACE_CONNECTION_INTERFACE_LOCATION,
- NULL };
TpBaseConnectionClass *base_class =
(TpBaseConnectionClass *) klass;
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = tp_tests_no_requests_get_interfaces_always_present;
base_class->create_channel_managers = NULL;
}
diff --git a/tests/lib/echo-conn.c b/tests/lib/echo-conn.c
index 3c63582e9..2ce06a21e 100644
--- a/tests/lib/echo-conn.c
+++ b/tests/lib/echo-conn.c
@@ -175,12 +175,22 @@ shut_down (TpBaseConnection *conn)
tp_base_connection_finish_shutdown (conn);
}
+static GPtrArray *
+get_interfaces_always_present (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ tp_tests_echo_connection_parent_class)->get_interfaces_always_present (base);
+
+ g_ptr_array_add (interfaces, TP_IFACE_CONNECTION_INTERFACE_REQUESTS);
+
+ return interfaces;
+}
+
static void
tp_tests_echo_connection_class_init (TpTestsEchoConnectionClass *klass)
{
- static const gchar *interfaces_always_present[] = {
- TP_IFACE_CONNECTION_INTERFACE_REQUESTS,
- NULL };
TpBaseConnectionClass *base_class =
(TpBaseConnectionClass *) klass;
GObjectClass *object_class = (GObjectClass *) klass;
@@ -196,7 +206,7 @@ tp_tests_echo_connection_class_init (TpTestsEchoConnectionClass *klass)
base_class->create_channel_managers = create_channel_managers;
base_class->start_connecting = start_connecting;
base_class->shut_down = shut_down;
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = get_interfaces_always_present;
param_spec = g_param_spec_string ("account", "Account name",
"The username of this user", NULL,
diff --git a/tests/lib/simple-conn.c b/tests/lib/simple-conn.c
index e6ee214ef..b57e607a9 100644
--- a/tests/lib/simple-conn.c
+++ b/tests/lib/simple-conn.c
@@ -284,6 +284,19 @@ shut_down (TpBaseConnection *conn)
conn);
}
+static GPtrArray *
+get_interfaces_always_present (TpBaseConnection *base)
+{
+ GPtrArray *interfaces;
+
+ interfaces = TP_BASE_CONNECTION_CLASS (
+ tp_tests_simple_connection_parent_class)->get_interfaces_always_present (base);
+
+ g_ptr_array_add (interfaces, TP_IFACE_CONNECTION_INTERFACE_REQUESTS);
+
+ return interfaces;
+}
+
static void
tp_tests_simple_connection_class_init (TpTestsSimpleConnectionClass *klass)
{
@@ -291,8 +304,6 @@ tp_tests_simple_connection_class_init (TpTestsSimpleConnectionClass *klass)
(TpBaseConnectionClass *) klass;
GObjectClass *object_class = (GObjectClass *) klass;
GParamSpec *param_spec;
- static const gchar *interfaces_always_present[] = {
- TP_IFACE_CONNECTION_INTERFACE_REQUESTS, NULL };
object_class->get_property = get_property;
object_class->set_property = set_property;
@@ -306,7 +317,7 @@ tp_tests_simple_connection_class_init (TpTestsSimpleConnectionClass *klass)
base_class->start_connecting = start_connecting;
base_class->shut_down = shut_down;
- base_class->interfaces_always_present = interfaces_always_present;
+ base_class->get_interfaces_always_present = get_interfaces_always_present;
param_spec = g_param_spec_string ("account", "Account name",
"The username of this user", NULL,