Skip to content

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()
virtual~Router() override
[void]setAuthenticationSink(AuthenticationSink * a)
[ThreadQueue]< Message * > &inQueue()
ServerConnection *addClient(Wire * w)
[void]setMaxConnections([unsigned] max)
[bool]acceptsMoreConnections() const
[void]indicate([uint8_t] messageType, [addr_t] source, [addr_t] destination, [const]PropArray * data =[nullptr], Message * req =[nullptr], [addr_t] exclude_addr =EMPTY_ADDR, [uint32_t] timeout =FLAKE_DEFAULT_TIMEOUT_MS)
virtual [void]onResponse(Message * response, ResponseContext * ctx) override
[bool]registerObject([addr_t] id, [addr_t] parentId, [addr_t] broadcastId, [const]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]receive()
[void]doHousekeeping()
[void]checkConnections()
[void]shutdown()
[bool]finishedShutdown() const
[bool]isRunning() const
[void]run()
[void]disconnect(ServerConnection * c)
virtual [void]onDisconnect(ServerConnection * c) override
[void]addServerWire(ServerWire * w)
std::deque< ServerConnection * > &connections()
[void]lockConnections() const
[void]unlockConnections() const

Additional inherited members

Public Functions inherited from flake::ServerConnectionSink

Name
virtual~ServerConnectionSink() =default

Protected Functions inherited from flake::ResponseSink

Name
~ResponseSink() =default

Public Functions Documentation

function Router

cpp
Router()

function ~Router

cpp
virtual ~Router() override

function setAuthenticationSink

cpp
void setAuthenticationSink(
    AuthenticationSink * a
)

function inQueue

cpp
inline ThreadQueue< Message * > & inQueue()

function addClient

cpp
ServerConnection * addClient(
    Wire * w
)

unref @Router.cpp:162

function setMaxConnections

cpp
void setMaxConnections(
    unsigned max
)

function acceptsMoreConnections

cpp
bool acceptsMoreConnections() const

function indicate

cpp
void indicate(
    uint8_t messageType,
    addr_t source,
    addr_t destination,
    constPropArray * data =nullptr,
    Message * req =nullptr,
    addr_t exclude_addr =EMPTY_ADDR,
    uint32_t timeout =FLAKE_DEFAULT_TIMEOUT_MS
)

function onResponse

cpp
virtual void onResponse(
    Message * response,
    ResponseContext * ctx
) override

Parameters:

  • response

Reimplements: flake::ResponseSink::onResponse

function registerObject

cpp
bool registerObject(
    addr_t id,
    addr_t parentId,
    addr_t broadcastId,
    constPropArray & 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 receive

cpp
void receive()

function doHousekeeping

cpp
inline void doHousekeeping()

function checkConnections

cpp
void checkConnections()

function shutdown

cpp
void shutdown()

function finishedShutdown

cpp
inline bool finishedShutdown() const

function isRunning

cpp
inline bool isRunning() const

function run

cpp
void run()

function disconnect

cpp
void disconnect(
    ServerConnection * c
)

'ref @ Router.cpp:323/367

function onDisconnect

cpp
inline virtual void onDisconnect(
    ServerConnection * c
) override

Reimplements: flake::ServerConnectionSink::onDisconnect

function addServerWire

cpp
void addServerWire(
    ServerWire * w
)

function connections

cpp
inline std::deque< ServerConnection * > & connections()

function lockConnections

cpp
inline void lockConnections() const

function unlockConnections

cpp
inline void unlockConnections() const