summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLitvinenkoIra <ilytvynenko@luxoft.com>2020-03-30 15:37:14 +0300
committerLitvinenkoIra <ilytvynenko@luxoft.com>2020-03-31 10:11:25 +0300
commitca6230d4b694dd485d368d28b4319289831d2c79 (patch)
tree7002205a6e8dcd12c1035379db2bca44ae44d3da
parentb013908d2e3629c2f88e2319e4f43e4b842a1af6 (diff)
downloadsdl_core-fix/sdl_expects_capabilities_for_unavailable_interfaces.tar.gz
Do not expect HMI response for capabilities for unavailable interfacefix/sdl_expects_capabilities_for_unavailable_interfaces
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/tts_is_ready_request.h3
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/ui_is_ready_request.h3
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/vr_is_ready_request.h3
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/rc_is_ready_request.cc2
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/tts_is_ready_request.cc10
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/ui_is_ready_request.cc10
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/vr_is_ready_request.cc10
-rw-r--r--src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/commands/hmi/vi_is_ready_request.cc2
8 files changed, 40 insertions, 3 deletions
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/tts_is_ready_request.h b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/tts_is_ready_request.h
index 7e1debc05e..b1a6197ac3 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/tts_is_ready_request.h
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/tts_is_ready_request.h
@@ -83,6 +83,9 @@ class TTSIsReadyRequest : public app_mngr::commands::RequestToHMI,
void RequestCapabilities();
private:
+ std::vector<hmi_apis::FunctionID::eType>
+ requests_required_for_TTS_capabilities_;
+
DISALLOW_COPY_AND_ASSIGN(TTSIsReadyRequest);
};
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/ui_is_ready_request.h b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/ui_is_ready_request.h
index b08a2f8b20..8b24d664b1 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/ui_is_ready_request.h
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/ui_is_ready_request.h
@@ -83,6 +83,9 @@ class UIIsReadyRequest : public app_mngr::commands::RequestToHMI,
void RequestCapabilities();
private:
+ std::vector<hmi_apis::FunctionID::eType>
+ requests_required_for_UI_capabilities_;
+
DISALLOW_COPY_AND_ASSIGN(UIIsReadyRequest);
};
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/vr_is_ready_request.h b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/vr_is_ready_request.h
index 7a37bacb77..2b8e367f7e 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/vr_is_ready_request.h
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/include/sdl_rpc_plugin/commands/hmi/vr_is_ready_request.h
@@ -84,6 +84,9 @@ class VRIsReadyRequest : public app_mngr::commands::RequestToHMI,
void RequestCapabilities();
private:
+ std::vector<hmi_apis::FunctionID::eType>
+ requests_required_for_VR_capabilities_;
+
DISALLOW_COPY_AND_ASSIGN(VRIsReadyRequest);
};
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/rc_is_ready_request.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/rc_is_ready_request.cc
index e13dfa63d3..74349c1470 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/rc_is_ready_request.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/rc_is_ready_request.cc
@@ -77,6 +77,8 @@ void RCIsReadyRequest::on_event(const event_engine::Event& event) {
if (!app_mngr::commands::CheckAvailabilityHMIInterfaces(
application_manager_, HmiInterfaces::HMI_INTERFACE_RC)) {
+ hmi_capabilities_.UpdateRequestsRequiredForCapabilities(
+ hmi_apis::FunctionID::RC_GetCapabilities);
LOG4CXX_INFO(logger_,
"HmiInterfaces::HMI_INTERFACE_RC isn't available");
return;
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/tts_is_ready_request.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/tts_is_ready_request.cc
index bc4c1db136..883f9e36ab 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/tts_is_ready_request.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/tts_is_ready_request.cc
@@ -50,7 +50,12 @@ TTSIsReadyRequest::TTSIsReadyRequest(
rpc_service,
hmi_capabilities,
policy_handler)
- , EventObserver(application_manager.event_dispatcher()) {}
+ , EventObserver(application_manager.event_dispatcher()) {
+ requests_required_for_TTS_capabilities_ = {
+ hmi_apis::FunctionID::TTS_GetLanguage,
+ hmi_apis::FunctionID::TTS_GetSupportedLanguages,
+ hmi_apis::FunctionID::TTS_GetCapabilities};
+}
TTSIsReadyRequest::~TTSIsReadyRequest() {}
@@ -74,6 +79,9 @@ void TTSIsReadyRequest::on_event(const event_engine::Event& event) {
hmi_capabilities.set_is_tts_cooperating(is_available);
if (!app_mngr::commands::CheckAvailabilityHMIInterfaces(
application_manager_, HmiInterfaces::HMI_INTERFACE_TTS)) {
+ for (auto request_id : requests_required_for_TTS_capabilities_) {
+ hmi_capabilities_.UpdateRequestsRequiredForCapabilities(request_id);
+ }
LOG4CXX_INFO(logger_,
"HmiInterfaces::HMI_INTERFACE_TTS isn't available");
return;
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/ui_is_ready_request.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/ui_is_ready_request.cc
index 9e28b8f356..1359561ea3 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/ui_is_ready_request.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/ui_is_ready_request.cc
@@ -50,7 +50,12 @@ UIIsReadyRequest::UIIsReadyRequest(
rpc_service,
hmi_capabilities,
policy_handle)
- , EventObserver(application_manager.event_dispatcher()) {}
+ , EventObserver(application_manager.event_dispatcher()) {
+ requests_required_for_UI_capabilities_ = {
+ hmi_apis::FunctionID::UI_GetLanguage,
+ hmi_apis::FunctionID::UI_GetSupportedLanguages,
+ hmi_apis::FunctionID::UI_GetCapabilities};
+}
UIIsReadyRequest::~UIIsReadyRequest() {}
@@ -73,6 +78,9 @@ void UIIsReadyRequest::on_event(const event_engine::Event& event) {
hmi_capabilities.set_is_ui_cooperating(is_available);
if (!app_mngr::commands::CheckAvailabilityHMIInterfaces(
application_manager_, HmiInterfaces::HMI_INTERFACE_UI)) {
+ for (auto request_id : requests_required_for_UI_capabilities_) {
+ hmi_capabilities_.UpdateRequestsRequiredForCapabilities(request_id);
+ }
LOG4CXX_INFO(logger_,
"HmiInterfaces::HMI_INTERFACE_UI isn't available");
return;
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/vr_is_ready_request.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/vr_is_ready_request.cc
index 466f4248c4..126fe34ec8 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/vr_is_ready_request.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/vr_is_ready_request.cc
@@ -49,7 +49,12 @@ VRIsReadyRequest::VRIsReadyRequest(
rpc_service,
hmi_capabilities,
policy_handle)
- , EventObserver(application_manager.event_dispatcher()) {}
+ , EventObserver(application_manager.event_dispatcher()) {
+ requests_required_for_VR_capabilities_ = {
+ hmi_apis::FunctionID::VR_GetLanguage,
+ hmi_apis::FunctionID::VR_GetSupportedLanguages,
+ hmi_apis::FunctionID::VR_GetCapabilities};
+}
VRIsReadyRequest::~VRIsReadyRequest() {}
@@ -73,6 +78,9 @@ void VRIsReadyRequest::on_event(const event_engine::Event& event) {
hmi_capabilities.set_is_vr_cooperating(is_available);
if (!app_mngr::commands::CheckAvailabilityHMIInterfaces(
application_manager_, HmiInterfaces::HMI_INTERFACE_VR)) {
+ for (auto request_id : requests_required_for_VR_capabilities_) {
+ hmi_capabilities_.UpdateRequestsRequiredForCapabilities(request_id);
+ }
LOG4CXX_INFO(logger_,
"HmiInterfaces::HMI_INTERFACE_VR isn't available");
return;
diff --git a/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/commands/hmi/vi_is_ready_request.cc b/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/commands/hmi/vi_is_ready_request.cc
index 98ae210634..e8f507673c 100644
--- a/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/commands/hmi/vi_is_ready_request.cc
+++ b/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/commands/hmi/vi_is_ready_request.cc
@@ -79,6 +79,8 @@ void VIIsReadyRequest::on_event(const event_engine::Event& event) {
LOG4CXX_INFO(
logger_,
"HmiInterfaces::HMI_INTERFACE_VehicleInfo isn't available");
+ hmi_capabilities_.UpdateRequestsRequiredForCapabilities(
+ hmi_apis::FunctionID::VehicleInfo_GetVehicleType);
return;
}