std.net.curl.HTTP.onSend
- multiple declarations
Function HTTP.onSend
The event handler that gets called when data is needed for sending. The
length of the void[]
specifies the maximum number of bytes that can
be sent.
void onSend
(
ulong delegate(void[]) callback
) @property;
Returns
The callback returns the number of elements in the buffer that have been
filled and are ready to send.
The special value
can be returned in order to abort the
current request.
The special value
can be returned in order to pause the
current request.
Example
import std .net .curl;
string msg = "Hello world";
auto client = HTTP("dlang.org");
client .onSend = delegate size_t(void[] data)
{
auto m = cast(void[]) msg;
size_t length = m .length > data .length ? data .length : m .length;
if (length == 0) return 0;
data[0 .. length] = m[0 .. length];
msg = msg[length..$];
return length;
};
client .perform();
Function HTTP.onSend
The event handler that gets called when data is needed for sending. The
length of the void[]
specifies the maximum number of bytes that can
be sent.
void onSend
(
ulong delegate(void[]) callback
) @property;
Returns
The callback returns the number of elements in the buffer that have been
filled and are ready to send.
The special value
can be returned in order to abort the
current request.
The special value
can be returned in order to pause the
current request.
Example
import std .net .curl;
string msg = "Hello world";
auto client = HTTP("dlang.org");
client .onSend = delegate size_t(void[] data)
{
auto m = cast(void[]) msg;
size_t length = m .length > data .length ? data .length : m .length;
if (length == 0) return 0;
data[0 .. length] = m[0 .. length];
msg = msg[length..$];
return length;
};
client .perform();
Authors
Jonas Drewsen. Some of the SMTP code contributed by Jimmy Cao.