|
A11 (C++ runtime)
Native C++ implementation of the A11 action and streaming runtime
|
The server-side HTTP SSE wire stream, accepted from a client. More...
#include <cpp/a11/net/http_sse_wire_stream.h>
Classes | |
| struct | ServerStreamState |
Public Member Functions | |
| a11::Task | Accepted () const |
| HttpSseServerWireStream (ConstructorToken, std::string id, HttpSseOptions options, InProcessWireStream::Pair pair, std::shared_ptr< State > state, std::shared_ptr< ServerStreamState > server_state) | |
Public Member Functions inherited from a11::net::HttpSseWireStream | |
| ~HttpSseWireStream () override=default | |
| absl::Status | Send (data::WireMessage message) override |
| Enqueue a message for delivery to the peer. | |
| a11::Task | Start (OnMessage on_message, OnDone on_done) override |
| Begin the stream as the initiating ("start") side. | |
| a11::Task | Accept (OnMessage on_message, OnDone on_done) override |
| Begin the stream as the accepting ("accept") side. | |
| absl::Status | HalfClose (data::ByteMap trailers) override |
| Signal that this side will send no more messages. | |
| a11::Task | DrainOutgoingMessages () override |
| Await delivery of all buffered outbound messages. | |
| absl::Status | Abort (absl::Status status) override |
| Abort the stream, discarding buffered work. | |
| absl::Status | SetDeadline (absl::Time deadline) override |
| Set the absolute deadline after which the stream is aborted. | |
| absl::Time | deadline () const override |
| absl::Status | GetStatus () const override |
| std::optional< data::ByteMap > | GetTrailers () const override |
| std::string | GetId () const override |
| void *absl_nullable | GetImpl () const override |
| HttpHeaders | GetHttpRequestHeaders () const |
| std::optional< HttpHeaders > | GetHttpResponseHeaders () const |
| absl::Status | SetHttpRequestHeaders (HttpHeaders headers) |
| Sets HTTP headers to send on the SSE request; call before connecting. | |
| absl::Status | SetHttpResponseHeaders (HttpHeaders headers) |
| Sets HTTP headers to send on the SSE response (server side). | |
| a11::Task | WaitForHttpHeaders () const |
| absl::Status | HalfClose () |
| Half-close with no trailers. | |
| virtual absl::Status | HalfClose (data::ByteMap trailers)=0 |
| Signal that this side will send no more messages. | |
| absl::Status | SetDeadline () |
| Clear any deadline (equivalent to an infinite deadline). | |
| virtual absl::Status | SetDeadline (absl::Time deadline)=0 |
| Set the absolute deadline after which the stream is aborted. | |
Public Member Functions inherited from a11::net::WireStream | |
| virtual | ~WireStream ()=default |
| absl::Status | HalfClose () |
| Half-close with no trailers. | |
| absl::Status | SetDeadline () |
| Clear any deadline (equivalent to an infinite deadline). | |
Protected Member Functions | |
| a11::Task | OpenTransport () override |
| absl::Status | Transmit (data::WireMessage message) override |
| void *absl_nullable | TransportImpl () const override |
| void | TransportDone () override |
Protected Member Functions inherited from a11::net::HttpSseWireStream | |
| HttpSseWireStream (Role role, std::string id, HttpSseOptions options, InProcessWireStream::Pair pair, std::shared_ptr< State > state) | |
| a11::Task | StartEndpoint (bool accept, OnMessage on_message, OnDone on_done) |
| a11::Task | StartInternalBridge () |
| a11::Task | HandleBridgeMessage (std::optional< data::WireMessage > message) |
| a11::Task | HandleBridgeDone () |
| a11::Task | ReceiveTransportMessage (data::WireMessage message) |
| void | FailTransport (absl::Status status) |
| void | MarkHttpHeadersReady (HttpHeaders headers) |
| void | SetId (std::string id) |
| HttpSseOptions | options () const |
| std::shared_ptr< InProcessWireStream > | bridge () const |
Friends | |
| class | HttpSseServer |
Additional Inherited Members | |
Protected Types inherited from a11::net::HttpSseWireStream | |
| enum class | Role { kClient , kServer } |
The server-side HTTP SSE wire stream, accepted from a client.
Delivered to an HttpSseServer's OnHttpSseConnect handler (or via WaitForStream) when a client opens an SSE connection.
| a11::net::HttpSseServerWireStream::HttpSseServerWireStream | ( | ConstructorToken | , |
| std::string | id, | ||
| HttpSseOptions | options, | ||
| InProcessWireStream::Pair | pair, | ||
| std::shared_ptr< State > | state, | ||
| std::shared_ptr< ServerStreamState > | server_state | ||
| ) |
| a11::Task a11::net::HttpSseServerWireStream::Accepted | ( | ) | const |
|
overrideprotectedvirtual |
Implements a11::net::HttpSseWireStream.
|
overrideprotectedvirtual |
Implements a11::net::HttpSseWireStream.
|
overrideprotectedvirtual |
Reimplemented from a11::net::HttpSseWireStream.
|
overrideprotectedvirtual |
Implements a11::net::HttpSseWireStream.
|
friend |