IQRF Gateway Daemon
Public Member Functions | List of all members
MqMessaging Class Reference

Interprocess messaging. More...

#include <MqMessaging.h>

Inheritance diagram for MqMessaging:
IMessaging

Public Member Functions

 MqMessaging ()=delete
 
 MqMessaging (const std::string &name)
 
virtual ~MqMessaging ()
 
void start () override
 IMessaging overriden methods. More...
 
void stop () override
 Stop Messaging instance. More...
 
void update (const rapidjson::Value &cfg) override
 Update configuration. More...
 
const std::string & getName () const override
 Get name of the instance. More...
 
void registerMessageHandler (MessageHandlerFunc hndl) override
 Register message handler. More...
 
void unregisterMessageHandler () override
 Unregister message handler. More...
 
void sendMessage (const ustring &msg) override
 send message More...
 
- Public Member Functions inherited from IMessaging
virtual ~IMessaging ()
 

Additional Inherited Members

- Public Types inherited from IMessaging
typedef std::basic_string< unsigned char > ustring
 
typedef std::function< void(const ustring &)> MessageHandlerFunc
 Incoming message handler functional type. More...
 

Detailed Description

Interprocess messaging.

Implements IMessaging interface for interprocess communication

Configurable via its update() method accepting JSON properties:

"Properties": {
"LocalMqName": "iqrf-daemon-110", #name of local interprocess connection
"RemoteMqName" : "iqrf-daemon-100" #name of remote interprocess connection
}

Constructor & Destructor Documentation

◆ MqMessaging() [1/2]

MqMessaging::MqMessaging ( )
delete

◆ MqMessaging() [2/2]

MqMessaging::MqMessaging ( const std::string &  name)

◆ ~MqMessaging()

MqMessaging::~MqMessaging ( )
virtual

Member Function Documentation

◆ getName()

const std::string& MqMessaging::getName ( ) const
inlineoverridevirtual

Get name of the instance.

Returns
The instance name

Returns unique name of the instance

Implements IMessaging.

◆ registerMessageHandler()

void MqMessaging::registerMessageHandler ( MessageHandlerFunc  hndl)
overridevirtual

Register message handler.

Parameters
[in]hndlregistering handler function

Whenever a message is received it is passed to the handler function. It is possible to register just one handler

Implements IMessaging.

◆ sendMessage()

void MqMessaging::sendMessage ( const ustring msg)
overridevirtual

send message

Parameters
[in]msgmessage to be sent

The message is send outside

Implements IMessaging.

◆ start()

void MqMessaging::start ( )
overridevirtual

IMessaging overriden methods.

Implements IMessaging.

◆ stop()

void MqMessaging::stop ( )
overridevirtual

Stop Messaging instance.

Messaging implementation stops its job

Implements IMessaging.

◆ unregisterMessageHandler()

void MqMessaging::unregisterMessageHandler ( )
overridevirtual

Unregister message handler.

If the handler is not required anymore, it is possible to unregister via this method.

Implements IMessaging.

◆ update()

void MqMessaging::update ( const rapidjson::Value &  cfg)
overridevirtual

Update configuration.

Parameters
[in]cfgconfiguration data

Configuration data are taken from passed cfg and the instance is configured accordingly

Implements IMessaging.


The documentation for this class was generated from the following files: