summaryrefslogtreecommitdiff
path: root/libsoup/soup-message.c
diff options
context:
space:
mode:
Diffstat (limited to 'libsoup/soup-message.c')
-rw-r--r--libsoup/soup-message.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/libsoup/soup-message.c b/libsoup/soup-message.c
index ab807935..a7b7349c 100644
--- a/libsoup/soup-message.c
+++ b/libsoup/soup-message.c
@@ -111,6 +111,7 @@ enum {
GOT_INFORMATIONAL,
GOT_HEADERS,
+ GOT_BODY_DATA,
GOT_BODY,
CONTENT_SNIFFED,
@@ -436,6 +437,26 @@ soup_message_class_init (SoupMessageClass *message_class)
NULL,
G_TYPE_NONE, 0);
+ /**
+ * SoupMessage::got-body-data:
+ * @msg: the message
+ * @chunk_size: the number of bytes read
+ *
+ * Emitted after reading a portion of the message
+ * body from the network.
+ *
+ * Since: 3.4
+ */
+ signals[GOT_BODY_DATA] =
+ g_signal_new ("got-body-data",
+ G_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_FIRST,
+ 0,
+ NULL, NULL,
+ NULL,
+ G_TYPE_NONE, 1,
+ G_TYPE_UINT);
+
/**
* SoupMessage::got-body:
* @msg: the message
@@ -1213,6 +1234,13 @@ soup_message_got_headers (SoupMessage *msg)
}
void
+soup_message_got_body_data (SoupMessage *msg,
+ gsize chunk_size)
+{
+ g_signal_emit (msg, signals[GOT_BODY_DATA], 0, chunk_size);
+}
+
+void
soup_message_got_body (SoupMessage *msg)
{
g_signal_emit (msg, signals[GOT_BODY], 0);