HttpClientEngineBase
abstract class HttpClientEngineBase : HttpClientEngine
Abstract implementation of HttpClientEngine responsible for lifecycle control of dispatcher and coroutineContext as well as proper call context management. Should be considered as the best parent class for custom HttpClientEngine implementations.
Constructors
HttpClientEngineBase(engineName: String) Abstract implementation of HttpClientEngine responsible for lifecycle control of dispatcher and coroutineContext as well as proper call context management. Should be considered as the best parent class for custom HttpClientEngine implementations. |
Properties
open val coroutineContext: <ERROR CLASS> |
Inherited Properties
abstract val config: HttpClientEngineConfig Engine configuration |
|
abstract val dispatcher: CoroutineDispatcher CoroutineDispatcher specified for io operations. |
|
open val supportedCapabilities: Set<HttpClientEngineCapability<*>> Set of supported engine extensions. |
Functions
open fun close(): Unit |
Inherited Functions
abstract suspend fun execute( Creates a new HttpClientCall specific for this engine, using a request data. |
|
open fun install(client: HttpClient): Unit Install engine into HttpClient. |
Extension Functions
fun CoroutineScope. fun CoroutineScope.decodeChunked( Start a chunked stream decoder coroutine |
|
fun <TEngine : ApplicationEngine, TConfiguration : Configuration> CoroutineScope.embeddedServer( Creates an embedded server with the given factory, listening on host:port |
|
fun CoroutineScope.httpServer( Start an http server with settings invoking handler for every request |
|
fun CoroutineScope. Start an http server with settings invoking handler for every request |
|
fun CoroutineScope.mapEngineExceptions( Returns ByteReadChannel with ByteChannel.close handler that returns SocketTimeoutException instead of SocketTimeoutException. fun CoroutineScope.mapEngineExceptions( Returns ByteWriteChannel with ByteChannel.close handler that returns SocketTimeoutException instead of SocketTimeoutException. |
|
fun CoroutineScope.parseMultipart( fun CoroutineScope.parseMultipart( fun CoroutineScope. Starts a multipart parser coroutine producing multipart events |
|
fun CoroutineScope.pinger( Launch pinger coroutine on CoroutineScope that is sending ping every specified period to outgoing channel, waiting for and verifying client’s pong frames. It is also handling timeout and sending timeout close frame fun CoroutineScope.pinger( Launch pinger coroutine on CoroutineScope that is sending ping every specified periodMillis to outgoing channel, waiting for and verifying client’s pong frames. It is also handling timeoutMillis and sending timeout close frame |
|
fun CoroutineScope.pinger( Launch pinger coroutine on CoroutineScope that is sending ping every specified period to outgoing channel, waiting for and verifying client’s pong frames. It is also handling timeout and sending timeout close frame |
|
fun CoroutineScope.ponger( Launch a ponger actor job on the CoroutineScope sending pongs to outgoing channel. It is acting for every client’s ping frame and replying with corresponding pong |
|
fun CoroutineScope.reader( fun CoroutineScope.reader( |
|
fun CoroutineScope. Start connection HTTP pipeline invoking handler for every request. Note that handler could be invoked multiple times concurrently due to HTTP pipeline nature |
|
fun CoroutineScope.startServerConnectionPipeline( Start connection HTTP pipeline invoking handler for every request. Note that handler could be invoked multiple times concurrently due to HTTP pipeline nature |
|
fun CoroutineScope. Start multirange response writer coroutine |
|
fun CoroutineScope.writer( fun CoroutineScope.writer( |
Inheritors
class AndroidClientEngine : HttpClientEngineBase Android client engine |
|
class MockEngine : HttpClientEngineBase HttpClientEngine for writing tests without network. |
|
class OkHttpEngine : HttpClientEngineBase |
|
class TestHttpClientEngine : HttpClientEngineBase |