Skip to content
This repository has been archived by the owner on Sep 3, 2024. It is now read-only.

Rename #169

Merged
merged 2 commits into from
Aug 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 24 additions & 2 deletions .clang-tidy
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,29 @@ Checks: '
readability-non-const-parameter,
'
CheckOptions:
- { key: readability-identifier-naming.PrivateMemberPrefix, value: _ }
- { key: readability-identifier-naming.ClassCase, value: CamelCase }
- { key: readability-identifier-naming.ClassCase, value: CamelCase }
- { key: readability-identifier-naming.ClassMemberCase, value: lower_case }
- { key: readability-identifier-naming.ConstexprVariableCase, value: CamelCase }
- { key: readability-identifier-naming.ConstexprVariablePrefix, value: k }
- { key: readability-identifier-naming.EnumCase, value: CamelCase }
- { key: readability-identifier-naming.EnumConstantCase, value: CamelCase }
- { key: readability-identifier-naming.EnumConstantPrefix, value: k }
- { key: readability-identifier-naming.FunctionCase, value: CamelCase }
- { key: readability-identifier-naming.GlobalConstantCase, value: CamelCase }
- { key: readability-identifier-naming.GlobalConstantPrefix, value: k }
- { key: readability-identifier-naming.StaticConstantCase, value: CamelCase }
- { key: readability-identifier-naming.StaticConstantPrefix, value: k }
- { key: readability-identifier-naming.StaticVariableCase, value: lower_case }
- { key: readability-identifier-naming.MacroDefinitionCase, value: UPPER_CASE }
- { key: readability-identifier-naming.MacroDefinitionIgnoredRegexp, value: '^[A-Z]+(_[A-Z]+)*_$' }
- { key: readability-identifier-naming.MemberCase, value: lower_case }
- { key: readability-identifier-naming.PrivateMemberSuffix, value: _ }
- { key: readability-identifier-naming.PublicMemberSuffix, value: '' }
- { key: readability-identifier-naming.NamespaceCase, value: lower_case }
- { key: readability-identifier-naming.ParameterCase, value: lower_case }
- { key: readability-identifier-naming.TypeAliasCase, value: CamelCase }
- { key: readability-identifier-naming.TypedefCase, value: CamelCase }
- { key: readability-identifier-naming.VariableCase, value: lower_case }
- { key: readability-identifier-naming.IgnoreMainLikeFunctions, value: 1 }
WarningsAsErrors: "*"
HeaderFilterRegex: "(/include/transport|/src)/.*"
2 changes: 2 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Rename
b42d453d603e54e395efe9b537f9687cc33b4315
42 changes: 21 additions & 21 deletions cmd/client.cc
Original file line number Diff line number Diff line change
Expand Up @@ -37,28 +37,28 @@ struct Delegate : public ITransport::TransportDelegate

TransportConnId getContextId() const { return conn_id; }

void on_connection_status(const TransportConnId& conn_id, const TransportStatus status)
void OnConnectionStatus(const TransportConnId& conn_id, const TransportStatus status)
{
SPDLOG_LOGGER_INFO(logger, "Connection state change conn_id: {0}, {1}", conn_id, int(status));
}

void on_new_connection(const TransportConnId& , const TransportRemote&) {}
void OnNewConnection(const TransportConnId& , const TransportRemote&) {}

