summaryrefslogtreecommitdiff
path: root/src/components/application_manager/src/commands/hmi/request_from_hmi.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/application_manager/src/commands/hmi/request_from_hmi.cc')
-rw-r--r--src/components/application_manager/src/commands/hmi/request_from_hmi.cc69
1 files changed, 47 insertions, 22 deletions
diff --git a/src/components/application_manager/src/commands/hmi/request_from_hmi.cc b/src/components/application_manager/src/commands/hmi/request_from_hmi.cc
index 5713cf2a15..be3cd6314c 100644
--- a/src/components/application_manager/src/commands/hmi/request_from_hmi.cc
+++ b/src/components/application_manager/src/commands/hmi/request_from_hmi.cc
@@ -31,21 +31,22 @@
*/
#include "application_manager/commands/hmi/request_from_hmi.h"
-#include "application_manager/application_manager_impl.h"
+#include "application_manager/application_manager.h"
+#include "utils/make_shared.h"
namespace application_manager {
namespace commands {
-RequestFromHMI::RequestFromHMI(const MessageSharedPtr& message)
- : CommandImpl(message) {
-
+RequestFromHMI::RequestFromHMI(const MessageSharedPtr& message,
+ ApplicationManager& application_manager)
+ : CommandImpl(message, application_manager)
+ , EventObserver(application_manager.event_dispatcher()) {
// Replace HMI app id with Mobile connection id
- ApplicationManagerImpl::instance()->ReplaceHMIByMobileAppId(*(message.get()));
+ ReplaceHMIByMobileAppId(*(message.get()));
}
-RequestFromHMI::~RequestFromHMI() {
-}
+RequestFromHMI::~RequestFromHMI() {}
bool RequestFromHMI::Init() {
return true;
@@ -55,27 +56,51 @@ bool RequestFromHMI::CleanUp() {
return true;
}
-void RequestFromHMI::Run() {
-}
-
-void RequestFromHMI::on_event(const event_engine::Event& event) {
-}
+void RequestFromHMI::Run() {}
-void RequestFromHMI::SendResponse(uint32_t correlation_id,
- hmi_apis::FunctionID::eType function_id,
- hmi_apis::Common_Result::eType result_code) {
- smart_objects::SmartObject* message = new smart_objects::SmartObject(
- smart_objects::SmartType_Map);
+void RequestFromHMI::on_event(const event_engine::Event& event) {}
- (*message)[strings::params][strings::function_id] = function_id;
+void RequestFromHMI::SendResponse(
+ const bool success,
+ const uint32_t correlation_id,
+ const hmi_apis::FunctionID::eType function_id,
+ const hmi_apis::Common_Result::eType result_code) {
+ smart_objects::SmartObject* message =
+ new smart_objects::SmartObject(smart_objects::SmartType_Map);
+ FillCommonParametersOfSO(message, correlation_id, function_id);
(*message)[strings::params][strings::message_type] = MessageType::kResponse;
- (*message)[strings::params][strings::correlation_id] = correlation_id;
- (*message)[strings::params][hmi_response::code] = result_code;
+ (*message)[strings::params][hmi_response::code] = 0;
+ (*message)[strings::msg_params][strings::success] = success;
+ (*message)[strings::msg_params][strings::result_code] = result_code;
- ApplicationManagerImpl::instance()->ManageHMICommand(message);
+ application_manager_.ManageHMICommand(message);
}
+// void RequestFromHMI::SendErrorResponse(uint32_t correlation_id,
+// hmi_apis::FunctionID::eType
+// function_id,
+// hmi_apis::Common_Result::eType
+// result_code) {
+// smart_objects::SmartObject* message = new smart_objects::SmartObject(
+// smart_objects::SmartType_Map);
+// FillCommonParametersOfSO(message, correlation_id, function_id);
+// (*message)[strings::params][strings::message_type] =
+// MessageType::kErrorResponse;
+// (*message)[strings::params][hmi_response::code] = result_code;
+// (*message)[strings::params][strings::error_msg] = "HMIDeactivate is active";
+
+// application_manager_.ManageHMICommand(message);
+//}
+
+void RequestFromHMI::FillCommonParametersOfSO(
+ smart_objects::SmartObject* message,
+ uint32_t correlation_id,
+ hmi_apis::FunctionID::eType function_id) {
+ (*message)[strings::params][strings::function_id] = function_id;
+ (*message)[strings::params][strings::protocol_type] = hmi_protocol_type_;
+ (*message)[strings::params][strings::protocol_version] = protocol_version_;
+ (*message)[strings::params][strings::correlation_id] = correlation_id;
+}
} // namespace commands
} // namespace application_manager
-