mirror of
https://github.com/ETLCPP/etl.git
synced 2026-04-30 19:09:10 +08:00
Work in progress
This commit is contained in:
parent
2da1accd19
commit
39b3fa59a8
@ -128,6 +128,14 @@ namespace etl
|
||||
virtual bool is_producer() const = 0;
|
||||
virtual bool is_consumer() const = 0;
|
||||
|
||||
virtual void receive(const etl::imessage& message, etl::message_router_id_t source_router_id)
|
||||
{
|
||||
if (source_router_id != get_message_router_id())
|
||||
{
|
||||
receive(message);
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
virtual void receive(etl::message_router_id_t destination_router_id, const etl::imessage& message)
|
||||
{
|
||||
@ -137,6 +145,16 @@ namespace etl
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
virtual void receive(etl::message_router_id_t destination_router_id, const etl::imessage& message, etl::message_router_id_t source_router_id)
|
||||
{
|
||||
if (((destination_router_id == get_message_router_id()) && (source_router_id != get_message_router_id())) ||
|
||||
(destination_router_id == imessage_router::ALL_MESSAGE_ROUTERS))
|
||||
{
|
||||
receive(message);
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
virtual void receive(etl::shared_message shared_msg)
|
||||
{
|
||||
@ -152,6 +170,16 @@ namespace etl
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
virtual void receive(etl::message_router_id_t destination_router_id, etl::shared_message shared_msg, etl::message_router_id_t source_router_id)
|
||||
{
|
||||
if (((destination_router_id == get_message_router_id()) && (source_router_id != get_message_router_id())) ||
|
||||
(destination_router_id == imessage_router::ALL_MESSAGE_ROUTERS))
|
||||
{
|
||||
receive(shared_msg);
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
bool accepts(const etl::imessage& msg) const
|
||||
{
|
||||
|
||||
@ -150,14 +150,32 @@ namespace etl
|
||||
}
|
||||
|
||||
//*******************************************
|
||||
virtual void receive(etl::shared_message shared_msg) ETL_OVERRIDE
|
||||
virtual void receive(etl::shared_message shared_msg) ETL_OVERRIDE
|
||||
{
|
||||
receive(etl::imessage_router::ALL_MESSAGE_ROUTERS, shared_msg);
|
||||
}
|
||||
|
||||
virtual void receive(const etl::imessage& message,
|
||||
etl::message_router_id_t source_router_id)
|
||||
{
|
||||
receive(etl::imessage_router::ALL_MESSAGE_ROUTERS,
|
||||
message,
|
||||
source_router_id);
|
||||
}
|
||||
|
||||
//*******************************************
|
||||
virtual void receive(etl::shared_message shared_msg,
|
||||
etl::message_router_id_t source_router_id) ETL_OVERRIDE
|
||||
{
|
||||
receive(etl::imessage_router::ALL_MESSAGE_ROUTERS,
|
||||
shared_msg,
|
||||
source_router_id);
|
||||
}
|
||||
|
||||
//*******************************************
|
||||
virtual void receive(etl::message_router_id_t destination_router_id,
|
||||
const etl::imessage& message) ETL_OVERRIDE
|
||||
const etl::imessage& message,
|
||||
etl::message_router_id_t source_router_id) ETL_OVERRIDE
|
||||
{
|
||||
switch (destination_router_id)
|
||||
{
|
||||
@ -238,7 +256,8 @@ namespace etl
|
||||
|
||||
//********************************************
|
||||
virtual void receive(etl::message_router_id_t destination_router_id,
|
||||
etl::shared_message shared_msg) ETL_OVERRIDE
|
||||
etl::shared_message shared_msg,
|
||||
etl::message_router_id_t source_router_id) ETL_OVERRIDE
|
||||
{
|
||||
switch (destination_router_id)
|
||||
{
|
||||
|
||||
@ -116,6 +116,14 @@ namespace etl
|
||||
virtual bool is_producer() const = 0;
|
||||
virtual bool is_consumer() const = 0;
|
||||
|
||||
virtual void receive(const etl::imessage& message, etl::message_router_id_t source_router_id)
|
||||
{
|
||||
if (source_router_id != get_message_router_id())
|
||||
{
|
||||
receive(message);
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
virtual void receive(etl::message_router_id_t destination_router_id, const etl::imessage& message)
|
||||
{
|
||||
@ -125,6 +133,16 @@ namespace etl
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
virtual void receive(etl::message_router_id_t destination_router_id, const etl::imessage& message, etl::message_router_id_t source_router_id)
|
||||
{
|
||||
if (((destination_router_id == get_message_router_id()) && (source_router_id != get_message_router_id())) ||
|
||||
(destination_router_id == imessage_router::ALL_MESSAGE_ROUTERS))
|
||||
{
|
||||
receive(message);
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
virtual void receive(etl::shared_message shared_msg)
|
||||
{
|
||||
@ -140,6 +158,25 @@ namespace etl
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
virtual void receive(etl::shared_message shared_msg, etl::message_router_id_t source_router_id)
|
||||
{
|
||||
if (source_router_id != get_message_router_id())
|
||||
{
|
||||
receive(shared_msg);
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
virtual void receive(etl::message_router_id_t destination_router_id, etl::shared_message shared_msg, etl::message_router_id_t source_router_id)
|
||||
{
|
||||
if (((destination_router_id == get_message_router_id()) && (source_router_id != get_message_router_id())) ||
|
||||
(destination_router_id == imessage_router::ALL_MESSAGE_ROUTERS))
|
||||
{
|
||||
receive(shared_msg);
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************
|
||||
bool accepts(const etl::imessage& msg) const
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user