Soup.MultipartInputStream

g GObject.GInterface GObject.GInterface Gio.PollableInputStream Gio.PollableInputStream GObject.GInterface->Gio.PollableInputStream GObject.Object GObject.Object Gio.InputStream Gio.InputStream GObject.Object->Gio.InputStream Gio.FilterInputStream Gio.FilterInputStream Soup.MultipartInputStream Soup.MultipartInputStream Gio.FilterInputStream->Soup.MultipartInputStream Gio.InputStream->Gio.FilterInputStream Gio.PollableInputStream->Soup.MultipartInputStream

Subclasses:

None

Methods

Inherited:

Gio.FilterInputStream (3), Gio.InputStream (19), GObject.Object (37), Gio.PollableInputStream (4)

Structs:

GObject.ObjectClass (5)

class

new (msg, base_stream)

get_headers ()

next_part (cancellable)

next_part_async (io_priority, cancellable, callback, *data)

next_part_finish (result)

Virtual Methods

Inherited:

Gio.InputStream (9), GObject.Object (7), Gio.PollableInputStream (4)

Properties

Inherited:

Gio.FilterInputStream (2)

Name

Type

Flags

Short Description

message

Soup.Message

r/w/co

The Soup.Message

Signals

Inherited:

GObject.Object (1)

Fields

Inherited:

GObject.Object (1)

Name

Type

Access

Description

parent_instance

Gio.FilterInputStream

r

Class Details

class Soup.MultipartInputStream(**kwargs)
Bases:

Gio.FilterInputStream, Gio.PollableInputStream

Abstract:

No

Structure:

Soup.MultipartInputStreamClass

classmethod new(msg, base_stream)
Parameters:
Returns:

a new Soup.MultipartInputStream

Return type:

Soup.MultipartInputStream

Creates a new Soup.MultipartInputStream that wraps the Gio.InputStream obtained by sending the Soup.Request. Reads should not be done directly through this object, use the input streams returned by Soup.MultipartInputStream.next_part() or its async counterpart instead.

New in version 2.40.

get_headers()
Returns:

a Soup.MessageHeaders containing the headers for the part currently being processed or None if the headers failed to parse.

Return type:

Soup.MessageHeaders or None

Obtains the headers for the part currently being processed. Note that the Soup.MessageHeaders that are returned are owned by the Soup.MultipartInputStream and will be replaced when a call is made to Soup.MultipartInputStream.next_part() or its async counterpart, so if keeping the headers is required, a copy must be made.

Note that if a part had no headers at all an empty Soup.MessageHeaders will be returned.

New in version 2.40.

next_part(cancellable)
Parameters:

cancellable (Gio.Cancellable or None) – a Gio.Cancellable

Raises:

GLib.Error

Returns:

a new Gio.InputStream, or None if there are no more parts

Return type:

Gio.InputStream or None

Obtains an input stream for the next part. When dealing with a multipart response the input stream needs to be wrapped in a Soup.MultipartInputStream and this function or its async counterpart need to be called to obtain the first part for reading.

After calling this function, Soup.MultipartInputStream.get_headers() can be used to obtain the headers for the first part. A read of 0 bytes indicates the end of the part; a new call to this function should be done at that point, to obtain the next part.

New in version 2.40.

next_part_async(io_priority, cancellable, callback, *data)
Parameters:

Obtains a Gio.InputStream for the next request. See Soup.MultipartInputStream.next_part() for details on the workflow.

New in version 2.40.

next_part_finish(result)
Parameters:

result (Gio.AsyncResult) – a Gio.AsyncResult.

Raises:

GLib.Error

Returns:

a newly created Gio.InputStream for reading the next part or None if there are no more parts.

Return type:

Gio.InputStream or None

Finishes an asynchronous request for the next part.

New in version 2.40.

Property Details

Soup.MultipartInputStream.props.message
Name:

message

Type:

Soup.Message

Default Value:

None

Flags:

READABLE, WRITABLE, CONSTRUCT_ONLY

The Soup.Message