Esempio n. 1
0
RygelSeekableResponse* rygel_seekable_response_construct (GType object_type, SoupServer* server, SoupMessage* msg, const char* uri, RygelHTTPSeek* seek, gsize file_length, GCancellable* cancellable) {
#line 251 "rygel-seekable-response.c"
	RygelSeekableResponse * self;
	gboolean partial;
	RygelHTTPSeek* _tmp0_;
	gchar* _tmp1_;
	GFile* _tmp2_;
#line 39 "rygel-seekable-response.vala"
	g_return_val_if_fail (server != NULL, NULL);
#line 39 "rygel-seekable-response.vala"
	g_return_val_if_fail (msg != NULL, NULL);
#line 39 "rygel-seekable-response.vala"
	g_return_val_if_fail (uri != NULL, NULL);
#line 39 "rygel-seekable-response.vala"
	g_return_val_if_fail (seek != NULL, NULL);
#line 45 "rygel-seekable-response.vala"
	partial = rygel_http_seek_get_length (seek) < file_length;
#line 47 "rygel-seekable-response.vala"
	self = (RygelSeekableResponse*) rygel_http_response_construct (object_type, server, msg, partial, cancellable);
#line 49 "rygel-seekable-response.vala"
	self->priv->seek = (_tmp0_ = _g_object_ref0 (seek), _g_object_unref0 (self->priv->seek), _tmp0_);
#line 50 "rygel-seekable-response.vala"
	self->priv->priority = rygel_seekable_response_get_requested_priority (self);
#line 51 "rygel-seekable-response.vala"
	self->priv->total_length = (gsize) rygel_http_seek_get_length (seek);
#line 53 "rygel-seekable-response.vala"
	self->priv->buffer = (_tmp1_ = g_new0 (gchar, RYGEL_SEEKABLE_RESPONSE_BUFFER_LENGTH), self->priv->buffer = (g_free (self->priv->buffer), NULL), self->priv->buffer_length1 = RYGEL_SEEKABLE_RESPONSE_BUFFER_LENGTH, self->priv->_buffer_size_ = self->priv->buffer_length1, _tmp1_);
#line 54 "rygel-seekable-response.vala"
	self->priv->file = (_tmp2_ = g_file_new_for_uri (uri), _g_object_unref0 (self->priv->file), _tmp2_);
#line 279 "rygel-seekable-response.c"
	return self;
}
RygelSeekableResponse* rygel_seekable_response_construct (GType object_type, SoupServer* server, SoupMessage* msg, const char* uri, RygelSeek* seek, gsize file_length) {
	RygelSeekableResponse * self;
	RygelSeek* _tmp1_;
	RygelSeek* _tmp0_;
	gchar* _tmp2_;
	GFile* _tmp3_;
	g_return_val_if_fail (server != NULL, NULL);
	g_return_val_if_fail (msg != NULL, NULL);
	g_return_val_if_fail (uri != NULL, NULL);
	self = (RygelSeekableResponse*) rygel_http_response_construct (object_type, server, msg, seek != NULL);
	_tmp1_ = NULL;
	_tmp0_ = NULL;
	self->priv->seek = (_tmp1_ = (_tmp0_ = seek, (_tmp0_ == NULL) ? NULL : g_object_ref (_tmp0_)), (self->priv->seek == NULL) ? NULL : (self->priv->seek = (g_object_unref (self->priv->seek), NULL)), _tmp1_);
	self->priv->total_length = file_length;
	self->priv->priority = rygel_seekable_response_get_requested_priority (self);
	if (seek != NULL) {
		self->priv->total_length = (gsize) rygel_seek_get_length (seek);
	} else {
		self->priv->total_length = file_length;
	}
	g_signal_connect_object (msg, "wrote-chunk", (GCallback) _rygel_seekable_response_on_wrote_chunk_soup_message_wrote_chunk, self, 0);
	_tmp2_ = NULL;
	self->priv->buffer = (_tmp2_ = g_new0 (gchar, RYGEL_SEEKABLE_RESPONSE_BUFFER_LENGTH), self->priv->buffer = (g_free (self->priv->buffer), NULL), self->priv->buffer_length1 = RYGEL_SEEKABLE_RESPONSE_BUFFER_LENGTH, self->priv->buffer_size = self->priv->buffer_length1, _tmp2_);
	_tmp3_ = NULL;
	self->priv->file = (_tmp3_ = g_file_new_for_uri (uri), (self->priv->file == NULL) ? NULL : (self->priv->file = (g_object_unref (self->priv->file), NULL)), _tmp3_);
	return self;
}