20#include "AUI/Common/AByteBufferView.h"
21#include "AUI/Common/AOptional.h"
22#include "AUI/Common/AString.h"
23#include "AUI/IO/ADynamicPipe.h"
30 friend class WebsocketTest_Receive1_Test;
31 friend class WebsocketTest_Receive2_Test;
34 void write(
const char* src,
size_t size)
override;
36 void close()
override;
50 bool mAccepted =
false;
86 uint8_t payload_len: 7;
93 static AString generateKeyString();
95 void writeRaw(
const char* src,
size_t size);
96 void writeRawMasked(
const std::uint8_t mask[4],
AByteBufferView message);
101 std::size_t onDataSend(
char* dst, std::size_t maxLen);
114 AWebsocket::Opcode::CONTINUATION,
115 AWebsocket::Opcode::TEXT,
116 AWebsocket::Opcode::BINARY,
117 AWebsocket::Opcode::CLOSE,
118 AWebsocket::Opcode::PING,
119 AWebsocket::Opcode::PONG
Acts like std::string_view but for AByteBuffer.
Definition AByteBufferView.h:24
virtual void close()
Breaks curl loop in the run() method, closing underlying curl connection.
Definition ACurl.cpp:354
An asynchronous buffer that converts an IInputStream to IOutputStream (and otherwise).
Definition ADynamicPipe.h:29
Utility wrapper implementing the stack-allocated (fast) optional idiom.
Definition AOptional.h:32
Represents a Unicode character string.
Definition AString.h:37
Definition IOutputStream.h:18
virtual void write(const char *src, size_t size)=0
Writes exact size bytes to stream. Blocking (waiting for write all data) is allowed.
ASignal< Args... > emits
A signal declaration.
Definition ASignal.h:348
#define AUI_ENUM_VALUES(enum_t,...)
Defines all enum values for AEnumerate.
Definition AEnumerate.h:208