From dfd3cb7b0cca9231a34032d101e06cbf9fde5f40 Mon Sep 17 00:00:00 2001 From: "michal.szwaj" Date: Fri, 6 Apr 2018 20:14:47 +0200 Subject: [PATCH] Inject messenger to the entity --- .../openauto/autoapp/Projection/AndroidAutoEntity.hpp | 7 ++++--- src/autoapp/Projection/AndroidAutoEntity.cpp | 11 ++++------- src/autoapp/Projection/AndroidAutoEntityFactory.cpp | 9 +++++++-- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/include/f1x/openauto/autoapp/Projection/AndroidAutoEntity.hpp b/include/f1x/openauto/autoapp/Projection/AndroidAutoEntity.hpp index ab73a6c..4101c95 100644 --- a/include/f1x/openauto/autoapp/Projection/AndroidAutoEntity.hpp +++ b/include/f1x/openauto/autoapp/Projection/AndroidAutoEntity.hpp @@ -20,7 +20,7 @@ #include #include -#include +#include #include #include #include @@ -43,6 +43,7 @@ public: AndroidAutoEntity(boost::asio::io_service& ioService, aasdk::messenger::ICryptor::Pointer cryptor, aasdk::transport::ITransport::Pointer transport, + aasdk::messenger::IMessenger::Pointer messenger, configuration::IConfiguration::Pointer configuration, IServiceFactory& serviceFactory, IPinger::Pointer pinger); @@ -69,11 +70,11 @@ private: boost::asio::io_service::strand strand_; aasdk::messenger::ICryptor::Pointer cryptor_; aasdk::transport::ITransport::Pointer transport_; + aasdk::messenger::IMessenger::Pointer messenger_; + aasdk::channel::control::IControlServiceChannel::Pointer controlServiceChannel_; configuration::IConfiguration::Pointer configuration_; IServiceFactory& serviceFactory_; IPinger::Pointer pinger_; - aasdk::messenger::IMessenger::Pointer messenger_; - aasdk::channel::control::ControlServiceChannel::Pointer controlServiceChannel_; ServiceList serviceList_; IAndroidAutoEntityEventHandler* eventHandler_; }; diff --git a/src/autoapp/Projection/AndroidAutoEntity.cpp b/src/autoapp/Projection/AndroidAutoEntity.cpp index 9e20a48..94cbd7c 100644 --- a/src/autoapp/Projection/AndroidAutoEntity.cpp +++ b/src/autoapp/Projection/AndroidAutoEntity.cpp @@ -16,9 +16,7 @@ * along with openauto. If not, see . */ -#include -#include -#include +#include #include #include @@ -34,19 +32,18 @@ namespace projection AndroidAutoEntity::AndroidAutoEntity(boost::asio::io_service& ioService, aasdk::messenger::ICryptor::Pointer cryptor, aasdk::transport::ITransport::Pointer transport, + aasdk::messenger::IMessenger::Pointer messenger, configuration::IConfiguration::Pointer configuration, IServiceFactory& serviceFactory, IPinger::Pointer pinger) : strand_(ioService) , cryptor_(std::move(cryptor)) , transport_(std::move(transport)) + , messenger_(std::move(messenger)) + , controlServiceChannel_(std::make_shared(strand_, messenger_)) , configuration_(std::move(configuration)) , serviceFactory_(serviceFactory) , pinger_(std::move(pinger)) - , messenger_(std::make_shared(ioService, - std::make_shared(ioService, transport_, cryptor_), - std::make_shared(ioService, transport_, cryptor_))) - , controlServiceChannel_(std::make_shared(strand_, messenger_)) , eventHandler_(nullptr) { } diff --git a/src/autoapp/Projection/AndroidAutoEntityFactory.cpp b/src/autoapp/Projection/AndroidAutoEntityFactory.cpp index a704d03..b9651fc 100644 --- a/src/autoapp/Projection/AndroidAutoEntityFactory.cpp +++ b/src/autoapp/Projection/AndroidAutoEntityFactory.cpp @@ -21,6 +21,9 @@ #include #include #include +#include +#include +#include #include #include #include @@ -60,9 +63,11 @@ IAndroidAutoEntity::Pointer AndroidAutoEntityFactory::create(aasdk::transport::I { auto sslWrapper(std::make_shared()); auto cryptor(std::make_shared(std::move(sslWrapper))); + auto messenger(std::make_shared(ioService_, + std::make_shared(ioService_, transport, cryptor), + std::make_shared(ioService_, transport, cryptor))); auto pinger(std::make_shared(ioService_, 5000)); - - return std::make_shared(ioService_, std::move(cryptor), std::move(transport), configuration_, serviceFactory_, std::move(pinger)); + return std::make_shared(ioService_, std::move(cryptor), std::move(transport), std::move(messenger), configuration_, serviceFactory_, std::move(pinger)); } }