0e519855f9e58dc1af0c0c565b126fa84a500e2f
[moonshot-ui.git] / src / moonshot-identities-manager.c
1 /* moonshot-identities-manager.c generated by valac 0.10.4, the Vala compiler
2  * generated from moonshot-identities-manager.vala, do not modify */
3
4
5 #include <glib.h>
6 #include <glib-object.h>
7 #include <gee.h>
8 #include <gtk/gtk.h>
9 #include <stdlib.h>
10 #include <string.h>
11
12
13 #define TYPE_IDENTITY_MANAGER_MODEL (identity_manager_model_get_type ())
14 #define IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModel))
15 #define IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
16 #define IS_IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_MODEL))
17 #define IS_IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_MODEL))
18 #define IDENTITY_MANAGER_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
19
20 typedef struct _IdentityManagerModel IdentityManagerModel;
21 typedef struct _IdentityManagerModelClass IdentityManagerModelClass;
22 typedef struct _IdentityManagerModelPrivate IdentityManagerModelPrivate;
23
24 #define TYPE_IIDENTITY_CARD_STORE (iidentity_card_store_get_type ())
25 #define IIDENTITY_CARD_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IIDENTITY_CARD_STORE, IIdentityCardStore))
26 #define IS_IIDENTITY_CARD_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IIDENTITY_CARD_STORE))
27 #define IIDENTITY_CARD_STORE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_IIDENTITY_CARD_STORE, IIdentityCardStoreIface))
28
29 typedef struct _IIdentityCardStore IIdentityCardStore;
30 typedef struct _IIdentityCardStoreIface IIdentityCardStoreIface;
31
32 #define TYPE_ID_CARD (id_card_get_type ())
33 #define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
34 #define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
35 #define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
36 #define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
37 #define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
38
39 typedef struct _IdCard IdCard;
40 typedef struct _IdCardClass IdCardClass;
41
42 #define TYPE_IDENTITY_MANAGER_APP (identity_manager_app_get_type ())
43 #define IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp))
44 #define IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
45 #define IS_IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_APP))
46 #define IS_IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_APP))
47 #define IDENTITY_MANAGER_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
48
49 typedef struct _IdentityManagerApp IdentityManagerApp;
50 typedef struct _IdentityManagerAppClass IdentityManagerAppClass;
51 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
52
53 #define TYPE_LOCAL_FLAT_FILE_STORE (local_flat_file_store_get_type ())
54 #define LOCAL_FLAT_FILE_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStore))
55 #define LOCAL_FLAT_FILE_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStoreClass))
56 #define IS_LOCAL_FLAT_FILE_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LOCAL_FLAT_FILE_STORE))
57 #define IS_LOCAL_FLAT_FILE_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LOCAL_FLAT_FILE_STORE))
58 #define LOCAL_FLAT_FILE_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStoreClass))
59
60 typedef struct _LocalFlatFileStore LocalFlatFileStore;
61 typedef struct _LocalFlatFileStoreClass LocalFlatFileStoreClass;
62
63 struct _IdentityManagerModel {
64         GObject parent_instance;
65         IdentityManagerModelPrivate * priv;
66 };
67
68 struct _IdentityManagerModelClass {
69         GObjectClass parent_class;
70 };
71
72 struct _IIdentityCardStoreIface {
73         GTypeInterface parent_iface;
74         void (*add_card) (IIdentityCardStore* self, IdCard* card);
75         void (*remove_card) (IIdentityCardStore* self, IdCard* card);
76         void (*update_card) (IIdentityCardStore* self, IdCard* card);
77         GeeLinkedList* (*get_card_list) (IIdentityCardStore* self);
78 };
79
80 struct _IdentityManagerModelPrivate {
81         IIdentityCardStore* store;
82         IdentityManagerApp* parent;
83 };
84
85
86 static gpointer identity_manager_model_parent_class = NULL;
87
88 GType identity_manager_model_get_type (void) G_GNUC_CONST;
89 GType id_card_get_type (void) G_GNUC_CONST;
90 GType iidentity_card_store_get_type (void) G_GNUC_CONST;
91 GType identity_manager_app_get_type (void) G_GNUC_CONST;
92 #define IDENTITY_MANAGER_MODEL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelPrivate))
93 enum  {
94         IDENTITY_MANAGER_MODEL_DUMMY_PROPERTY
95 };
96 #define IDENTITY_MANAGER_MODEL_FILE_NAME "identities.txt"
97 GeeLinkedList* identity_manager_model_get_card_list (IdentityManagerModel* self);
98 GeeLinkedList* iidentity_card_store_get_card_list (IIdentityCardStore* self);
99 void identity_manager_model_add_card (IdentityManagerModel* self, IdCard* card);
100 void iidentity_card_store_add_card (IIdentityCardStore* self, IdCard* card);
101 void identity_manager_model_update_card (IdentityManagerModel* self, IdCard* card);
102 void iidentity_card_store_update_card (IIdentityCardStore* self, IdCard* card);
103 void identity_manager_model_remove_card (IdentityManagerModel* self, IdCard* card);
104 void iidentity_card_store_remove_card (IIdentityCardStore* self, IdCard* card);
105 IdentityManagerModel* identity_manager_model_new (IdentityManagerApp* parent_app);
106 IdentityManagerModel* identity_manager_model_construct (GType object_type, IdentityManagerApp* parent_app);
107 LocalFlatFileStore* local_flat_file_store_new (void);
108 LocalFlatFileStore* local_flat_file_store_construct (GType object_type);
109 GType local_flat_file_store_get_type (void) G_GNUC_CONST;
110 static void identity_manager_model_finalize (GObject* obj);
111
112
113
114 GeeLinkedList* identity_manager_model_get_card_list (IdentityManagerModel* self) {
115         GeeLinkedList* result = NULL;
116         g_return_val_if_fail (self != NULL, NULL);
117         result = iidentity_card_store_get_card_list (self->priv->store);
118         return result;
119 }
120
121
122 void identity_manager_model_add_card (IdentityManagerModel* self, IdCard* card) {
123         g_return_if_fail (self != NULL);
124         g_return_if_fail (card != NULL);
125         iidentity_card_store_add_card (self->priv->store, card);
126         g_signal_emit_by_name (self, "card-list-changed");
127 }
128
129
130 void identity_manager_model_update_card (IdentityManagerModel* self, IdCard* card) {
131         g_return_if_fail (self != NULL);
132         g_return_if_fail (card != NULL);
133         iidentity_card_store_update_card (self->priv->store, card);
134         g_signal_emit_by_name (self, "card-list-changed");
135 }
136
137
138 void identity_manager_model_remove_card (IdentityManagerModel* self, IdCard* card) {
139         g_return_if_fail (self != NULL);
140         g_return_if_fail (card != NULL);
141         iidentity_card_store_remove_card (self->priv->store, card);
142         g_signal_emit_by_name (self, "card-list-changed");
143 }
144
145
146 static gpointer _g_object_ref0 (gpointer self) {
147         return self ? g_object_ref (self) : NULL;
148 }
149
150
151 IdentityManagerModel* identity_manager_model_construct (GType object_type, IdentityManagerApp* parent_app) {
152         IdentityManagerModel * self = NULL;
153         IdentityManagerApp* _tmp0_;
154         IIdentityCardStore* _tmp1_;
155         g_return_val_if_fail (parent_app != NULL, NULL);
156         self = (IdentityManagerModel*) g_object_new (object_type, NULL);
157         self->priv->parent = (_tmp0_ = _g_object_ref0 (parent_app), _g_object_unref0 (self->priv->parent), _tmp0_);
158         self->priv->store = (_tmp1_ = (IIdentityCardStore*) local_flat_file_store_new (), _g_object_unref0 (self->priv->store), _tmp1_);
159         return self;
160 }
161
162
163 IdentityManagerModel* identity_manager_model_new (IdentityManagerApp* parent_app) {
164         return identity_manager_model_construct (TYPE_IDENTITY_MANAGER_MODEL, parent_app);
165 }
166
167
168 static void identity_manager_model_class_init (IdentityManagerModelClass * klass) {
169         identity_manager_model_parent_class = g_type_class_peek_parent (klass);
170         g_type_class_add_private (klass, sizeof (IdentityManagerModelPrivate));
171         G_OBJECT_CLASS (klass)->finalize = identity_manager_model_finalize;
172         g_signal_new ("card_list_changed", TYPE_IDENTITY_MANAGER_MODEL, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
173 }
174
175
176 static void identity_manager_model_instance_init (IdentityManagerModel * self) {
177         self->priv = IDENTITY_MANAGER_MODEL_GET_PRIVATE (self);
178 }
179
180
181 static void identity_manager_model_finalize (GObject* obj) {
182         IdentityManagerModel * self;
183         self = IDENTITY_MANAGER_MODEL (obj);
184         _g_object_unref0 (self->priv->store);
185         _g_object_unref0 (self->priv->parent);
186         G_OBJECT_CLASS (identity_manager_model_parent_class)->finalize (obj);
187 }
188
189
190 GType identity_manager_model_get_type (void) {
191         static volatile gsize identity_manager_model_type_id__volatile = 0;
192         if (g_once_init_enter (&identity_manager_model_type_id__volatile)) {
193                 static const GTypeInfo g_define_type_info = { sizeof (IdentityManagerModelClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) identity_manager_model_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (IdentityManagerModel), 0, (GInstanceInitFunc) identity_manager_model_instance_init, NULL };
194                 GType identity_manager_model_type_id;
195                 identity_manager_model_type_id = g_type_register_static (G_TYPE_OBJECT, "IdentityManagerModel", &g_define_type_info, 0);
196                 g_once_init_leave (&identity_manager_model_type_id__volatile, identity_manager_model_type_id);
197         }
198         return identity_manager_model_type_id__volatile;
199 }
200
201
202
203