lokinet/llarp/rpc/rpc_server.hpp

36 lines
614 B
C++
Raw Normal View History

2020-05-21 16:09:45 +02:00
#pragma once
#include <string_view>
#include <llarp/config/config.hpp>
#include <oxenmq/oxenmq.h>
#include <oxenmq/address.h>
#include <oxen/log/omq_logger.hpp>
2020-05-21 16:09:45 +02:00
namespace llarp
{
struct AbstractRouter;
}
namespace llarp::rpc
{
2021-02-03 19:12:21 +01:00
using LMQ_ptr = std::shared_ptr<oxenmq::OxenMQ>;
2020-05-21 16:09:45 +02:00
struct RpcServer
{
explicit RpcServer(LMQ_ptr, AbstractRouter*);
~RpcServer() = default;
2020-05-21 16:09:45 +02:00
void
AddRPCCategories();
2020-05-21 16:09:45 +02:00
private:
void
HandleLogsSubRequest(oxenmq::Message& m);
2020-05-21 16:09:45 +02:00
LMQ_ptr m_LMQ;
AbstractRouter* const m_Router;
oxen::log::PubsubLogger log_subs;
2020-05-21 16:09:45 +02:00
};
} // namespace llarp::rpc