Thu, 06 Aug 2015 15:13:42 -0400
facebook: fixed the account user contact being ignored
This is a regression introduced by 600f41974cb3. As can be assumed, the
account user contact cannot be a friend of itself. An additional check
is needed to ensure the contact is only skipped for not being a friend.
This fixes the private alias of the acount user not being set.
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
1 | /* purple |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
2 | * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
3 | * Purple is the legal property of its developers, whose names are too numerous |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
4 | * to list here. Please refer to the COPYRIGHT file distributed with this |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
5 | * source distribution. |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
6 | * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
7 | * This program is free software; you can redistribute it and/or modify |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
8 | * it under the terms of the GNU General Public License as published by |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
9 | * the Free Software Foundation; either version 2 of the License, or |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
10 | * (at your option) any later version. |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
11 | * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
12 | * This program is distributed in the hope that it will be useful, |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
15 | * GNU General Public License for more details. |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
16 | * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
17 | * You should have received a copy of the GNU General Public License |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
18 | * along with this program; if not, write to the Free Software |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
20 | */ |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
21 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
22 | #ifndef _FACEBOOK_JSON_H_ |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
23 | #define _FACEBOOK_JSON_H_ |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
24 | |
|
37309
556eea7a45da
facebook: merged local glibcompat.h into libpurple's
James Geboski <jgeboski@gmail.com>
parents:
37299
diff
changeset
|
25 | #include <glib.h> |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
26 | #include <json-glib/json-glib.h> |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
27 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
28 | #define FB_JSON_ERROR fb_json_error_quark() |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
29 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
30 | typedef enum _FbJsonError FbJsonError; |
|
37316
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
31 | typedef enum _FbJsonType FbJsonType; |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
32 | typedef struct _FbJsonValue FbJsonValue; |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
33 | typedef struct _FbJsonValues FbJsonValues; |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
34 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
35 | enum _FbJsonError |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
36 | { |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
37 | FB_JSON_ERROR_SUCCESS = 0, |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
38 | FB_JSON_ERROR_AMBIGUOUS, |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
39 | FB_JSON_ERROR_GENERAL, |
|
37299
b14336308988
facebook: migrated FQL usage to GraphQL
James Geboski <jgeboski@gmail.com>
parents:
37269
diff
changeset
|
40 | FB_JSON_ERROR_NOMATCH, |
|
37316
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
41 | FB_JSON_ERROR_NULL, |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
42 | FB_JSON_ERROR_TYPE |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
43 | }; |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
44 | |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
45 | enum _FbJsonType |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
46 | { |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
47 | FB_JSON_TYPE_NULL = 0, |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
48 | FB_JSON_TYPE_BOOL = G_TYPE_BOOLEAN, |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
49 | FB_JSON_TYPE_DBL = G_TYPE_DOUBLE, |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
50 | FB_JSON_TYPE_INT = G_TYPE_INT64, |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
51 | FB_JSON_TYPE_STR = G_TYPE_STRING |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
52 | }; |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
53 | |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
54 | struct _FbJsonValue |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
55 | { |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
56 | const gchar *expr; |
|
37316
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
57 | FbJsonType type; |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
58 | gboolean required; |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
59 | GValue value; |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
60 | }; |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
61 | |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
62 | struct _FbJsonValues |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
63 | { |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
64 | JsonNode *root; |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
65 | GQueue *queue; |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
66 | GList *next; |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
67 | JsonArray *array; |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
68 | guint index; |
|
37316
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
69 | GError *error; |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
70 | }; |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
71 | |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
72 | GQuark |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
73 | fb_json_error_quark(void); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
74 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
75 | JsonBuilder * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
76 | fb_json_bldr_new(JsonNodeType type); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
77 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
78 | gchar * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
79 | fb_json_bldr_close(JsonBuilder *bldr, JsonNodeType type, gsize *size); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
80 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
81 | void |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
82 | fb_json_bldr_arr_begin(JsonBuilder *bldr, const gchar *name); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
83 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
84 | void |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
85 | fb_json_bldr_arr_end(JsonBuilder *bldr); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
86 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
87 | void |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
88 | fb_json_bldr_obj_begin(JsonBuilder *bldr, const gchar *name); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
89 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
90 | void |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
91 | fb_json_bldr_obj_end(JsonBuilder *bldr); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
92 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
93 | void |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
94 | fb_json_bldr_add_bool(JsonBuilder *bldr, const gchar *name, gboolean value); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
95 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
96 | void |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
97 | fb_json_bldr_add_dbl(JsonBuilder *bldr, const gchar *name, gdouble value); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
98 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
99 | void |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
100 | fb_json_bldr_add_int(JsonBuilder *bldr, const gchar *name, gint64 value); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
101 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
102 | void |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
103 | fb_json_bldr_add_str(JsonBuilder *bldr, const gchar *name, const gchar *value); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
104 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
105 | void |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
106 | fb_json_bldr_add_strf(JsonBuilder *bldr, const gchar *name, |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
107 | const gchar *format, ...) |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
108 | G_GNUC_PRINTF(3, 4); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
109 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
110 | JsonNode * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
111 | fb_json_node_new(const gchar *data, gssize size, GError **error); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
112 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
113 | JsonNode * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
114 | fb_json_node_get(JsonNode *root, const gchar *expr, GError **error); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
115 | |
|
37315
7a7771557143
facebook: implemented handling of message attachments
James Geboski <jgeboski@gmail.com>
parents:
37314
diff
changeset
|
116 | JsonNode * |
|
7a7771557143
facebook: implemented handling of message attachments
James Geboski <jgeboski@gmail.com>
parents:
37314
diff
changeset
|
117 | fb_json_node_get_nth(JsonNode *root, guint n); |
|
7a7771557143
facebook: implemented handling of message attachments
James Geboski <jgeboski@gmail.com>
parents:
37314
diff
changeset
|
118 | |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
119 | JsonArray * |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
120 | fb_json_node_get_arr(JsonNode *root, const gchar *expr, GError **error); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
121 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
122 | gboolean |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
123 | fb_json_node_get_bool(JsonNode *root, const gchar *expr, GError **error); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
124 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
125 | gdouble |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
126 | fb_json_node_get_dbl(JsonNode *root, const gchar *expr, GError **error); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
127 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
128 | gint64 |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
129 | fb_json_node_get_int(JsonNode *root, const gchar *expr, GError **error); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
130 | |
|
37269
129e87951cd6
facebook: fixed JSON parsing for older json-glib versions
James Geboski <jgeboski@gmail.com>
parents:
37265
diff
changeset
|
131 | gchar * |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
132 | fb_json_node_get_str(JsonNode *root, const gchar *expr, GError **error); |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
133 | |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
134 | FbJsonValues * |
|
37316
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
135 | fb_json_values_new(JsonNode *root, const gchar *arrexpr); |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
136 | |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
137 | void |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
138 | fb_json_values_free(FbJsonValues *values); |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
139 | |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
140 | void |
|
37316
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
141 | fb_json_values_add(FbJsonValues *values, FbJsonType type, gboolean required, |
|
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
142 | const gchar *expr); |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
143 | |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
144 | JsonNode * |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
145 | fb_json_values_get_root(FbJsonValues *values); |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
146 | |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
147 | gboolean |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
148 | fb_json_values_update(FbJsonValues *values, GError **error); |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
149 | |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
150 | const GValue * |
|
37316
9e3520d6ec49
facebook: refactored and improved JSON error handling
James Geboski <jgeboski@gmail.com>
parents:
37315
diff
changeset
|
151 | fb_json_values_next(FbJsonValues *values); |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
152 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
153 | gboolean |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
154 | fb_json_values_next_bool(FbJsonValues *values, gboolean defval); |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
155 | |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
156 | gdouble |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
157 | fb_json_values_next_dbl(FbJsonValues *values, gdouble defval); |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
158 | |
|
37314
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
159 | gint64 |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
160 | fb_json_values_next_int(FbJsonValues *values, gint64 defval); |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
161 | |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
162 | const gchar * |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
163 | fb_json_values_next_str(FbJsonValues *values, const gchar *defval); |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
164 | |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
165 | gchar * |
|
1fedb5e19577
facebook: refactored the parsing of JSON values
James Geboski <jgeboski@gmail.com>
parents:
37309
diff
changeset
|
166 | fb_json_values_next_str_dup(FbJsonValues *values, const gchar *defval); |
|
37250
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
167 | |
|
3f5570a17b15
facebook: initial import of bitlbee-facebook
James Geboski <jgeboski@gmail.com>
parents:
diff
changeset
|
168 | #endif /* _FACEBOOK_JSON_H_ */ |