Skip to content

EntropyEngine::Networking::HTTP::StreamState

EntropyEngine::Networking::HTTP::StreamState

Section titled “EntropyEngine::Networking::HTTP::StreamState”

Streaming response state for incremental reads. More…

#include <HttpClient.h>

Name
size_ttotalReceived
Total bytes received.
size_ttail
Write index.
intstatusCode
HTTP status code.
size_tsize
Bytes currently stored.
boolresumeRequested
consumer requested resume (handled on worker thread)
boolpaused
true if write callback paused due to backpressure
std::mutexmutex
Protects ring buffer state.
size_tmaxBodyBytes
Hard safety cap.
boolheadersReady
true when HTTP headers parsed
HttpHeaderValuesMapheadersMulti
All values per header key.
HttpHeadersheaders
Response headers (lowercase, last-seen).
size_thead
Read index.
std::stringfailureReason
Error description.
boolfailed
true on error
CURL *easy
cURL easy handle for this stream (set by worker thread)
booldone
true when response complete
std::condition_variablecv
Signals data available/consumed.
size_tcapacity
Total capacity.
boolcancelRequested
Cancellation requested by consumer.
std::vector< uint8_t >buffer
Ring buffer storage.
struct EntropyEngine::Networking::HTTP::StreamState;

Streaming response state for incremental reads.

Ring buffer with producer/consumer pattern. HTTP parser writes to tail, StreamHandle reads from head. Backpressure via CURL_WRITEFUNC_PAUSE.

size_t totalReceived = 0;

Total bytes received.

size_t tail = 0;

Write index.

int statusCode = 0;

HTTP status code.

size_t size = 0;

Bytes currently stored.

bool resumeRequested = false;

consumer requested resume (handled on worker thread)

bool paused = false;

true if write callback paused due to backpressure

std::mutex mutex;

Protects ring buffer state.

size_t maxBodyBytes = 0;

Hard safety cap.

bool headersReady = false;

true when HTTP headers parsed

HttpHeaderValuesMap headersMulti;

All values per header key.

HttpHeaders headers;

Response headers (lowercase, last-seen).

size_t head = 0;

Read index.

std::string failureReason;

Error description.

bool failed = false;

true on error

CURL * easy = nullptr;

cURL easy handle for this stream (set by worker thread)

bool done = false;

true when response complete

std::condition_variable cv;

Signals data available/consumed.

size_t capacity = 0;

Total capacity.

bool cancelRequested = false;

Cancellation requested by consumer.

std::vector< uint8_t > buffer;

Ring buffer storage.


Updated on 2026-01-26 at 17:14:35 -0500