summaryrefslogtreecommitdiff
path: root/src/components/hmi_message_handler/include
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
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')
-rw-r--r--src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler.h9
-rw-r--r--src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler_impl.h15
2 files changed, 15 insertions, 9 deletions
diff --git a/src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler.h b/src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler.h
index 3e06c65085..217075e89f 100644
--- a/src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler.h
+++ b/src/components/hmi_message_handler/include/hmi_message_handler/hmi_message_handler.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, Ford Motor Company
+ * Copyright (c) 2016, Ford Motor Company
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -35,6 +35,7 @@
#include "hmi_message_handler/hmi_message_sender.h"
#include "hmi_message_handler/hmi_message_observer.h"
+#include "hmi_message_handler/hmi_message_handler_settings.h"
namespace hmi_message_handler {
@@ -49,6 +50,12 @@ class HMIMessageHandler : public HMIMessageObserver, public HMIMessageSender {
virtual ~HMIMessageHandler() {}
virtual void AddHMIMessageAdapter(HMIMessageAdapter* adapter) = 0;
virtual void RemoveHMIMessageAdapter(HMIMessageAdapter* adapter) = 0;
+
+ /**
+ * \brief Hmi message handler settings getter
+ * \return pointer to hmi message handler settings class
+ */
+ virtual const HMIMessageHandlerSettings& get_settings() const = 0;
};
} // namespace hmi_message_handler
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