summaryrefslogtreecommitdiff
path: root/src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler_impl.h
diff options
context:
space:
mode:
authorKozoriz <kozorizandriy@gmail.com>2016-02-29 10:29:49 +0200
committerKozoriz <kozorizandriy@gmail.com>2016-03-04 10:11:18 +0200
commit6b1559b8659ec8d20777c29a714797fa3b649804 (patch)
tree42e95002eb429f52964f0c88f2fa0b0991ee841a /src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler_impl.h
parentb14ac4915707bb39a24f4de8a27e497b21aa7032 (diff)
downloadsdl_core-6b1559b8659ec8d20777c29a714797fa3b649804.tar.gz
Remove HMIMessageHandler singleton
Correctives in src and tests for class Related to : APPLINK-21440
Diffstat (limited to 'src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler_impl.h')
-rw-r--r--src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler_impl.h15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler_impl.h b/src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler_impl.h
index f1f58eaf2e..2f235aa968 100644
--- a/src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler_impl.h
+++ b/src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler_impl.h
@@ -36,12 +36,12 @@
#include <set>
#include "hmi_message_handler/hmi_message_adapter.h"
#include "hmi_message_handler/hmi_message_handler.h"
+#include "hmi_message_handler/hmi_message_handler_settings.h"
#include "utils/macro.h"
#include "utils/message_queue.h"
#include "utils/prioritized_queue.h"
#include "utils/threads/message_loop_thread.h"
#include "utils/threads/thread.h"
-#include "utils/singleton.h"
namespace hmi_message_handler {
@@ -82,9 +82,10 @@ class FromHMIThreadImpl;
class HMIMessageHandlerImpl
: public HMIMessageHandler,
public impl::FromHmiQueue::Handler,
- public impl::ToHmiQueue::Handler,
- public utils::Singleton<HMIMessageHandlerImpl> {
+ public impl::ToHmiQueue::Handler {
public:
+ explicit HMIMessageHandlerImpl(const HMIMessageHandlerSettings& settings);
+
~HMIMessageHandlerImpl();
void OnMessageReceived(MessageSharedPointer message);
void SendMessageToHMI(MessageSharedPointer message);
@@ -93,6 +94,8 @@ class HMIMessageHandlerImpl
void AddHMIMessageAdapter(HMIMessageAdapter* adapter);
void RemoveHMIMessageAdapter(HMIMessageAdapter* adapter);
+ virtual const HMIMessageHandlerSettings& get_settings() const OVERRIDE;
+
#ifdef BUILD_TESTS
std::set<HMIMessageAdapter*> message_adapters() const {
return message_adapters_;
@@ -104,9 +107,6 @@ class HMIMessageHandlerImpl
#endif // BUILD_TESTS
private:
- HMIMessageHandlerImpl();
-
-
// threads::MessageLoopThread<*>::Handler implementations
// CALLED ON messages_from_hmi_ THREAD!
@@ -114,7 +114,7 @@ class HMIMessageHandlerImpl
// CALLED ON messages_to_hmi_ THREAD!
virtual void Handle(const impl::MessageToHmi message) OVERRIDE;
private:
-
+ const HMIMessageHandlerSettings& settings_;
HMIMessageObserver* observer_;
mutable sync_primitives::Lock observer_locker_;
std::set<HMIMessageAdapter*> message_adapters_;
@@ -127,7 +127,6 @@ class HMIMessageHandlerImpl
impl::FromHmiQueue messages_from_hmi_;
DISALLOW_COPY_AND_ASSIGN(HMIMessageHandlerImpl);
- FRIEND_BASE_SINGLETON_CLASS(HMIMessageHandlerImpl);
};
} // namespace hmi_message_handler