58
58
JsonSoup* json_soup_construct_file (GType object_type, const gchar* file);
59
59
JsonSoup* json_soup_new_http (const gchar* url);
60
60
JsonSoup* json_soup_construct_http (GType object_type, const gchar* url);
61
static void _vala_SoupURI_free (SoupURI* self);
61
62
JsonSoup* json_soup_object (JsonSoup* self, const gchar* name);
63
static JsonObject* _vala_JsonObject_copy (JsonObject* self);
64
static void _vala_JsonObject_free (JsonObject* self);
62
65
JsonSoup* json_soup_sibling (JsonSoup* self, const gchar* name);
63
66
JsonSoup* json_soup_parent (JsonSoup* self);
64
67
JsonSoup* json_soup_array (JsonSoup* self, gint idx);
68
static JsonArray* _vala_JsonArray_copy (JsonArray* self);
69
static void _vala_JsonArray_free (JsonArray* self);
65
70
JsonSoup* json_soup_grandparent (JsonSoup* self);
66
71
JsonSoup* json_soup_reset (JsonSoup* self);
67
72
static gboolean json_soup_is_value (JsonSoup* self);
84
89
JsonSoup* json_soup_construct_buffer (GType object_type, const gchar* buffer) {
85
90
JsonSoup * self = NULL;
86
JsonParser* _tmp0_ = NULL;
87
JsonNode* _tmp1_ = NULL;
88
92
GError * _inner_error_ = NULL;
89
93
g_return_val_if_fail (buffer != NULL, NULL);
90
94
self = (JsonSoup*) g_object_new (object_type, NULL);
91
95
_tmp0_ = json_parser_new ();
92
96
_g_object_unref0 (self->priv->parser);
93
97
self->priv->parser = _tmp0_;
94
json_parser_load_from_data (self->priv->parser, buffer, (gssize) (-1), &_inner_error_);
95
if (_inner_error_ != NULL) {
96
goto __catch1_g_error;
102
JsonNode* _tmp4_ = NULL;
103
_tmp1_ = self->priv->parser;
105
json_parser_load_from_data (_tmp1_, _tmp2_, (gssize) (-1), &_inner_error_);
106
if (_inner_error_ != NULL) {
107
goto __catch2_g_error;
109
_tmp3_ = self->priv->parser;
110
_tmp4_ = json_parser_get_root (_tmp3_);
111
self->priv->node = _tmp4_;
98
_tmp1_ = json_parser_get_root (self->priv->parser);
99
self->priv->node = _tmp1_;
104
119
e = _inner_error_;
105
120
_inner_error_ = NULL;
106
g_warning ("json_soup.vala:34: %s", e->message);
122
_tmp6_ = _tmp5_->message;
123
g_warning ("json_soup.vala:34: %s", _tmp6_);
107
124
_g_error_free0 (e);
110
127
if (_inner_error_ != NULL) {
111
128
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
112
129
g_clear_error (&_inner_error_);
124
141
JsonSoup* json_soup_construct_file (GType object_type, const gchar* file) {
125
142
JsonSoup * self = NULL;
126
JsonParser* _tmp0_ = NULL;
127
JsonNode* _tmp1_ = NULL;
128
144
GError * _inner_error_ = NULL;
129
145
g_return_val_if_fail (file != NULL, NULL);
130
146
self = (JsonSoup*) g_object_new (object_type, NULL);
131
147
_tmp0_ = json_parser_new ();
132
148
_g_object_unref0 (self->priv->parser);
133
149
self->priv->parser = _tmp0_;
134
json_parser_load_from_file (self->priv->parser, file, &_inner_error_);
135
if (_inner_error_ != NULL) {
136
goto __catch2_g_error;
154
JsonNode* _tmp4_ = NULL;
155
_tmp1_ = self->priv->parser;
157
json_parser_load_from_file (_tmp1_, _tmp2_, &_inner_error_);
158
if (_inner_error_ != NULL) {
159
goto __catch3_g_error;
161
_tmp3_ = self->priv->parser;
162
_tmp4_ = json_parser_get_root (_tmp3_);
163
self->priv->node = _tmp4_;
138
_tmp1_ = json_parser_get_root (self->priv->parser);
139
self->priv->node = _tmp1_;
144
171
e = _inner_error_;
145
172
_inner_error_ = NULL;
146
g_warning ("json_soup.vala:43: %s", e->message);
174
_tmp6_ = _tmp5_->message;
175
g_warning ("json_soup.vala:43: %s", _tmp6_);
147
176
_g_error_free0 (e);
150
179
if (_inner_error_ != NULL) {
151
180
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
152
181
g_clear_error (&_inner_error_);
193
static void _vala_SoupURI_free (SoupURI* self) {
194
g_boxed_free (soup_uri_get_type (), self);
164
198
JsonSoup* json_soup_construct_http (GType object_type, const gchar* url) {
165
199
JsonSoup * self = NULL;
166
SoupSessionAsync* _tmp0_ = NULL;
167
SoupSessionAsync* session;
168
SoupURI* _tmp1_ = NULL;
200
SoupSessionSync* _tmp0_;
201
SoupSessionSync* session;
170
SoupMessage* _tmp3_ = NULL;
171
205
SoupMessage* _tmp4_;
172
207
SoupMessage* message;
174
JsonParser* _tmp6_ = NULL;
175
JsonNode* _tmp7_ = NULL;
208
SoupSessionSync* _tmp6_;
176
212
GError * _inner_error_ = NULL;
177
213
g_return_val_if_fail (url != NULL, NULL);
178
214
self = (JsonSoup*) g_object_new (object_type, NULL);
179
_tmp0_ = (SoupSessionAsync*) soup_session_async_new ();
215
_tmp0_ = (SoupSessionSync*) soup_session_sync_new ();
180
216
session = _tmp0_;
181
_tmp1_ = soup_uri_new (url);
183
_tmp3_ = soup_message_new_from_uri ("GET", _tmp2_);
185
_soup_uri_free0 (_tmp2_);
187
_tmp5_ = soup_session_send_message ((SoupSession*) session, message);
189
g_warning ("json_soup.vala:50: Can not connect to %s", url);
218
_tmp2_ = soup_uri_new (_tmp1_);
220
_tmp4_ = soup_message_new_from_uri ("GET", _tmp3_);
222
__vala_SoupURI_free0 (_tmp3_);
226
_tmp8_ = soup_session_send_message ((SoupSession*) _tmp6_, _tmp7_);
227
if (_tmp8_ != ((guint) 200)) {
230
g_warning ("json_soup.vala:50: Can not connect to %s", _tmp9_);
191
_tmp6_ = json_parser_new ();
232
_tmp10_ = json_parser_new ();
192
233
_g_object_unref0 (self->priv->parser);
193
self->priv->parser = _tmp6_;
194
json_parser_load_from_data (self->priv->parser, (const gchar*) message->response_body->data, (gssize) (-1), &_inner_error_);
195
if (_inner_error_ != NULL) {
196
goto __catch3_g_error;
234
self->priv->parser = _tmp10_;
237
SoupMessage* _tmp12_;
238
SoupMessageBody* _tmp13_;
240
gint _tmp14__length1;
242
JsonNode* _tmp16_ = NULL;
243
_tmp11_ = self->priv->parser;
245
_tmp13_ = _tmp12_->response_body;
246
_tmp14_ = _tmp13_->data;
247
_tmp14__length1 = (gint) _tmp13_->length;
248
json_parser_load_from_data (_tmp11_, (const gchar*) _tmp14_, (gssize) (-1), &_inner_error_);
249
if (_inner_error_ != NULL) {
250
goto __catch4_g_error;
252
_tmp15_ = self->priv->parser;
253
_tmp16_ = json_parser_get_root (_tmp15_);
254
self->priv->node = _tmp16_;
198
_tmp7_ = json_parser_get_root (self->priv->parser);
199
self->priv->node = _tmp7_;
261
const gchar* _tmp18_;
204
262
e = _inner_error_;
205
263
_inner_error_ = NULL;
206
g_warning ("json_soup.vala:57: %s", e->message);
265
_tmp18_ = _tmp17_->message;
266
g_warning ("json_soup.vala:57: %s", _tmp18_);
207
267
_g_error_free0 (e);
210
270
if (_inner_error_ != NULL) {
211
271
_g_object_unref0 (message);
212
272
_g_object_unref0 (session);
228
static gpointer _json_object_ref0 (gpointer self) {
229
return self ? json_object_ref (self) : NULL;
288
static JsonObject* _vala_JsonObject_copy (JsonObject* self) {
289
return g_boxed_copy (json_object_get_type (), self);
293
static gpointer __vala_JsonObject_copy0 (gpointer self) {
294
return self ? _vala_JsonObject_copy (self) : NULL;
298
static void _vala_JsonObject_free (JsonObject* self) {
299
g_boxed_free (json_object_get_type (), self);
233
303
JsonSoup* json_soup_object (JsonSoup* self, const gchar* name) {
234
304
JsonSoup* result = NULL;
236
JsonObject* _tmp1_ = NULL;
306
JsonNodeType _tmp1_ = 0;
308
JsonObject* _tmp3_ = NULL;
238
310
JsonObject* object;
240
JsonNode* _tmp4_ = NULL;
313
gboolean _tmp7_ = FALSE;
315
const gchar* _tmp10_;
316
JsonNode* _tmp11_ = NULL;
241
317
g_return_val_if_fail (self != NULL, NULL);
242
318
g_return_val_if_fail (name != NULL, NULL);
243
_tmp0_ = json_node_get_node_type (self->priv->node);
244
if (_tmp0_ != JSON_NODE_OBJECT) {
319
_tmp0_ = self->priv->node;
320
_tmp1_ = json_node_get_node_type (_tmp0_);
321
if (_tmp1_ != JSON_NODE_OBJECT) {
245
322
g_warning ("json_soup.vala:70: This is not a object.");
249
_tmp1_ = json_node_get_object (self->priv->node);
250
_tmp2_ = _json_object_ref0 (_tmp1_);
252
_tmp3_ = json_object_has_member (object, name);
253
if (_tmp3_ == FALSE) {
254
g_warning ("json_soup.vala:75: There is no such member as %s.", name);
326
_tmp2_ = self->priv->node;
327
_tmp3_ = json_node_get_object (_tmp2_);
328
_tmp4_ = __vala_JsonObject_copy0 (_tmp3_);
332
_tmp7_ = json_object_has_member (_tmp5_, _tmp6_);
333
if (_tmp7_ == FALSE) {
336
g_warning ("json_soup.vala:75: There is no such member as %s.", _tmp8_);
256
_json_object_unref0 (object);
338
__vala_JsonObject_free0 (object);
259
_tmp4_ = json_object_get_member (object, name);
260
self->priv->node = _tmp4_;
343
_tmp11_ = json_object_get_member (_tmp9_, _tmp10_);
344
self->priv->node = _tmp11_;
262
_json_object_unref0 (object);
346
__vala_JsonObject_free0 (object);
267
351
JsonSoup* json_soup_sibling (JsonSoup* self, const gchar* name) {
268
352
JsonSoup* result = NULL;
269
354
g_return_val_if_fail (self != NULL, NULL);
270
355
g_return_val_if_fail (name != NULL, NULL);
271
356
json_soup_parent (self);
272
json_soup_object (self, name);
358
json_soup_object (self, _tmp0_);
278
static gpointer _json_array_ref0 (gpointer self) {
279
return self ? json_array_ref (self) : NULL;
364
static JsonArray* _vala_JsonArray_copy (JsonArray* self) {
365
return g_boxed_copy (json_array_get_type (), self);
369
static gpointer __vala_JsonArray_copy0 (gpointer self) {
370
return self ? _vala_JsonArray_copy (self) : NULL;
374
static void _vala_JsonArray_free (JsonArray* self) {
375
g_boxed_free (json_array_get_type (), self);
283
379
JsonSoup* json_soup_array (JsonSoup* self, gint idx) {
284
380
JsonSoup* result = NULL;
286
JsonArray* _tmp1_ = NULL;
382
JsonNodeType _tmp1_ = 0;
384
JsonArray* _tmp3_ = NULL;
288
386
JsonArray* array;
291
gboolean _tmp4_ = FALSE;
292
JsonNode* _tmp5_ = NULL;
390
gboolean _tmp7_ = FALSE;
396
JsonNode* _tmp15_ = NULL;
293
397
g_return_val_if_fail (self != NULL, NULL);
294
_tmp0_ = json_node_get_node_type (self->priv->node);
295
if (_tmp0_ != JSON_NODE_ARRAY) {
398
_tmp0_ = self->priv->node;
399
_tmp1_ = json_node_get_node_type (_tmp0_);
400
if (_tmp1_ != JSON_NODE_ARRAY) {
296
401
g_warning ("json_soup.vala:88: This is not a array.");
300
_tmp1_ = json_node_get_array (self->priv->node);
301
_tmp2_ = _json_array_ref0 (_tmp1_);
303
_tmp3_ = json_array_get_length (array);
304
length = (gint) _tmp3_;
405
_tmp2_ = self->priv->node;
406
_tmp3_ = json_node_get_array (_tmp2_);
407
_tmp4_ = __vala_JsonArray_copy0 (_tmp3_);
410
_tmp6_ = json_array_get_length (_tmp5_);
411
length = (gint) _tmp6_;
414
if (_tmp8_ > _tmp9_) {
419
_tmp7_ = _tmp10_ < 0;
311
g_warning ("json_soup.vala:94: Out of index. %d", idx);
425
g_warning ("json_soup.vala:94: Out of index. %d", _tmp12_);
313
_json_array_unref0 (array);
427
__vala_JsonArray_free0 (array);
316
_tmp5_ = json_array_get_element (array, (guint) idx);
317
self->priv->node = _tmp5_;
432
_tmp15_ = json_array_get_element (_tmp13_, (guint) _tmp14_);
433
self->priv->node = _tmp15_;
319
_json_array_unref0 (array);
435
__vala_JsonArray_free0 (array);
324
440
JsonSoup* json_soup_parent (JsonSoup* self) {
325
441
JsonSoup* result = NULL;
326
JsonNode* _tmp0_ = NULL;
443
JsonNode* _tmp1_ = NULL;
327
444
JsonNode* parent_node;
328
447
g_return_val_if_fail (self != NULL, NULL);
329
_tmp0_ = json_node_get_parent (self->priv->node);
330
parent_node = _tmp0_;
331
if (parent_node == NULL) {
448
_tmp0_ = self->priv->node;
449
_tmp1_ = json_node_get_parent (_tmp0_);
450
parent_node = _tmp1_;
451
_tmp2_ = parent_node;
452
if (_tmp2_ == NULL) {
332
453
g_warning ("json_soup.vala:103: Already be root.");
336
self->priv->node = parent_node;
457
_tmp3_ = parent_node;
458
self->priv->node = _tmp3_;
378
504
gboolean json_soup_is_object (JsonSoup* self) {
379
505
gboolean result = FALSE;
507
JsonNodeType _tmp1_ = 0;
381
508
g_return_val_if_fail (self != NULL, FALSE);
382
_tmp0_ = json_node_get_node_type (self->priv->node);
383
result = _tmp0_ == JSON_NODE_OBJECT;
509
_tmp0_ = self->priv->node;
510
_tmp1_ = json_node_get_node_type (_tmp0_);
511
result = _tmp1_ == JSON_NODE_OBJECT;
388
516
gboolean json_soup_is_array (JsonSoup* self) {
389
517
gboolean result = FALSE;
519
JsonNodeType _tmp1_ = 0;
391
520
g_return_val_if_fail (self != NULL, FALSE);
392
_tmp0_ = json_node_get_node_type (self->priv->node);
393
result = _tmp0_ == JSON_NODE_ARRAY;
521
_tmp0_ = self->priv->node;
522
_tmp1_ = json_node_get_node_type (_tmp0_);
523
result = _tmp1_ == JSON_NODE_ARRAY;
398
528
gboolean json_soup_is_string (JsonSoup* self) {
399
529
gboolean result = FALSE;
530
gboolean _tmp0_ = FALSE;
402
533
g_return_val_if_fail (self != NULL, FALSE);
403
534
_tmp0_ = json_soup_is_value (self);
404
535
if (_tmp0_ == FALSE) {
408
_tmp1_ = json_node_get_value_type (self->priv->node);
409
result = _tmp1_ == G_TYPE_STRING;
539
_tmp1_ = self->priv->node;
540
_tmp2_ = json_node_get_value_type (_tmp1_);
541
result = _tmp2_ == G_TYPE_STRING;
414
546
gboolean json_soup_is_int (JsonSoup* self) {
415
547
gboolean result = FALSE;
548
gboolean _tmp0_ = FALSE;
418
551
g_return_val_if_fail (self != NULL, FALSE);
419
552
_tmp0_ = json_soup_is_value (self);
420
553
if (_tmp0_ == FALSE) {
424
_tmp1_ = json_node_get_value_type (self->priv->node);
425
result = _tmp1_ == G_TYPE_INT64;
557
_tmp1_ = self->priv->node;
558
_tmp2_ = json_node_get_value_type (_tmp1_);
559
result = _tmp2_ == G_TYPE_INT64;
430
564
gboolean json_soup_is_double (JsonSoup* self) {
431
565
gboolean result = FALSE;
566
gboolean _tmp0_ = FALSE;
434
569
g_return_val_if_fail (self != NULL, FALSE);
435
570
_tmp0_ = json_soup_is_value (self);
436
571
if (_tmp0_ == FALSE) {
440
_tmp1_ = json_node_get_value_type (self->priv->node);
441
result = _tmp1_ == G_TYPE_DOUBLE;
575
_tmp1_ = self->priv->node;
576
_tmp2_ = json_node_get_value_type (_tmp1_);
577
result = _tmp2_ == G_TYPE_DOUBLE;
446
582
gboolean json_soup_is_bool (JsonSoup* self) {
447
583
gboolean result = FALSE;
584
gboolean _tmp0_ = FALSE;
450
587
g_return_val_if_fail (self != NULL, FALSE);
451
588
_tmp0_ = json_soup_is_value (self);
452
589
if (_tmp0_ == FALSE) {
456
_tmp1_ = json_node_get_value_type (self->priv->node);
457
result = _tmp1_ == G_TYPE_BOOLEAN;
593
_tmp1_ = self->priv->node;
594
_tmp2_ = json_node_get_value_type (_tmp1_);
595
result = _tmp2_ == G_TYPE_BOOLEAN;
462
600
gchar* json_soup_get_string (JsonSoup* self) {
463
601
gchar* result = NULL;
464
const gchar* _tmp0_ = NULL;
603
const gchar* _tmp1_ = NULL;
466
605
g_return_val_if_fail (self != NULL, NULL);
467
_tmp0_ = json_node_get_string (self->priv->node);
468
_tmp1_ = g_strdup (_tmp0_);
606
_tmp0_ = self->priv->node;
607
_tmp1_ = json_node_get_string (_tmp0_);
608
_tmp2_ = g_strdup (_tmp1_);
474
614
gint64 json_soup_get_int (JsonSoup* self) {
475
615
gint64 result = 0LL;
477
618
g_return_val_if_fail (self != NULL, 0LL);
478
_tmp0_ = json_node_get_int (self->priv->node);
619
_tmp0_ = self->priv->node;
620
_tmp1_ = json_node_get_int (_tmp0_);
484
626
gdouble json_soup_get_double (JsonSoup* self) {
485
627
gdouble result = 0.0;
629
gdouble _tmp1_ = 0.0;
487
630
g_return_val_if_fail (self != NULL, 0.0);
488
_tmp0_ = json_node_get_double (self->priv->node);
631
_tmp0_ = self->priv->node;
632
_tmp1_ = json_node_get_double (_tmp0_);
494
638
gboolean json_soup_get_bool (JsonSoup* self) {
495
639
gboolean result = FALSE;
641
gboolean _tmp1_ = FALSE;
497
642
g_return_val_if_fail (self != NULL, FALSE);
498
_tmp0_ = json_node_get_boolean (self->priv->node);
643
_tmp0_ = self->priv->node;
644
_tmp1_ = json_node_get_boolean (_tmp0_);
504
650
gint json_soup_length (JsonSoup* self) {
507
JsonArray* _tmp1_ = NULL;
652
gboolean _tmp0_ = FALSE;
654
JsonArray* _tmp2_ = NULL;
509
656
JsonArray* array;
511
659
g_return_val_if_fail (self != NULL, 0);
512
660
_tmp0_ = json_soup_is_array (self);
513
661
if (_tmp0_ == FALSE) {
517
_tmp1_ = json_node_get_array (self->priv->node);
518
_tmp2_ = _json_array_ref0 (_tmp1_);
520
_tmp3_ = json_array_get_length (array);
521
result = (gint) _tmp3_;
522
_json_array_unref0 (array);
665
_tmp1_ = self->priv->node;
666
_tmp2_ = json_node_get_array (_tmp1_);
667
_tmp3_ = __vala_JsonArray_copy0 (_tmp2_);
670
_tmp5_ = json_array_get_length (_tmp4_);
671
result = (gint) _tmp5_;
672
__vala_JsonArray_free0 (array);