void on_recv_stream(const TransportConnId& conn_id,
void OnRecvStream(const TransportConnId& conn_id,
uint64_t stream_id,
std::optional<DataContextId> data_ctx_id,
[[maybe_unused]] const bool is_bidir)
{
auto stream_buf = client->getStreamBuffer(conn_id, stream_id);
auto stream_buf = client->GetStreamBuffer(conn_id, stream_id);

while (true) {
if (stream_buf->available(4)) {
auto msg_len_b = stream_buf->front(4);
if (stream_buf->Available(4)) {
auto msg_len_b = stream_buf->Front(4);
auto* msg_len = reinterpret_cast<uint32_t*>(msg_len_b.data());

if (stream_buf->available(*msg_len)) {
auto obj = stream_buf->front(*msg_len);
stream_buf->pop(*msg_len);
if (stream_buf->Available(*msg_len)) {
auto obj = stream_buf->Front(*msg_len);
stream_buf->Pop(*msg_len);

_rx_object.process(conn_id, data_ctx_id, obj);
} else {
Expand All @@ -70,19 +70,19 @@ struct Delegate : public ITransport::TransportDelegate
}
}

void on_recv_dgram(const TransportConnId& conn_id,
void OnRecvDgram(const TransportConnId& conn_id,
std::optional<DataContextId> data_ctx_id)
{
for (int i=0; i < 50; i++) {
auto data = client->dequeue(conn_id, data_ctx_id);
auto data = client->Dequeue(conn_id, data_ctx_id);

if (data) {
_rx_object.process(conn_id, data_ctx_id, *data);
}
}
}

void on_new_data_context(const TransportConnId&, const DataContextId&) {}
void OnNewDataContext(const TransportConnId&, const DataContextId&) {}
};

auto logger = spdlog::stderr_color_mt("CLIENT");
Expand All @@ -95,7 +95,7 @@ main()

logger->set_level(spdlog::level::debug);

TransportRemote server = TransportRemote{ "127.0.0.1", 1234, TransportProtocol::QUIC };
TransportRemote server = TransportRemote{ "127.0.0.1", 1234, TransportProtocol::kQuic };

TransportConfig tconfig{ .tls_cert_filename = "",
.tls_key_filename = "",
Expand All @@ -114,7 +114,7 @@ main()
if (getenv("RELAY_UNIDIR"))
bidir = false;

auto client = ITransport::make_client_transport(server, tconfig, d, logger);
auto client = ITransport::MakeClientTransport(server, tconfig, d, logger);

SPDLOG_LOGGER_INFO(logger, "bidir is {0}", (bidir ? "True" : "False"));
SPDLOG_LOGGER_INFO(logger, "client use_count: {0}", client.use_count());
Expand All @@ -125,23 +125,23 @@ main()
auto metrics_conn_samples = std::make_shared<SafeQueue<MetricsConnSample>>(10);
auto metrics_data_samples = std::make_shared<SafeQueue<MetricsDataSample>>(10);

auto conn_id = client->start(metrics_conn_samples, metrics_data_samples);
auto conn_id = client->Start(metrics_conn_samples, metrics_data_samples);

while (client->status() != TransportStatus::Ready) {
while (client->Status() != TransportStatus::kReady) {
GhostofCookie marked this conversation as resolved.
Show resolved Hide resolved
SPDLOG_LOGGER_INFO(logger, "Waiting for client to be ready");
std::this_thread::sleep_for(std::chrono::milliseconds(250));
}

bool use_reliable = true;
DataContextId data_ctx_id = client->createDataContext(conn_id, use_reliable, 1, bidir);
DataContextId data_ctx_id = client->CreateDataContext(conn_id, use_reliable, 1, bidir);

int period_count = 0;

ITransport::EnqueueFlags encode_flags { .use_reliable = use_reliable, .new_stream = true, .clear_tx_queue = true, .use_reset = true};

auto tx_object = Object(logger);

while (client->status() != TransportStatus::Shutdown && client->status() != TransportStatus::Disconnected) {
while (client->Status() != TransportStatus::kShutdown && client->Status() != TransportStatus::kDisconnected) {
period_count++;
for (int i = 0; i < 10; i++) {
auto obj = tx_object.encode();
Expand All @@ -163,7 +163,7 @@ main()
}
}

client->enqueue(conn_id,
client->Enqueue(conn_id,
data_ctx_id,
std::move(obj),
std::move(trace),
Expand All @@ -174,7 +174,7 @@ main()
}

// Increase delay if using UDP, need to pace more
if (server.proto == TransportProtocol::UDP) {
if (server.proto == TransportProtocol::kUdp) {
GhostofCookie marked this conversation as resolved.
Show resolved Hide resolved
std::this_thread::sleep_for(std::chrono::milliseconds (10));
} else {
std::this_thread::sleep_for(std::chrono::milliseconds(2));
Expand All @@ -183,7 +183,7 @@ main()

}

client->deleteDataContext(conn_id, data_ctx_id);
client->DeleteDataContext(conn_id, data_ctx_id);

SPDLOG_LOGGER_INFO(logger, "Done with transport, closing");
client.reset();
Expand Down
38 changes: 19 additions & 19 deletions cmd/echoServer.cc
Original file line number Diff line number Diff line change
Expand Up @@ -31,41 +31,41 @@ struct Delegate : public ITransport::TransportDelegate

void setServerTransport(std::shared_ptr<ITransport> server) { this->server = server; }

void on_connection_status(const TransportConnId& conn_id, const TransportStatus status)
void OnConnectionStatus(const TransportConnId& conn_id, const TransportStatus status)
{
SPDLOG_LOGGER_INFO(logger, "Connection state change conn_id: {0}, {1}", conn_id, int(status));
}

void on_new_connection(const TransportConnId& conn_id, const TransportRemote& remote)
void OnNewConnection(const TransportConnId& conn_id, const TransportRemote& remote)
{
SPDLOG_LOGGER_INFO(logger, "New connection conn_id: {0} from {1}:{2}", conn_id, remote.host_or_ip, remote.port);

out_data_ctx = this->server->createDataContext(conn_id, true, 10);
out_data_ctx = this->server->CreateDataContext(conn_id, true, 10);
}


void on_recv_stream(const TransportConnId& conn_id,
void OnRecvStream(const TransportConnId& conn_id,
uint64_t stream_id,
std::optional<DataContextId> data_ctx_id,
[[maybe_unused]] const bool is_bidir)
{
auto stream_buf = server->getStreamBuffer(conn_id, stream_id);
auto stream_buf = server->GetStreamBuffer(conn_id, stream_id);

while(true) {
if (stream_buf->available(4)) {
auto len_b = stream_buf->front(4);
if (stream_buf->Available(4)) {
auto len_b = stream_buf->Front(4);
if (!len_b.size())
return;

auto* msg_len = reinterpret_cast<uint32_t*>(len_b.data());

if (stream_buf->available(*msg_len)) {
auto obj = stream_buf->front(*msg_len);
stream_buf->pop(*msg_len);
if (stream_buf->Available(*msg_len)) {
auto obj = stream_buf->Front(*msg_len);
stream_buf->Pop(*msg_len);

_object.process(conn_id, data_ctx_id, obj);

server->enqueue(conn_id, out_data_ctx, std::move(obj), { MethodTraceItem{} }, 2, 500, 0, { true, false, false, false });
server->Enqueue(conn_id, out_data_ctx, std::move(obj), { MethodTraceItem{} }, 2, 500, 0, { true, false, false, false });
} else {
break;
}
Expand All @@ -75,21 +75,21 @@ struct Delegate : public ITransport::TransportDelegate
}
}

void on_recv_dgram(const TransportConnId& conn_id,
void OnRecvDgram(const TransportConnId& conn_id,
std::optional<DataContextId> data_ctx_id)
{
for (int i=0; i < 150; i++) {
auto data = server->dequeue(conn_id, data_ctx_id);
auto data = server->Dequeue(conn_id, data_ctx_id);

if (data) {
_object.process(conn_id, data_ctx_id, *data);

server->enqueue(conn_id, out_data_ctx, std::move(*data));
server->Enqueue(conn_id, out_data_ctx, std::move(*data));
}
}
}

void on_new_data_context(const TransportConnId& conn_id, const DataContextId& data_ctx_id)
void OnNewDataContext(const TransportConnId& conn_id, const DataContextId& data_ctx_id)
{
SPDLOG_LOGGER_INFO(logger, "Callback for new data context conn_id: {0} data_ctx_id: {1}", conn_id, data_ctx_id);
}
Expand All @@ -103,7 +103,7 @@ main()
logger->set_level(spdlog::level::debug);

Delegate d;
TransportRemote serverIp = TransportRemote{ "127.0.0.1", 1234, TransportProtocol::QUIC };
TransportRemote serverIp = TransportRemote{ "127.0.0.1", 1234, TransportProtocol::kQuic };
TransportConfig tconfig{ .tls_cert_filename = "./server-cert.pem",
.tls_key_filename = "./server-key.pem",
.time_queue_max_duration = 1000,
Expand All @@ -113,15 +113,15 @@ main()
if ((envVar = getenv("RELAY_PORT")))
serverIp.port = atoi(envVar);

auto server = ITransport::make_server_transport(serverIp, tconfig, d, logger);
auto server = ITransport::MakeServerTransport(serverIp, tconfig, d, logger);

auto metrics_conn_samples = std::make_shared<SafeQueue<MetricsConnSample>>(10);
auto metrics_data_samples = std::make_shared<SafeQueue<MetricsDataSample>>(10);
server->start(metrics_conn_samples, metrics_data_samples);
server->Start(metrics_conn_samples, metrics_data_samples);

d.setServerTransport(server);

while (server->status() != TransportStatus::Shutdown) {
while (server->Status() != TransportStatus::kShutdown) {
std::this_thread::sleep_for(std::chrono::seconds(3));
}

Expand Down
Loading
Loading