1 /*
2 * manager.c - an example connection manager
3 *
4 * Copyright (C) 2007 Collabora Ltd.
5 *
6 * Copying and distribution of this file, with or without modification,
7 * are permitted in any medium without royalty provided the copyright
8 * notice and this notice are preserved.
9 */
10
11 #include "config.h"
12
13 #include "connection-manager.h"
14
15 #include <dbus/dbus-protocol.h>
16 #include <dbus/dbus-glib.h>
17
18 #include <telepathy-glib/telepathy-glib.h>
19
20 #include "protocol.h"
21
G_DEFINE_TYPE(ExampleExtendedConnectionManager,example_extended_connection_manager,TP_TYPE_BASE_CONNECTION_MANAGER)22 G_DEFINE_TYPE (ExampleExtendedConnectionManager,
23 example_extended_connection_manager,
24 TP_TYPE_BASE_CONNECTION_MANAGER)
25
26 static void
27 example_extended_connection_manager_init (
28 ExampleExtendedConnectionManager *self)
29 {
30 }
31
32 static void
example_extended_connection_manager_constructed(GObject * object)33 example_extended_connection_manager_constructed (GObject *object)
34 {
35 ExampleExtendedConnectionManager *self =
36 EXAMPLE_EXTENDED_CONNECTION_MANAGER (object);
37 TpBaseConnectionManager *base = (TpBaseConnectionManager *) self;
38 void (*constructed) (GObject *) =
39 ((GObjectClass *) example_extended_connection_manager_parent_class)->constructed;
40 TpBaseProtocol *protocol;
41
42 if (constructed != NULL)
43 constructed (object);
44
45 protocol = g_object_new (EXAMPLE_TYPE_EXTENDED_PROTOCOL,
46 "name", "example",
47 NULL);
48 tp_base_connection_manager_add_protocol (base, protocol);
49 g_object_unref (protocol);
50 }
51
52 static void
example_extended_connection_manager_class_init(ExampleExtendedConnectionManagerClass * klass)53 example_extended_connection_manager_class_init (
54 ExampleExtendedConnectionManagerClass *klass)
55 {
56 GObjectClass *object_class = G_OBJECT_CLASS (klass);
57 TpBaseConnectionManagerClass *base_class =
58 (TpBaseConnectionManagerClass *) klass;
59
60 object_class->constructed = example_extended_connection_manager_constructed;
61 base_class->cm_dbus_name = "example_extended";
62 }
63