21#ifndef COMMON_RPC_RPCSERVER_H_
22#define COMMON_RPC_RPCSERVER_H_
25#include <ola/io/SelectServerInterface.h>
26#include <ola/network/TCPSocketFactory.h>
93 const Options &options);
117 typedef std::set<ola::io::ConnectedDescriptor*> ClientDescriptors;
122 const Options m_options;
125 std::auto_ptr<ola::network::TCPAcceptingSocket> m_accepting_socket;
126 ClientDescriptors m_connected_sockets;
132 static const char K_CLIENT_VAR[];
133 static const char K_RPC_PORT_VAR[];
A container for the exported variables.
Definition ExportMap.h:324
A BidirectionalFileDescriptor that also generates notifications when closed.
Definition Descriptor.h:283
The interface for the SelectServer.
Definition SelectServerInterface.h:42
a Generic Socket Address
Definition SocketAddress.h:166
Definition TCPSocketFactory.h:46
Definition TCPSocket.h:74
Definition TCPSocket.h:43
An RPC server.
Definition RpcServer.h:48
bool Init()
Initialize the RpcServer.
Definition RpcServer.cpp:86
bool AddClient(ola::io::ConnectedDescriptor *descriptor)
Manually attach a new client on the given descriptor.
Definition RpcServer.cpp:128
ola::network::GenericSocketAddress ListenAddress()
Return the address this RpcServer is listening on.
Definition RpcServer.cpp:121
RpcServer(ola::io::SelectServerInterface *ss, class RpcService *service, class RpcSessionHandlerInterface *session_handler, const Options &options)
Create a new RpcServer.
Definition RpcServer.cpp:53
Definition RpcService.h:35
Used to receive notifications of RPC client session activity.
Definition RpcSessionHandler.h:36
Represents the RPC session between a client and server.
Definition RpcSession.h:45
The namespace containing all OLA symbols.
Definition Credentials.cpp:44
Options for the RpcServer.
Definition RpcServer.h:53
uint16_t listen_port
The TCP port to listen on.
Definition RpcServer.h:60
class ExportMap * export_map
The export map to use for stats.
Definition RpcServer.h:62
ola::network::TCPAcceptingSocket * listen_socket
The listening TCP socket to wait for clients on.
Definition RpcServer.h:73