Appearance
class flake::Router
#include </Users/ios_developer/workspace/coldwave-os/build/_deps/flake-src/routing/Router.h>
Inherits from flake::ServerConnectionSink, flake::ResponseSink
Public Functions
Name | |
---|---|
Router() | |
void | setAuthenticationSink(AuthenticationSink * a) |
ThreadQueue< Message * > & | inQueue() |
ServerConnection * | addClient(Wire * w) |
void | addClient(ServerConnection * c) |
void | indicate(uint8_t messageType, addr_t source, addr_t destination, PropArray * data =nullptr, ResponseSink * sink =nullptr, Message * req =nullptr, PropArray * pendingData =nullptr, addr_t exclude_addr =0) |
void | indicateDisconnected(uint8_t messageType, Transport * t, PropArray * data =nullptr, ResponseSink * sink =nullptr, Message * req =nullptr, PropArray * pendingData =nullptr, void * assoc_data =nullptr) |
virtual int8_t | onResponse(const uint8_t messageType, int8_t result, addr_t src, addr_t dst, const PropArray & params, const Token t, Transport * transport, addr_t pendingSender, void * assoc_data) override |
bool | registerObject(addr_t id, addr_t parentId, addr_t broadcastId, PropArray & va, Transport * c, bool requires_auth) |
void | unregisterObject(addr_t id) |
addr_t | group(addr_t objectId, addr_t groupId) |
void | ungroup(addr_t objectId, addr_t groupId) |
void | process() |
void | doHousekeeping() |
void | checkConnections() |
void | cleanupResponseMap() |
void | shutdown() |
bool | finishedShutdown() |
bool | isRunning() |
void | run() |
void | disconnect(ServerConnection * c) |
virtual void | onDisconnect(ServerConnection * c) override |
deque< ServerConnection * > & | connections() |
void | lockConnections() |
void | unlockConnections() |
Public Attributes
Name | |
---|---|
vector< flakeThreadId_t > | m_transportThreads |
ThreadQueue< Message * > | m_dgramInQueue |
ThreadQueue< Message * > | m_dgramOutQueue |
Public Functions Documentation
function Router
cpp
Router()
function setAuthenticationSink
cpp
void setAuthenticationSink(
AuthenticationSink * a
)
function inQueue
cpp
inline ThreadQueue< Message * > & inQueue()
function addClient
cpp
ServerConnection * addClient(
Wire * w
)
function addClient
cpp
void addClient(
ServerConnection * c
)
function indicate
cpp
void indicate(
uint8_t messageType,
addr_t source,
addr_t destination,
PropArray * data =nullptr,
ResponseSink * sink =nullptr,
Message * req =nullptr,
PropArray * pendingData =nullptr,
addr_t exclude_addr =0
)
function indicateDisconnected
cpp
void indicateDisconnected(
uint8_t messageType,
Transport * t,
PropArray * data =nullptr,
ResponseSink * sink =nullptr,
Message * req =nullptr,
PropArray * pendingData =nullptr,
void * assoc_data =nullptr
)
function onResponse
cpp
virtual int8_t onResponse(
const uint8_t messageType,
int8_t result,
addr_t src,
addr_t dst,
const PropArray & params,
const Token t,
Transport * transport,
addr_t pendingSender,
void * assoc_data
) override
Reimplements: flake::ResponseSink::onResponse
function registerObject
cpp
bool registerObject(
addr_t id,
addr_t parentId,
addr_t broadcastId,
PropArray & va,
Transport * c,
bool requires_auth
)
function unregisterObject
cpp
void unregisterObject(
addr_t id
)
function group
cpp
addr_t group(
addr_t objectId,
addr_t groupId
)
function ungroup
cpp
void ungroup(
addr_t objectId,
addr_t groupId
)
function process
cpp
void process()
function doHousekeeping
cpp
inline void doHousekeeping()
function checkConnections
cpp
void checkConnections()
function cleanupResponseMap
cpp
void cleanupResponseMap()
function shutdown
cpp
inline void shutdown()
function finishedShutdown
cpp
inline bool finishedShutdown()
function isRunning
cpp
inline bool isRunning()
function run
cpp
inline void run()
function disconnect
cpp
void disconnect(
ServerConnection * c
)
'ref @ Router.cpp:742
function onDisconnect
cpp
inline virtual void onDisconnect(
ServerConnection * c
) override
Reimplements: flake::ServerConnectionSink::onDisconnect
function connections
cpp
inline deque< ServerConnection * > & connections()
function lockConnections
cpp
inline void lockConnections()
function unlockConnections
cpp
inline void unlockConnections()
Public Attributes Documentation
variable m_transportThreads
cpp
vector<flakeThreadId_t> flake::Router::m_transportThreads
variable m_dgramInQueue
cpp
ThreadQueue<Message*> flake::Router::m_dgramInQueue
variable m_dgramOutQueue
cpp
ThreadQueue<Message*> flake::Router::m_dgramOutQueue