~ubuntu-branches/ubuntu/trusty/rygel/trusty

« back to all changes in this revision

Viewing changes to tests/rygel-http-gst-sink.c

  • Committer: Package Import Robot
  • Author(s): Andreas Henriksson
  • Date: 2011-12-16 15:21:25 UTC
  • mfrom: (14.1.2 sid)
  • Revision ID: package-import@ubuntu.com-20111216152125-qgn31dkfmhouhrf0
Upload to unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* rygel-http-gst-sink.c generated by valac 0.12.0, the Vala compiler
 
1
/* rygel-http-gst-sink.c generated by valac 0.14.1, the Vala compiler
2
2
 * generated from rygel-http-gst-sink.vala, do not modify */
3
3
 
4
4
/*
164
164
static GstFlowReturn rygel_http_gst_sink_real_render (GstBaseSink* base, GstBuffer* buffer);
165
165
static Block2Data* block2_data_ref (Block2Data* _data2_);
166
166
static void block2_data_unref (Block2Data* _data2_);
167
 
static gboolean _lambda2_ (Block2Data* _data2_);
 
167
static gboolean __lambda2_ (Block2Data* _data2_);
168
168
gboolean rygel_http_gst_sink_push_data (RygelHTTPGstSink* self, GstBuffer* buffer);
169
 
static gboolean __lambda2__gsource_func (gpointer self);
 
169
static gboolean ___lambda2__gsource_func (gpointer self);
170
170
void rygel_http_response_push_data (RygelHTTPResponse* self, guint8* data, int data_length1);
171
171
static void rygel_http_gst_sink_finalize (GObject* obj);
172
172
 
173
173
 
174
174
static void _rygel_http_gst_sink_on_cancelled_g_cancellable_cancelled (GCancellable* _sender, gpointer self) {
 
175
#line 74 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
175
176
        rygel_http_gst_sink_on_cancelled (self);
 
177
#line 178 "rygel-http-gst-sink.c"
176
178
}
177
179
 
178
180
 
179
181
static void _rygel_http_gst_sink_on_wrote_chunk_soup_message_wrote_chunk (SoupMessage* _sender, gpointer self) {
 
182
#line 75 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
180
183
        rygel_http_gst_sink_on_wrote_chunk (self, _sender);
 
184
#line 185 "rygel-http-gst-sink.c"
181
185
}
182
186
 
183
187
 
184
188
RygelHTTPGstSink* rygel_http_gst_sink_construct (GType object_type, RygelHTTPResponse* response) {
185
189
        RygelHTTPGstSink * self = NULL;
186
 
        GMutex* _tmp0_ = NULL;
187
 
        GCond* _tmp1_ = NULL;
188
 
        GCancellable* _tmp2_ = NULL;
189
 
        gint _tmp3_;
 
190
        gint64 _tmp0_;
 
191
        GMutex* _tmp1_;
 
192
        GCond* _tmp2_;
 
193
        GCancellable* _tmp3_;
 
194
        RygelHTTPResponse* _tmp4_;
 
195
        gint _tmp5_;
 
196
        gint _tmp6_;
 
197
        RygelHTTPResponse* _tmp7_;
 
198
        RygelHTTPResponse* _tmp8_;
 
199
        RygelHTTPSeek* _tmp9_;
 
200
        GCancellable* _tmp16_;
 
201
        RygelHTTPResponse* _tmp17_;
 
202
        SoupMessage* _tmp18_;
 
203
#line 54 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
190
204
        g_return_val_if_fail (response != NULL, NULL);
 
205
#line 54 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
191
206
        self = (RygelHTTPGstSink*) g_object_new (object_type, NULL);
 
207
#line 55 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
192
208
        self->priv->chunks_buffered = (gint64) 0;
 
209
#line 56 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
193
210
        self->priv->bytes_sent = (gint64) 0;
194
 
        self->priv->max_bytes = G_MAXINT64;
195
 
        _tmp0_ = g_mutex_new ();
 
211
#line 57 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
212
        _tmp0_ = G_MAXINT64;
 
213
#line 57 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
214
        self->priv->max_bytes = _tmp0_;
 
215
#line 58 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
216
        _tmp1_ = g_mutex_new ();
 
217
#line 58 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
196
218
        _g_mutex_free0 (self->priv->buffer_mutex);
197
 
        self->priv->buffer_mutex = _tmp0_;
198
 
        _tmp1_ = g_cond_new ();
 
219
#line 58 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
220
        self->priv->buffer_mutex = _tmp1_;
 
221
#line 59 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
222
        _tmp2_ = g_cond_new ();
 
223
#line 59 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
199
224
        _g_cond_free0 (self->priv->buffer_condition);
200
 
        self->priv->buffer_condition = _tmp1_;
201
 
        _tmp2_ = g_cancellable_new ();
 
225
#line 59 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
226
        self->priv->buffer_condition = _tmp2_;
 
227
#line 61 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
228
        _tmp3_ = g_cancellable_new ();
 
229
#line 61 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
202
230
        _g_object_unref0 (self->cancellable);
203
 
        self->cancellable = _tmp2_;
204
 
        _tmp3_ = rygel_http_response_get_priority (response);
205
 
        self->priv->priority = _tmp3_;
206
 
        self->priv->response = response;
 
231
#line 61 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
232
        self->cancellable = _tmp3_;
 
233
#line 62 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
234
        _tmp4_ = response;
 
235
#line 62 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
236
        _tmp5_ = rygel_http_response_get_priority (_tmp4_);
 
237
#line 62 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
238
        _tmp6_ = _tmp5_;
 
239
#line 62 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
240
        self->priv->priority = _tmp6_;
 
241
#line 63 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
242
        _tmp7_ = response;
 
243
#line 63 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
244
        self->priv->response = _tmp7_;
 
245
#line 65 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
207
246
        gst_base_sink_set_sync ((GstBaseSink*) self, FALSE);
 
247
#line 66 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
208
248
        gst_object_set_name ((GstObject*) self, RYGEL_HTTP_GST_SINK_NAME);
209
 
        if (response->seek != NULL) {
210
 
                if (RYGEL_IS_HTTP_BYTE_SEEK (response->seek)) {
211
 
                        gint64 _tmp4_;
212
 
                        _tmp4_ = rygel_http_seek_get_length (response->seek);
213
 
                        self->priv->max_bytes = _tmp4_;
 
249
#line 68 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
250
        _tmp8_ = response;
 
251
#line 68 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
252
        _tmp9_ = _tmp8_->seek;
 
253
#line 68 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
254
        if (_tmp9_ != NULL) {
 
255
#line 256 "rygel-http-gst-sink.c"
 
256
                RygelHTTPResponse* _tmp10_;
 
257
                RygelHTTPSeek* _tmp11_;
 
258
#line 69 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
259
                _tmp10_ = response;
 
260
#line 69 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
261
                _tmp11_ = _tmp10_->seek;
 
262
#line 69 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
263
                if (RYGEL_IS_HTTP_BYTE_SEEK (_tmp11_)) {
 
264
#line 265 "rygel-http-gst-sink.c"
 
265
                        RygelHTTPResponse* _tmp12_;
 
266
                        RygelHTTPSeek* _tmp13_;
 
267
                        gint64 _tmp14_;
 
268
                        gint64 _tmp15_;
 
269
#line 70 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
270
                        _tmp12_ = response;
 
271
#line 70 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
272
                        _tmp13_ = _tmp12_->seek;
 
273
#line 70 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
274
                        _tmp14_ = rygel_http_seek_get_length (_tmp13_);
 
275
#line 70 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
276
                        _tmp15_ = _tmp14_;
 
277
#line 70 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
278
                        self->priv->max_bytes = _tmp15_;
 
279
#line 280 "rygel-http-gst-sink.c"
214
280
                }
215
281
        }
216
 
        g_signal_connect_object (self->cancellable, "cancelled", (GCallback) _rygel_http_gst_sink_on_cancelled_g_cancellable_cancelled, self, 0);
217
 
        g_signal_connect_object (response->msg, "wrote-chunk", (GCallback) _rygel_http_gst_sink_on_wrote_chunk_soup_message_wrote_chunk, self, 0);
 
282
#line 74 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
283
        _tmp16_ = self->cancellable;
 
284
#line 74 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
285
        g_signal_connect_object (_tmp16_, "cancelled", (GCallback) _rygel_http_gst_sink_on_cancelled_g_cancellable_cancelled, self, 0);
 
286
#line 75 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
287
        _tmp17_ = response;
 
288
#line 75 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
289
        _tmp18_ = _tmp17_->msg;
 
290
#line 75 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
291
        g_signal_connect_object (_tmp18_, "wrote-chunk", (GCallback) _rygel_http_gst_sink_on_wrote_chunk_soup_message_wrote_chunk, self, 0);
 
292
#line 54 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
218
293
        return self;
 
294
#line 295 "rygel-http-gst-sink.c"
219
295
}
220
296
 
221
297
 
222
298
RygelHTTPGstSink* rygel_http_gst_sink_new (RygelHTTPResponse* response) {
 
299
#line 54 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
223
300
        return rygel_http_gst_sink_construct (RYGEL_TYPE_HTTP_GST_SINK, response);
 
301
#line 302 "rygel-http-gst-sink.c"
224
302
}
225
303
 
226
304
 
227
305
static gpointer _gst_buffer_ref0 (gpointer self) {
 
306
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
228
307
        return self ? gst_buffer_ref (self) : NULL;
 
308
#line 309 "rygel-http-gst-sink.c"
229
309
}
230
310
 
231
311
 
232
312
static Block2Data* block2_data_ref (Block2Data* _data2_) {
 
313
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
233
314
        g_atomic_int_inc (&_data2_->_ref_count_);
 
315
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
234
316
        return _data2_;
 
317
#line 318 "rygel-http-gst-sink.c"
235
318
}
236
319
 
237
320
 
238
321
static void block2_data_unref (Block2Data* _data2_) {
 
322
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
239
323
        if (g_atomic_int_dec_and_test (&_data2_->_ref_count_)) {
 
324
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
240
325
                _gst_object_unref0 (_data2_->self);
 
326
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
241
327
                _gst_buffer_unref0 (_data2_->buffer);
 
328
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
242
329
                g_slice_free (Block2Data, _data2_);
 
330
#line 331 "rygel-http-gst-sink.c"
243
331
        }
244
332
}
245
333
 
246
334
 
247
 
static gboolean _lambda2_ (Block2Data* _data2_) {
 
335
static gboolean __lambda2_ (Block2Data* _data2_) {
248
336
        RygelHTTPGstSink * self;
249
337
        gboolean result = FALSE;
250
 
        gboolean _tmp0_;
 
338
        GstBuffer* _tmp0_;
 
339
        gboolean _tmp1_ = FALSE;
 
340
#line 91 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
251
341
        self = _data2_->self;
252
 
        _tmp0_ = rygel_http_gst_sink_push_data (self, _data2_->buffer);
253
 
        result = _tmp0_;
 
342
#line 92 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
343
        _tmp0_ = _data2_->buffer;
 
344
#line 92 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
345
        _tmp1_ = rygel_http_gst_sink_push_data (self, _tmp0_);
 
346
#line 92 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
347
        result = _tmp1_;
 
348
#line 92 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
254
349
        return result;
 
350
#line 351 "rygel-http-gst-sink.c"
255
351
}
256
352
 
257
353
 
258
 
static gboolean __lambda2__gsource_func (gpointer self) {
 
354
static gboolean ___lambda2__gsource_func (gpointer self) {
259
355
        gboolean result;
260
 
        result = _lambda2_ (self);
 
356
        result = __lambda2_ (self);
 
357
#line 91 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
261
358
        return result;
 
359
#line 360 "rygel-http-gst-sink.c"
262
360
}
263
361
 
264
362
 
266
364
        RygelHTTPGstSink * self;
267
365
        GstFlowReturn result = 0;
268
366
        Block2Data* _data2_;
269
 
        gboolean _tmp2_;
 
367
        GstBuffer* _tmp0_;
 
368
        GstBuffer* _tmp1_;
 
369
        GMutex* _tmp2_;
 
370
        GMutex* _tmp10_;
 
371
        GCancellable* _tmp11_;
 
372
        gboolean _tmp12_ = FALSE;
 
373
        gint _tmp13_;
 
374
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
270
375
        self = (RygelHTTPGstSink*) base;
 
376
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
271
377
        g_return_val_if_fail (buffer != NULL, 0);
 
378
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
272
379
        _data2_ = g_slice_new0 (Block2Data);
 
380
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
273
381
        _data2_->_ref_count_ = 1;
 
382
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
274
383
        _data2_->self = gst_object_ref (self);
275
 
        _data2_->buffer = _gst_buffer_ref0 (buffer);
276
 
        g_mutex_lock (self->priv->buffer_mutex);
 
384
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
385
        _tmp0_ = buffer;
 
386
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
387
        _tmp1_ = _gst_buffer_ref0 (_tmp0_);
 
388
#line 78 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
389
        _data2_->buffer = _tmp1_;
 
390
#line 79 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
391
        _tmp2_ = self->priv->buffer_mutex;
 
392
#line 79 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
393
        g_mutex_lock (_tmp2_);
 
394
#line 80 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
277
395
        while (TRUE) {
278
 
                gboolean _tmp0_ = FALSE;
279
 
                gboolean _tmp1_;
280
 
                _tmp1_ = g_cancellable_is_cancelled (self->cancellable);
281
 
                if (!_tmp1_) {
282
 
                        _tmp0_ = self->priv->chunks_buffered > RYGEL_HTTP_GST_SINK_MAX_BUFFERED_CHUNKS;
 
396
#line 397 "rygel-http-gst-sink.c"
 
397
                gboolean _tmp3_ = FALSE;
 
398
                GCancellable* _tmp4_;
 
399
                gboolean _tmp5_ = FALSE;
 
400
                gboolean _tmp7_;
 
401
                GCond* _tmp8_;
 
402
                GMutex* _tmp9_;
 
403
#line 80 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
404
                _tmp4_ = self->cancellable;
 
405
#line 80 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
406
                _tmp5_ = g_cancellable_is_cancelled (_tmp4_);
 
407
#line 80 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
408
                if (!_tmp5_) {
 
409
#line 410 "rygel-http-gst-sink.c"
 
410
                        gint64 _tmp6_;
 
411
#line 81 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
412
                        _tmp6_ = self->priv->chunks_buffered;
 
413
#line 81 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
414
                        _tmp3_ = _tmp6_ > ((gint64) RYGEL_HTTP_GST_SINK_MAX_BUFFERED_CHUNKS);
 
415
#line 416 "rygel-http-gst-sink.c"
283
416
                } else {
284
 
                        _tmp0_ = FALSE;
 
417
#line 80 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
418
                        _tmp3_ = FALSE;
 
419
#line 420 "rygel-http-gst-sink.c"
285
420
                }
286
 
                if (!_tmp0_) {
 
421
#line 80 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
422
                _tmp7_ = _tmp3_;
 
423
#line 80 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
424
                if (!_tmp7_) {
 
425
#line 80 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
287
426
                        break;
 
427
#line 428 "rygel-http-gst-sink.c"
288
428
                }
289
 
                g_cond_wait (self->priv->buffer_condition, self->priv->buffer_mutex);
 
429
#line 83 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
430
                _tmp8_ = self->priv->buffer_condition;
 
431
#line 83 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
432
                _tmp9_ = self->priv->buffer_mutex;
 
433
#line 83 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
434
                g_cond_wait (_tmp8_, _tmp9_);
 
435
#line 436 "rygel-http-gst-sink.c"
290
436
        }
291
 
        g_mutex_unlock (self->priv->buffer_mutex);
292
 
        _tmp2_ = g_cancellable_is_cancelled (self->cancellable);
293
 
        if (_tmp2_) {
 
437
#line 85 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
438
        _tmp10_ = self->priv->buffer_mutex;
 
439
#line 85 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
440
        g_mutex_unlock (_tmp10_);
 
441
#line 87 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
442
        _tmp11_ = self->cancellable;
 
443
#line 87 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
444
        _tmp12_ = g_cancellable_is_cancelled (_tmp11_);
 
445
#line 87 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
446
        if (_tmp12_) {
 
447
#line 88 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
294
448
                result = GST_FLOW_OK;
 
449
#line 88 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
295
450
                block2_data_unref (_data2_);
 
451
#line 88 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
296
452
                _data2_ = NULL;
 
453
#line 88 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
297
454
                return result;
 
455
#line 456 "rygel-http-gst-sink.c"
298
456
        }
299
 
        g_idle_add_full (self->priv->priority, __lambda2__gsource_func, block2_data_ref (_data2_), block2_data_unref);
 
457
#line 91 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
458
        _tmp13_ = self->priv->priority;
 
459
#line 91 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
460
        g_idle_add_full (_tmp13_, ___lambda2__gsource_func, block2_data_ref (_data2_), block2_data_unref);
 
461
#line 95 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
300
462
        result = GST_FLOW_OK;
 
463
#line 95 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
301
464
        block2_data_unref (_data2_);
 
465
#line 95 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
302
466
        _data2_ = NULL;
 
467
#line 95 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
303
468
        return result;
 
469
#line 470 "rygel-http-gst-sink.c"
304
470
}
305
471
 
306
472
 
307
473
gboolean rygel_http_gst_sink_push_data (RygelHTTPGstSink* self, GstBuffer* buffer) {
308
474
        gboolean result = FALSE;
 
475
        gint64 _tmp0_;
 
476
        gint64 _tmp1_;
309
477
        gint64 left;
310
 
        gboolean _tmp0_ = FALSE;
311
 
        gboolean _tmp1_;
312
 
        gint64 _tmp2_;
 
478
        gboolean _tmp2_ = FALSE;
 
479
        GCancellable* _tmp3_;
 
480
        gboolean _tmp4_ = FALSE;
 
481
        gboolean _tmp6_;
 
482
        GstBuffer* _tmp7_;
 
483
        guint _tmp8_;
 
484
        gint64 _tmp9_;
 
485
        gint64 _tmp10_ = 0LL;
313
486
        gint64 to_send;
 
487
        RygelHTTPResponse* _tmp11_;
 
488
        GstBuffer* _tmp12_;
 
489
        guint8* _tmp13_;
 
490
        gint _tmp13__length1;
 
491
        gint64 _tmp14_;
 
492
        gint64 _tmp15_;
 
493
        gint64 _tmp16_;
 
494
        gint64 _tmp17_;
 
495
#line 99 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
314
496
        g_return_val_if_fail (self != NULL, FALSE);
 
497
#line 99 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
315
498
        g_return_val_if_fail (buffer != NULL, FALSE);
316
 
        left = self->priv->max_bytes - self->priv->bytes_sent;
317
 
        _tmp1_ = g_cancellable_is_cancelled (self->cancellable);
318
 
        if (_tmp1_) {
319
 
                _tmp0_ = TRUE;
 
499
#line 100 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
500
        _tmp0_ = self->priv->max_bytes;
 
501
#line 100 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
502
        _tmp1_ = self->priv->bytes_sent;
 
503
#line 100 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
504
        left = _tmp0_ - _tmp1_;
 
505
#line 102 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
506
        _tmp3_ = self->cancellable;
 
507
#line 102 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
508
        _tmp4_ = g_cancellable_is_cancelled (_tmp3_);
 
509
#line 102 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
510
        if (_tmp4_) {
 
511
#line 102 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
512
                _tmp2_ = TRUE;
 
513
#line 514 "rygel-http-gst-sink.c"
320
514
        } else {
321
 
                _tmp0_ = left <= 0;
 
515
                gint64 _tmp5_;
 
516
#line 102 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
517
                _tmp5_ = left;
 
518
#line 102 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
519
                _tmp2_ = _tmp5_ <= ((gint64) 0);
 
520
#line 521 "rygel-http-gst-sink.c"
322
521
        }
323
 
        if (_tmp0_) {
 
522
#line 102 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
523
        _tmp6_ = _tmp2_;
 
524
#line 102 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
525
        if (_tmp6_) {
 
526
#line 103 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
324
527
                result = FALSE;
 
528
#line 103 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
325
529
                return result;
 
530
#line 531 "rygel-http-gst-sink.c"
326
531
        }
327
 
        _tmp2_ = MIN ((gint64) buffer->size, left);
328
 
        to_send = _tmp2_;
329
 
        rygel_http_response_push_data (self->priv->response, buffer->data + 0, to_send - 0);
330
 
        self->priv->chunks_buffered++;
331
 
        self->priv->bytes_sent = self->priv->bytes_sent + to_send;
 
532
#line 106 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
533
        _tmp7_ = buffer;
 
534
#line 106 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
535
        _tmp8_ = _tmp7_->size;
 
536
#line 106 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
537
        _tmp9_ = left;
 
538
#line 106 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
539
        _tmp10_ = MIN ((gint64) _tmp8_, _tmp9_);
 
540
#line 106 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
541
        to_send = _tmp10_;
 
542
#line 108 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
543
        _tmp11_ = self->priv->response;
 
544
#line 108 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
545
        _tmp12_ = buffer;
 
546
#line 108 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
547
        _tmp13_ = _tmp12_->data;
 
548
#line 108 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
549
        _tmp13__length1 = (gint) _tmp12_->size;
 
550
#line 108 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
551
        _tmp14_ = to_send;
 
552
#line 108 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
553
        rygel_http_response_push_data (_tmp11_, _tmp13_ + 0, _tmp14_ - 0);
 
554
#line 109 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
555
        _tmp15_ = self->priv->chunks_buffered;
 
556
#line 109 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
557
        self->priv->chunks_buffered = _tmp15_ + 1;
 
558
#line 110 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
559
        _tmp16_ = self->priv->bytes_sent;
 
560
#line 110 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
561
        _tmp17_ = to_send;
 
562
#line 110 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
563
        self->priv->bytes_sent = _tmp16_ + _tmp17_;
 
564
#line 112 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
332
565
        result = FALSE;
 
566
#line 112 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
333
567
        return result;
 
568
#line 569 "rygel-http-gst-sink.c"
334
569
}
335
570
 
336
571
 
337
572
static void rygel_http_gst_sink_on_wrote_chunk (RygelHTTPGstSink* self, SoupMessage* msg) {
 
573
        GMutex* _tmp0_;
 
574
        gint64 _tmp1_;
 
575
        gint64 _tmp2_;
 
576
        GMutex* _tmp4_;
 
577
#line 115 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
338
578
        g_return_if_fail (self != NULL);
 
579
#line 115 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
339
580
        g_return_if_fail (msg != NULL);
340
 
        g_mutex_lock (self->priv->buffer_mutex);
341
 
        self->priv->chunks_buffered--;
342
 
        if (self->priv->chunks_buffered < RYGEL_HTTP_GST_SINK_MIN_BUFFERED_CHUNKS) {
343
 
                g_cond_broadcast (self->priv->buffer_condition);
 
581
#line 116 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
582
        _tmp0_ = self->priv->buffer_mutex;
 
583
#line 116 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
584
        g_mutex_lock (_tmp0_);
 
585
#line 117 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
586
        _tmp1_ = self->priv->chunks_buffered;
 
587
#line 117 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
588
        self->priv->chunks_buffered = _tmp1_ - 1;
 
589
#line 119 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
590
        _tmp2_ = self->priv->chunks_buffered;
 
591
#line 119 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
592
        if (_tmp2_ < ((gint64) RYGEL_HTTP_GST_SINK_MIN_BUFFERED_CHUNKS)) {
 
593
#line 594 "rygel-http-gst-sink.c"
 
594
                GCond* _tmp3_;
 
595
#line 120 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
596
                _tmp3_ = self->priv->buffer_condition;
 
597
#line 120 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
598
                g_cond_broadcast (_tmp3_);
 
599
#line 600 "rygel-http-gst-sink.c"
344
600
        }
345
 
        g_mutex_unlock (self->priv->buffer_mutex);
 
601
#line 122 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
602
        _tmp4_ = self->priv->buffer_mutex;
 
603
#line 122 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
604
        g_mutex_unlock (_tmp4_);
 
605
#line 606 "rygel-http-gst-sink.c"
346
606
}
347
607
 
348
608
 
349
609
static void rygel_http_gst_sink_on_cancelled (RygelHTTPGstSink* self) {
350
 
        guint _tmp0_;
 
610
        GMutex* _tmp0_;
 
611
        GCond* _tmp1_;
 
612
        GMutex* _tmp2_;
 
613
        RygelHTTPResponse* _tmp3_;
 
614
        SoupMessage* _tmp4_;
 
615
        guint _tmp5_ = 0U;
 
616
#line 125 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
351
617
        g_return_if_fail (self != NULL);
352
 
        g_mutex_lock (self->priv->buffer_mutex);
353
 
        g_cond_broadcast (self->priv->buffer_condition);
354
 
        g_mutex_unlock (self->priv->buffer_mutex);
355
 
        g_signal_parse_name ("wrote-chunk", SOUP_TYPE_MESSAGE, &_tmp0_, NULL, FALSE);
356
 
        g_signal_handlers_disconnect_matched (self->priv->response->msg, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp0_, 0, NULL, (GCallback) _rygel_http_gst_sink_on_wrote_chunk_soup_message_wrote_chunk, self);
 
618
#line 126 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
619
        _tmp0_ = self->priv->buffer_mutex;
 
620
#line 126 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
621
        g_mutex_lock (_tmp0_);
 
622
#line 127 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
623
        _tmp1_ = self->priv->buffer_condition;
 
624
#line 127 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
625
        g_cond_broadcast (_tmp1_);
 
626
#line 128 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
627
        _tmp2_ = self->priv->buffer_mutex;
 
628
#line 128 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
629
        g_mutex_unlock (_tmp2_);
 
630
#line 130 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
631
        _tmp3_ = self->priv->response;
 
632
#line 130 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
633
        _tmp4_ = _tmp3_->msg;
 
634
#line 130 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
635
        g_signal_parse_name ("wrote-chunk", soup_message_get_type (), &_tmp5_, NULL, FALSE);
 
636
#line 130 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
637
        g_signal_handlers_disconnect_matched (_tmp4_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _tmp5_, 0, NULL, (GCallback) _rygel_http_gst_sink_on_wrote_chunk_soup_message_wrote_chunk, self);
 
638
#line 639 "rygel-http-gst-sink.c"
357
639
}
358
640
 
359
641
 
360
642
static gpointer _gst_caps_ref0 (gpointer self) {
 
643
#line 47 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
361
644
        return self ? gst_caps_ref (self) : NULL;
 
645
#line 646 "rygel-http-gst-sink.c"
362
646
}
363
647
 
364
648
 
365
649
static void rygel_http_gst_sink_class_init (RygelHTTPGstSinkClass * klass) {
366
 
        GstCaps* _tmp0_ = NULL;
 
650
        GstCaps* _tmp0_;
367
651
        GstCaps* caps;
368
652
        GstCaps* _tmp1_;
369
 
        GstPadTemplate* _tmp2_ = NULL;
 
653
        GstCaps* _tmp2_;
 
654
        GstPadTemplate* _tmp3_;
370
655
        GstPadTemplate* template;
 
656
        GstPadTemplate* _tmp4_;
 
657
#line 26 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
371
658
        rygel_http_gst_sink_parent_class = g_type_class_peek_parent (klass);
 
659
#line 26 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
372
660
        g_type_class_add_private (klass, sizeof (RygelHTTPGstSinkPrivate));
 
661
#line 26 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
373
662
        GST_BASE_SINK_CLASS (klass)->render = rygel_http_gst_sink_real_render;
 
663
#line 26 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
374
664
        G_OBJECT_CLASS (klass)->finalize = rygel_http_gst_sink_finalize;
 
665
#line 46 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
375
666
        _tmp0_ = gst_caps_new_any ();
 
667
#line 46 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
376
668
        caps = _tmp0_;
377
 
        _tmp1_ = _gst_caps_ref0 (caps);
378
 
        _tmp2_ = gst_pad_template_new (RYGEL_HTTP_GST_SINK_PAD_NAME, GST_PAD_SINK, GST_PAD_ALWAYS, _tmp1_);
379
 
        template = _tmp2_;
380
 
        gst_element_class_add_pad_template (GST_ELEMENT_CLASS (klass), template);
 
669
#line 47 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
670
        _tmp1_ = caps;
 
671
#line 47 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
672
        _tmp2_ = _gst_caps_ref0 (_tmp1_);
 
673
#line 47 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
674
        _tmp3_ = gst_pad_template_new (RYGEL_HTTP_GST_SINK_PAD_NAME, GST_PAD_SINK, GST_PAD_ALWAYS, _tmp2_);
 
675
#line 47 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
676
        gst_object_ref_sink (_tmp3_);
 
677
#line 47 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
678
        template = _tmp3_;
 
679
#line 51 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
680
        _tmp4_ = template;
 
681
#line 51 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
 
682
        gst_element_class_add_pad_template (GST_ELEMENT_CLASS (klass), _tmp4_);
 
683
#line 45 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
381
684
        _gst_object_unref0 (template);
 
685
#line 45 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
382
686
        _gst_caps_unref0 (caps);
 
687
#line 688 "rygel-http-gst-sink.c"
383
688
}
384
689
 
385
690
 
386
691
static void rygel_http_gst_sink_instance_init (RygelHTTPGstSink * self) {
 
692
#line 26 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
387
693
        self->priv = RYGEL_HTTP_GST_SINK_GET_PRIVATE (self);
 
694
#line 695 "rygel-http-gst-sink.c"
388
695
}
389
696
 
390
697
 
391
698
static void rygel_http_gst_sink_finalize (GObject* obj) {
392
699
        RygelHTTPGstSink * self;
 
700
#line 26 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
393
701
        self = RYGEL_HTTP_GST_SINK (obj);
 
702
#line 33 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
394
703
        _g_object_unref0 (self->cancellable);
 
704
#line 42 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
395
705
        _g_mutex_free0 (self->priv->buffer_mutex);
 
706
#line 43 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
396
707
        _g_cond_free0 (self->priv->buffer_condition);
 
708
#line 26 "/home/jens/Source/rygel/tests/rygel-http-gst-sink.vala"
397
709
        G_OBJECT_CLASS (rygel_http_gst_sink_parent_class)->finalize (obj);
 
710
#line 711 "rygel-http-gst-sink.c"
398
711
}
399
712
 
400
713