ProtocolJob
Response to custom protocol requests.
Header | #include "nativeui/protocol_job.h" |
Namespace | namespace nu |
Type | class (RefCounted) |
This class can not be used to create instances, you must use its sub-classes instead.
Note that the interface of this class will be modified in future for extensions.
Properties
std::function<void(int)>
notify_content_length
Called by sub-classes when it is ready to read data.
Methods
bool Start()
Called when the loading of request should start.
Returning false
would cancel the request.
This method is asynchronous, when the request is ready to be read, the
notify_content_length
function property of this class should be called
with notify_content_length(size)
. The size
is the expected length
of the data to be read, pass -1
if uncertain.
Return
bool
void Kill()
Called when the loading should be stopped.
bool GetMimeType(std::string* mimetype)
Called when browser wants to get mime type of the request.
Returning false
would leave the browser to guess the mime type.
Depending on the platform, this method may be called before and after the request is started, and it may be called in a different thread from the one it was created.
Parameters
std::string*
mimetype
Return
bool
size_t Read(void* buffer, size_t bytes)
Called when browser wants to read data.
The data should be written to the buffer
, which has the size of bytes
.
It should return size of data written, returning 0
means there is no
more data.
Parameters
void*
buffersize_t
bytes
Return
size_t