Symbian platform (C++)
SDK native APIs, runtime and tooling
Loading...
Searching...
No Matches
symbian::api::connectivity::WebSocketStream Class Reference

Synchronous worker-owned WebSocket using the SDK TCP runtime. More...

#include <cpp/symbian/api/include/symbian/api/connectivity/websocket.h>

Public Member Functions

 WebSocketStream (WebSocketStream &&) noexcept=default
 
WebSocketStream & operator= (WebSocketStream &&) noexcept=default
 
absl::Status Send (std::span< const std::uint8_t > bytes, absl::Time deadline=absl::InfiniteFuture())
 
absl::StatusOr< std::size_t > Receive (std::span< std::uint8_t > bytes, absl::Time deadline=absl::InfiniteFuture())
 
absl::Status Close (absl::Time deadline)
 
void Abort ()
 

Static Public Member Functions

static absl::StatusOr< WebSocketStream > Connect (TcpClient client, websocket::Options options, absl::Time deadline=absl::InfiniteFuture())
 
static absl::StatusOr< WebSocketStream > Accept (TcpClient client, websocket::Options options={}, absl::Time deadline=absl::InfiniteFuture())
 
static absl::StatusOr< WebSocketStream > Connect (std::unique_ptr< net::ByteStream > transport, websocket::Options options, absl::Time deadline=absl::InfiniteFuture())
 
static absl::StatusOr< WebSocketStream > Accept (std::unique_ptr< net::ByteStream > transport, websocket::Options options={}, absl::Time deadline=absl::InfiniteFuture())
 

Detailed Description

Synchronous worker-owned WebSocket using the SDK TCP runtime.

Accept and Connect handshake an already connected socket; absolute deadlines bound each operation. All calls and destruction stay on its owner thread. Receive exposes a byte stream across binary messages for WireStream framing. Close sends the RFC 6455 close and drains the peer reply by its deadline. No scheduler is created: use the SDK WorkerExecutor for background work.

Constructor & Destructor Documentation

◆ WebSocketStream()

symbian::api::connectivity::WebSocketStream::WebSocketStream ( WebSocketStream &&  )
defaultnoexcept

Member Function Documentation

◆ Abort()

void symbian::api::connectivity::WebSocketStream::Abort ( )

◆ Accept() [1/2]

absl::StatusOr< WebSocketStream > symbian::api::connectivity::WebSocketStream::Accept ( std::unique_ptr< net::ByteStream >  transport,
websocket::Options  options = {},
absl::Time  deadline = absl::InfiniteFuture() 
)
static

◆ Accept() [2/2]

absl::StatusOr< WebSocketStream > symbian::api::connectivity::WebSocketStream::Accept ( TcpClient  client,
websocket::Options  options = {},
absl::Time  deadline = absl::InfiniteFuture() 
)
static

◆ Close()

absl::Status symbian::api::connectivity::WebSocketStream::Close ( absl::Time  deadline)

◆ Connect() [1/2]

absl::StatusOr< WebSocketStream > symbian::api::connectivity::WebSocketStream::Connect ( std::unique_ptr< net::ByteStream >  transport,
websocket::Options  options,
absl::Time  deadline = absl::InfiniteFuture() 
)
static

◆ Connect() [2/2]

absl::StatusOr< WebSocketStream > symbian::api::connectivity::WebSocketStream::Connect ( TcpClient  client,
websocket::Options  options,
absl::Time  deadline = absl::InfiniteFuture() 
)
static

◆ operator=()

WebSocketStream & symbian::api::connectivity::WebSocketStream::operator= ( WebSocketStream &&  )
defaultnoexcept

◆ Receive()

absl::StatusOr< std::size_t > symbian::api::connectivity::WebSocketStream::Receive ( std::span< std::uint8_t >  bytes,
absl::Time  deadline = absl::InfiniteFuture() 
)

◆ Send()

absl::Status symbian::api::connectivity::WebSocketStream::Send ( std::span< const std::uint8_t >  bytes,
absl::Time  deadline = absl::InfiniteFuture() 
)

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