32 const std::string &clientAddress,
33 std::shared_ptr<IceFlow> iceflow);
37 void reportCongestion(CongestionReason congestionReason,
38 const std::string &edgeName)
override;
40 void registerConsumer(
const std::string &edgeName,
41 std::shared_ptr<IceflowConsumer> consumer);
43 void deregisterConsumer(
const std::string &edgeName);
45 void registerProducer(
const std::string &edgeName,
46 std::shared_ptr<IceflowProducer> producer);
48 void deregisterProducer(
const std::string &edgeName);
51 void runGrpcServer(
const std::string &address);
53 void runGrpcClient(
const std::string &address);
56 const std::string &m_serverAddress;
58 const std::string &m_clientAddress;
60 std::shared_ptr<IceFlow> m_iceflow;
62 std::unique_ptr<grpc::Server> m_server;
64 std::unique_ptr<NodeExecutor::Stub> m_nodeExecutorService;
66 std::unordered_map<std::string, std::shared_ptr<IceflowConsumer>>
69 std::unordered_map<std::string, std::shared_ptr<IceflowProducer>>