| Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
|---|---|
| License | LGPL-2.1 |
| Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
| Safe Haskell | None |
| Language | Haskell2010 |
GI.Soup.Objects.MultipartInputStream
Description
- newtype MultipartInputStream = MultipartInputStream (ManagedPtr MultipartInputStream)
- class GObject o => IsMultipartInputStream o
- toMultipartInputStream :: IsMultipartInputStream o => o -> IO MultipartInputStream
- noMultipartInputStream :: Maybe MultipartInputStream
- data MultipartInputStreamGetHeadersMethodInfo
- multipartInputStreamGetHeaders :: (HasCallStack, MonadIO m, IsMultipartInputStream a) => a -> m (Maybe MessageHeaders)
- multipartInputStreamNew :: (HasCallStack, MonadIO m, IsMessage a, IsInputStream b) => a -> b -> m MultipartInputStream
- data MultipartInputStreamNextPartMethodInfo
- multipartInputStreamNextPart :: (HasCallStack, MonadIO m, IsMultipartInputStream a, IsCancellable b) => a -> Maybe b -> m (Maybe InputStream)
- data MultipartInputStreamNextPartAsyncMethodInfo
- multipartInputStreamNextPartAsync :: (HasCallStack, MonadIO m, IsMultipartInputStream a, IsCancellable b) => a -> Int32 -> Maybe b -> Maybe AsyncReadyCallback -> m ()
- data MultipartInputStreamNextPartFinishMethodInfo
- multipartInputStreamNextPartFinish :: (HasCallStack, MonadIO m, IsMultipartInputStream a, IsAsyncResult b) => a -> b -> m (Maybe InputStream)
- data MultipartInputStreamMessagePropertyInfo
- constructMultipartInputStreamMessage :: (IsMultipartInputStream o, IsMessage a) => a -> IO (GValueConstruct o)
- getMultipartInputStreamMessage :: (MonadIO m, IsMultipartInputStream o) => o -> m (Maybe Message)
- multipartInputStreamMessage :: AttrLabelProxy "message"
Exported types
newtype MultipartInputStream Source #
Constructors
| MultipartInputStream (ManagedPtr MultipartInputStream) |
Instances
| GObject MultipartInputStream Source # | |
| IsPollableInputStream MultipartInputStream Source # | |
| IsFilterInputStream MultipartInputStream Source # | |
| IsInputStream MultipartInputStream Source # | |
| IsObject MultipartInputStream Source # | |
| IsMultipartInputStream MultipartInputStream Source # | |
| ((~) * info (ResolveMultipartInputStreamMethod t MultipartInputStream), MethodInfo * info MultipartInputStream p) => IsLabel t (MultipartInputStream -> p) Source # | |
| ((~) * info (ResolveMultipartInputStreamMethod t MultipartInputStream), MethodInfo * info MultipartInputStream p) => IsLabelProxy t (MultipartInputStream -> p) Source # | |
| HasAttributeList * MultipartInputStream Source # | |
| type AttributeList MultipartInputStream Source # | |
| type SignalList MultipartInputStream Source # | |
class GObject o => IsMultipartInputStream o Source #
Methods
getHeaders
data MultipartInputStreamGetHeadersMethodInfo Source #
Instances
| ((~) * signature (m (Maybe MessageHeaders)), MonadIO m, IsMultipartInputStream a) => MethodInfo * MultipartInputStreamGetHeadersMethodInfo a signature Source # | |
multipartInputStreamGetHeaders Source #
Arguments
| :: (HasCallStack, MonadIO m, IsMultipartInputStream a) | |
| => a |
|
| -> m (Maybe MessageHeaders) | Returns: a |
Obtains the headers for the part currently being processed. Note
that the MessageHeaders that are returned are owned by the
MultipartInputStream and will be replaced when a call is made
to multipartInputStreamNextPart 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 MessageHeaders
will be returned.
Since: 2.40
new
multipartInputStreamNew Source #
Arguments
| :: (HasCallStack, MonadIO m, IsMessage a, IsInputStream b) | |
| => a |
|
| -> b |
|
| -> m MultipartInputStream | Returns: a new |
Creates a new MultipartInputStream that wraps the
InputStream obtained by sending the Request. Reads should
not be done directly through this object, use the input streams
returned by multipartInputStreamNextPart or its async
counterpart instead.
Since: 2.40
nextPart
data MultipartInputStreamNextPartMethodInfo Source #
Instances
| ((~) * signature (Maybe b -> m (Maybe InputStream)), MonadIO m, IsMultipartInputStream a, IsCancellable b) => MethodInfo * MultipartInputStreamNextPartMethodInfo a signature Source # | |
multipartInputStreamNextPart Source #
Arguments
| :: (HasCallStack, MonadIO m, IsMultipartInputStream a, IsCancellable b) | |
| => a |
|
| -> Maybe b |
|
| -> m (Maybe InputStream) | Returns: a new |
Obtains an input stream for the next part. When dealing with a
multipart response the input stream needs to be wrapped in a
MultipartInputStream and this function or its async
counterpart need to be called to obtain the first part for
reading.
After calling this function,
multipartInputStreamGetHeaders 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.
Since: 2.40
nextPartAsync
data MultipartInputStreamNextPartAsyncMethodInfo Source #
Instances
| ((~) * signature (Int32 -> Maybe b -> Maybe AsyncReadyCallback -> m ()), MonadIO m, IsMultipartInputStream a, IsCancellable b) => MethodInfo * MultipartInputStreamNextPartAsyncMethodInfo a signature Source # | |
multipartInputStreamNextPartAsync Source #
Arguments
| :: (HasCallStack, MonadIO m, IsMultipartInputStream a, IsCancellable b) | |
| => a |
|
| -> Int32 |
|
| -> Maybe b |
|
| -> Maybe AsyncReadyCallback |
|
| -> m () |
Obtains a InputStream for the next request. See
multipartInputStreamNextPart for details on the
workflow.
Since: 2.40
nextPartFinish
data MultipartInputStreamNextPartFinishMethodInfo Source #
Instances
| ((~) * signature (b -> m (Maybe InputStream)), MonadIO m, IsMultipartInputStream a, IsAsyncResult b) => MethodInfo * MultipartInputStreamNextPartFinishMethodInfo a signature Source # | |
multipartInputStreamNextPartFinish Source #
Arguments
| :: (HasCallStack, MonadIO m, IsMultipartInputStream a, IsAsyncResult b) | |
| => a |
|
| -> b |
|
| -> m (Maybe InputStream) | Returns: a newly created
|
Finishes an asynchronous request for the next part.
Since: 2.40
Properties
message
data MultipartInputStreamMessagePropertyInfo Source #
Instances
constructMultipartInputStreamMessage :: (IsMultipartInputStream o, IsMessage a) => a -> IO (GValueConstruct o) Source #
getMultipartInputStreamMessage :: (MonadIO m, IsMultipartInputStream o) => o -> m (Maybe Message) Source #
multipartInputStreamMessage :: AttrLabelProxy "message" Source #