Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
H2.Server_connection
Sourcecreate ?config ?error_handler ~request_handler
creates a connection handler that will service individual requests with request_handler
.
next_read_operation t
returns a value describing the next operation that the caller should conduct on behalf of the connection.
read t bigstring ~off ~len
reads bytes of input from the provided range of bigstring
and returns the number of bytes consumed by the connection. read
should be called after next_read_operation
returns a `Read
value and additional input is available for the connection to consume.
read t bigstring ~off ~len
reads bytes of input from the provided range of bigstring
and returns the number of bytes consumed by the connection. read
should be called after next_read_operation
returns a `Read
and an EOF has been received from the communication channel. The connection will attempt to consume any buffered input and then shutdown the HTTP parser for the connection.
val next_write_operation :
t ->
[ `Write of Bigstringaf.t IOVec.t list | `Yield | `Close of int ]
next_write_operation t
returns a value describing the next operation that the caller should conduct on behalf of the connection.
report_write_result t result
reports the result of the latest write attempt to the connection. report_write_result
should be called after a call to next_write_operation
that returns a `Write buffer
value.
`Ok n
indicates that the caller successfully wrote n
bytes of output from the buffer that the caller was provided by next_write_operation
.`Closed
indicates that the output destination will no longer accept bytes from the write processor.yield_writer t continue
registers with the connection to call continue
when writing should resume. yield_writer
should be called after next_write_operation
returns a `Yield
value.
report_exn t exn
reports that an error exn
has been caught and that it has been attributed to t
. Calling this function will switch t
into an error state. Depending on the state t
is transitioning from, it may call its error handler before terminating the connection.
is_closed t
is true
if both the read and write processors have been shutdown. When this is the case next_read_operation
will return `Close _
and next_write_operation
will do the same will return a `Write _
until all buffered output has been flushed, at which point it will return `Close
.
error_code t
returns the error_code
that caused the connection to close, if one exists.