summaryrefslogtreecommitdiff
path: root/src/components/application_manager/src/commands/mobile/change_registration_request.cc
diff options
context:
space:
mode:
authorKozoriz <kozorizandriy@gmail.com>2016-04-11 16:21:12 +0300
committerKozoriz <kozorizandriy@gmail.com>2016-04-25 12:05:00 +0300
commit2c7dc612ce41461bebc3416917d2607f24002285 (patch)
tree3dfce6575c040c3469e17ec1eab07d02c3dee92f /src/components/application_manager/src/commands/mobile/change_registration_request.cc
parent8b1699d3829ad4e2384788652a2102f7cd8a8bff (diff)
downloadsdl_core-2c7dc612ce41461bebc3416917d2607f24002285.tar.gz
Mobile commands update after removing all singletones
Diffstat (limited to 'src/components/application_manager/src/commands/mobile/change_registration_request.cc')
-rw-r--r--src/components/application_manager/src/commands/mobile/change_registration_request.cc139
1 files changed, 70 insertions, 69 deletions
diff --git a/src/components/application_manager/src/commands/mobile/change_registration_request.cc b/src/components/application_manager/src/commands/mobile/change_registration_request.cc
index 9bee80aa7d..84ce79611a 100644
--- a/src/components/application_manager/src/commands/mobile/change_registration_request.cc
+++ b/src/components/application_manager/src/commands/mobile/change_registration_request.cc
@@ -34,7 +34,7 @@
#include <string.h>
#include <algorithm>
#include "application_manager/commands/mobile/change_registration_request.h"
-#include "application_manager/application_manager_impl.h"
+#include "application_manager/application_manager.h"
#include "application_manager/application_impl.h"
#include "interfaces/MOBILE_API.h"
#include "interfaces/HMI_API.h"
@@ -42,14 +42,16 @@
namespace {
namespace custom_str = utils::custom_string;
struct IsSameNickname {
- IsSameNickname(const custom_str::CustomString& app_id) : app_id_(app_id) {}
- bool operator()(const policy::StringArray::value_type& nickname) const {
- return app_id_.CompareIgnoreCase(nickname.c_str());
- }
+ IsSameNickname(const custom_str::CustomString& app_id):
+ app_id_(app_id) {
+ }
+ bool operator()(const policy::StringArray::value_type& nickname) const {
+ return app_id_.CompareIgnoreCase(nickname.c_str());
+ }
- private:
- const custom_str::CustomString& app_id_;
-};
+ private:
+ const custom_str::CustomString& app_id_;
+ };
}
namespace application_manager {
@@ -57,22 +59,23 @@ namespace application_manager {
namespace commands {
ChangeRegistrationRequest::ChangeRegistrationRequest(
- const MessageSharedPtr& message)
- : CommandRequestImpl(message)
- , ui_result_(hmi_apis::Common_Result::INVALID_ENUM)
- , vr_result_(hmi_apis::Common_Result::INVALID_ENUM)
- , tts_result_(hmi_apis::Common_Result::INVALID_ENUM) {}
+ const MessageSharedPtr& message, ApplicationManager& application_manager)
+ : CommandRequestImpl(message, application_manager),
+ ui_result_(hmi_apis::Common_Result::INVALID_ENUM),
+ vr_result_(hmi_apis::Common_Result::INVALID_ENUM),
+ tts_result_(hmi_apis::Common_Result::INVALID_ENUM) {
+}
-ChangeRegistrationRequest::~ChangeRegistrationRequest() {}
+ChangeRegistrationRequest::~ChangeRegistrationRequest() {
+}
void ChangeRegistrationRequest::Run() {
LOG4CXX_AUTO_TRACE(logger_);
using namespace smart_objects;
- ApplicationManagerImpl* instance = ApplicationManagerImpl::instance();
- const HMICapabilities& hmi_capabilities = instance->hmi_capabilities();
+ const HMICapabilities& hmi_capabilities = application_manager_.hmi_capabilities();
- ApplicationSharedPtr app = instance->application(connection_key());
+ ApplicationSharedPtr app = application_manager_.application(connection_key());
if (!app) {
LOG4CXX_ERROR(logger_, "NULL pointer");
SendResponse(false, mobile_apis::Result::APPLICATION_NOT_REGISTERED);
@@ -110,9 +113,10 @@ void ChangeRegistrationRequest::Run() {
const int32_t language = msg_params[strings::language].asInt();
- if (false == (IsLanguageSupportedByUI(hmi_language) &&
- IsLanguageSupportedByVR(language) &&
- IsLanguageSupportedByTTS(language))) {
+ if (false ==
+ (IsLanguageSupportedByUI(hmi_language) &&
+ IsLanguageSupportedByVR(language) &&
+ IsLanguageSupportedByTTS(language))) {
LOG4CXX_ERROR(logger_, "Language is not supported");
SendResponse(false, mobile_apis::Result::REJECTED);
return;
@@ -142,10 +146,11 @@ void ChangeRegistrationRequest::Run() {
ui_params[strings::ngn_media_screen_app_name] =
msg_params[strings::ngn_media_screen_app_name];
app->set_ngn_media_screen_name(
- msg_params[strings::ngn_media_screen_app_name]);
+ msg_params[strings::ngn_media_screen_app_name]);
}
- SendHMIRequest(hmi_apis::FunctionID::UI_ChangeRegistration, &ui_params, true);
+ SendHMIRequest(hmi_apis::FunctionID::UI_ChangeRegistration,
+ &ui_params, true);
// VR processing
SmartObject vr_params = SmartObject(SmartType_Map);
@@ -155,9 +160,10 @@ void ChangeRegistrationRequest::Run() {
vr_params[strings::app_id] = app->app_id();
if (msg_params.keyExists(strings::vr_synonyms)) {
vr_params[strings::vr_synonyms] = msg_params[strings::vr_synonyms];
- app->set_vr_synonyms(msg_params[strings::vr_synonyms]);
+ app -> set_vr_synonyms(msg_params[strings::vr_synonyms]);
}
- SendHMIRequest(hmi_apis::FunctionID::VR_ChangeRegistration, &vr_params, true);
+ SendHMIRequest(hmi_apis::FunctionID::VR_ChangeRegistration,
+ &vr_params, true);
// TTS processing
SmartObject tts_params = SmartObject(SmartType_Map);
@@ -170,17 +176,19 @@ void ChangeRegistrationRequest::Run() {
app->set_tts_name(msg_params[strings::tts_name]);
}
- SendHMIRequest(
- hmi_apis::FunctionID::TTS_ChangeRegistration, &tts_params, true);
+ SendHMIRequest(hmi_apis::FunctionID::TTS_ChangeRegistration,
+ &tts_params, true);
}
bool ChangeRegistrationRequest::AllHmiResponsesSuccess(
- const hmi_apis::Common_Result::eType ui,
- const hmi_apis::Common_Result::eType vr,
- const hmi_apis::Common_Result::eType tts) {
- return hmi_apis::Common_Result::SUCCESS == ui &&
- hmi_apis::Common_Result::SUCCESS == vr &&
- hmi_apis::Common_Result::SUCCESS == tts;
+ const hmi_apis::Common_Result::eType ui,
+ const hmi_apis::Common_Result::eType vr,
+ const hmi_apis::Common_Result::eType tts) {
+
+ return
+ hmi_apis::Common_Result::SUCCESS == ui &&
+ hmi_apis::Common_Result::SUCCESS == vr &&
+ hmi_apis::Common_Result::SUCCESS == tts;
}
void ChangeRegistrationRequest::on_event(const event_engine::Event& event) {
@@ -219,7 +227,7 @@ void ChangeRegistrationRequest::on_event(const event_engine::Event& event) {
if (pending_requests_.IsFinal(event_id)) {
ApplicationSharedPtr application =
- ApplicationManagerImpl::instance()->application(connection_key());
+ application_manager_.application(connection_key());
if (!application) {
LOG4CXX_ERROR(logger_, "NULL pointer");
@@ -228,37 +236,35 @@ void ChangeRegistrationRequest::on_event(const event_engine::Event& event) {
if (hmi_apis::Common_Result::SUCCESS == ui_result_) {
application->set_ui_language(static_cast<mobile_api::Language::eType>(
- (*message_)[strings::msg_params][strings::hmi_display_language]
- .asInt()));
+ (*message_)[strings::msg_params][strings::hmi_display_language].asInt()));
}
- if (hmi_apis::Common_Result::SUCCESS == vr_result_ ||
- hmi_apis::Common_Result::SUCCESS == tts_result_) {
+ if (hmi_apis::Common_Result::SUCCESS == vr_result_
+ || hmi_apis::Common_Result::SUCCESS == tts_result_) {
application->set_language(static_cast<mobile_api::Language::eType>(
(*message_)[strings::msg_params][strings::language].asInt()));
}
- int32_t greates_result_code =
- std::max(std::max(ui_result_, vr_result_), tts_result_);
+ int32_t greates_result_code = std::max(std::max(ui_result_, vr_result_),
+ tts_result_);
(*message_)[strings::params][strings::function_id] =
- mobile_apis::FunctionID::eType::ChangeRegistrationID;
+ mobile_apis::FunctionID::eType::ChangeRegistrationID;
SendResponse(AllHmiResponsesSuccess(ui_result_, vr_result_, tts_result_),
static_cast<mobile_apis::Result::eType>(greates_result_code),
- NULL,
- &(message[strings::msg_params]));
+ NULL, &(message[strings::msg_params]));
} else {
LOG4CXX_INFO(logger_,
- "There are some pending responses from HMI."
- "ChangeRegistrationRequest still waiting.");
+ "There are some pending responses from HMI."
+ "ChangeRegistrationRequest still waiting.");
}
}
bool ChangeRegistrationRequest::IsLanguageSupportedByUI(
const int32_t& hmi_display_lang) {
const HMICapabilities& hmi_capabilities =
- ApplicationManagerImpl::instance()->hmi_capabilities();
+ application_manager_.hmi_capabilities();
const smart_objects::SmartObject* ui_languages =
hmi_capabilities.ui_supported_languages();
@@ -281,7 +287,7 @@ bool ChangeRegistrationRequest::IsLanguageSupportedByUI(
bool ChangeRegistrationRequest::IsLanguageSupportedByVR(
const int32_t& hmi_display_lang) {
const HMICapabilities& hmi_capabilities =
- ApplicationManagerImpl::instance()->hmi_capabilities();
+ application_manager_.hmi_capabilities();
const smart_objects::SmartObject* vr_languages =
hmi_capabilities.vr_supported_languages();
@@ -304,7 +310,7 @@ bool ChangeRegistrationRequest::IsLanguageSupportedByVR(
bool ChangeRegistrationRequest::IsLanguageSupportedByTTS(
const int32_t& hmi_display_lang) {
const HMICapabilities& hmi_capabilities =
- ApplicationManagerImpl::instance()->hmi_capabilities();
+ application_manager_.hmi_capabilities();
const smart_objects::SmartObject* tts_languages =
hmi_capabilities.tts_supported_languages();
@@ -351,10 +357,10 @@ bool ChangeRegistrationRequest::IsWhiteSpaceExist() {
}
}
- if ((*message_)[strings::msg_params].keyExists(
- strings::ngn_media_screen_app_name)) {
- str = (*message_)[strings::msg_params][strings::ngn_media_screen_app_name]
- .asCharArray();
+ if ((*message_)[strings::msg_params].
+ keyExists(strings::ngn_media_screen_app_name)) {
+ str = (*message_)[strings::msg_params]
+ [strings::ngn_media_screen_app_name].asCharArray();
if (!CheckSyntax(str)) {
LOG4CXX_ERROR(logger_,
"Invalid ngn_media_screen_app_name syntax check failed");
@@ -386,7 +392,7 @@ mobile_apis::Result::eType ChangeRegistrationRequest::CheckCoincidence() {
const smart_objects::SmartObject& msg_params =
(*message_)[strings::msg_params];
- ApplicationManagerImpl::ApplicationListAccessor accessor;
+ ApplicationSet accessor = application_manager_.applications().GetData();
custom_str::CustomString app_name;
uint32_t app_id = connection_key();
if (msg_params.keyExists(strings::app_name)) {
@@ -430,53 +436,48 @@ mobile_apis::Result::eType ChangeRegistrationRequest::CheckCoincidence() {
return mobile_apis::Result::DUPLICATE_NAME;
}
} // end vr check
- } // application for end
+ } // application for end
return mobile_apis::Result::SUCCESS;
}
bool ChangeRegistrationRequest::IsNicknameAllowed(
const custom_str::CustomString& app_name) const {
LOG4CXX_AUTO_TRACE(logger_);
- ApplicationSharedPtr app =
- application_manager::ApplicationManagerImpl::instance()->application(
- connection_key());
+ ApplicationSharedPtr app =
+ application_manager_.
+ application(connection_key());
if (!app) {
- LOG4CXX_ERROR(logger_,
- "Can't find appication with connection key "
- << connection_key());
+ LOG4CXX_ERROR(logger_, "Can't find appication with connection key "
+ << connection_key());
return false;
}
- const std::string policy_app_id = app->mobile_app_id();
+ const std::string policy_app_id = app->policy_app_id();
policy::StringArray app_nicknames;
policy::StringArray app_hmi_types;
- const bool init_result =
- application_manager::ApplicationManagerImpl::instance()
- ->GetPolicyHandler()
+ bool init_result = application_manager_.GetPolicyHandler()
.GetInitialAppData(policy_app_id, &app_nicknames, &app_hmi_types);
if (!init_result) {
LOG4CXX_ERROR(logger_,
"Error during getting of nickname list for application "
- << policy_app_id);
+ << policy_app_id);
return false;
}
if (!app_nicknames.empty()) {
IsSameNickname compare(app_name);
- policy::StringArray::const_iterator it =
- std::find_if(app_nicknames.begin(), app_nicknames.end(), compare);
+ policy::StringArray::const_iterator it = std::find_if(
+ app_nicknames.begin(), app_nicknames.end(), compare);
if (app_nicknames.end() == it) {
LOG4CXX_WARN(logger_,
"Application name was not found in nicknames list.");
usage_statistics::AppCounter count_of_rejections_nickname_mismatch(
- application_manager::ApplicationManagerImpl::instance()
- ->GetPolicyHandler()
- .GetStatisticManager(),
+ application_manager_.GetPolicyHandler().GetStatisticManager(),
policy_app_id,
usage_statistics::REJECTIONS_NICKNAME_MISMATCH);
++count_of_rejections_nickname_mismatch;