Sese Framework  2.3.0
A cross-platform framework
Loading...
Searching...
No Matches
sese::internal::service::http::HttpStream Struct Reference

#include <HttpConnectionEx.h>

Inheritance diagram for sese::internal::service::http::HttpStream:
sese::internal::service::http::Handleable

Public Types

using Ptr = std::shared_ptr<HttpStream>
 
- Public Types inherited from sese::internal::service::http::Handleable
using Ptr = std::shared_ptr<Handleable>
 

Public Member Functions

 HttpStream (uint32_t id, uint32_t write_window_size, const sese::net::IPAddress::Ptr &addr) noexcept
 
void prepareRange ()
 Initialize the current file compartment and iterate over the iterator.
 

Public Attributes

uint32_t id
 
uint32_t endpoint_window_size
 Write to the peer window size.
 
uint32_t window_size = 0
 Local read window.
 
uint16_t continue_type = 0
 
bool end_headers = false
 
bool end_stream = false
 
bool do_response = false
 
size_t expect_length
 
size_t real_length
 
sese::io::ByteBuilder temp_buffer
 
sese::net::http::Http2FrameInfo frame {}
 
- Public Attributes inherited from sese::internal::service::http::Handleable
ConnType conn_type = ConnType::NONE
 
sese::net::http::Request request
 
sese::net::http::Response response
 
std::string content_type = "application/x-"
 
io::File::Ptr file
 
size_t filesize = 0
 
std::vector< sese::net::http::Rangeranges
 
std::vector< sese::net::http::Range >::iterator range_iterator = ranges.begin()
 
sese::net::IPAddress::Ptr remote_address {}
 
bool keepalive = false
 
sese::StopWatch stopwatch
 

Member Typedef Documentation

◆ Ptr

Constructor & Destructor Documentation

◆ HttpStream()

sese::internal::service::http::HttpStream::HttpStream ( uint32_t id,
uint32_t write_window_size,
const sese::net::IPAddress::Ptr & addr )
explicitnoexcept

Member Function Documentation

◆ prepareRange()

void sese::internal::service::http::HttpStream::prepareRange ( )

Initialize the current file compartment and iterate over the iterator.

References sese::io::BEGIN, expect_length, sese::internal::service::http::Handleable::file, sese::internal::service::http::Handleable::range_iterator, and real_length.

Member Data Documentation

◆ continue_type

uint16_t sese::internal::service::http::HttpStream::continue_type = 0

◆ do_response

bool sese::internal::service::http::HttpStream::do_response = false

◆ end_headers

bool sese::internal::service::http::HttpStream::end_headers = false

◆ end_stream

bool sese::internal::service::http::HttpStream::end_stream = false

◆ endpoint_window_size

uint32_t sese::internal::service::http::HttpStream::endpoint_window_size

Write to the peer window size.

◆ expect_length

size_t sese::internal::service::http::HttpStream::expect_length

Referenced by prepareRange().

◆ frame

sese::net::http::Http2FrameInfo sese::internal::service::http::HttpStream::frame {}

◆ id

uint32_t sese::internal::service::http::HttpStream::id

◆ real_length

size_t sese::internal::service::http::HttpStream::real_length

Referenced by prepareRange().

◆ temp_buffer

sese::io::ByteBuilder sese::internal::service::http::HttpStream::temp_buffer

◆ window_size

uint32_t sese::internal::service::http::HttpStream::window_size = 0

Local read window.


The documentation for this struct was generated from the following files: