summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLitvinenkoIra <ilytvynenko@luxoft.com>2020-02-18 17:19:13 +0200
committerLitvinenkoIra <ilytvynenko@luxoft.com>2020-03-19 22:02:31 +0200
commit549b20533ef7224a28f99c21d8b1f30060e2944e (patch)
tree15087cbaa7a57521b5b3b4d40b0eaef93b10f259
parent9118fcdf8d5bfad411444513d44a59c8dfa6ff41 (diff)
downloadsdl_core-549b20533ef7224a28f99c21d8b1f30060e2944e.tar.gz
Replace raw pointers with shared pointers
-rw-r--r--src/components/application_manager/include/application_manager/hmi_capabilities_impl.h34
-rw-r--r--src/components/application_manager/rpc_plugins/rc_rpc_plugin/src/commands/mobile/get_interior_vehicle_data_request.cc3
-rw-r--r--src/components/application_manager/rpc_plugins/rc_rpc_plugin/src/commands/mobile/release_interior_vehicle_data_module_request.cc3
-rw-r--r--src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/button_press_request_test.cc9
-rw-r--r--src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/get_interior_vehicle_data_request_test.cc9
-rw-r--r--src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/rc_get_interior_vehicle_data_consent_test.cc9
-rw-r--r--src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/release_interior_vehicle_data_module_request_test.cc10
-rw-r--r--src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/set_interior_vehicle_data_request_test.cc9
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/change_registration_request.cc9
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/change_registration_test.cc18
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/register_app_interface_request_test.cc2
-rw-r--r--src/components/application_manager/src/hmi_capabilities_impl.cc95
-rw-r--r--src/components/application_manager/test/include/application_manager/mock_hmi_capabilities.h16
-rw-r--r--src/components/include/application_manager/hmi_capabilities.h20
14 files changed, 121 insertions, 125 deletions
diff --git a/src/components/application_manager/include/application_manager/hmi_capabilities_impl.h b/src/components/application_manager/include/application_manager/hmi_capabilities_impl.h
index b7f41ca297..471df3ce54 100644
--- a/src/components/application_manager/include/application_manager/hmi_capabilities_impl.h
+++ b/src/components/application_manager/include/application_manager/hmi_capabilities_impl.h
@@ -140,7 +140,7 @@ class HMICapabilitiesImpl : public HMICapabilities {
*
* @return Currently supported UI languages
*/
- const smart_objects::SmartObject* ui_supported_languages() const OVERRIDE;
+ const smart_objects::SmartObjectSPtr ui_supported_languages() const OVERRIDE;
/*
* @brief Sets supported UI languages
@@ -170,7 +170,7 @@ class HMICapabilitiesImpl : public HMICapabilities {
*
* @return Currently supported VR languages
*/
- const smart_objects::SmartObject* vr_supported_languages() const OVERRIDE;
+ const smart_objects::SmartObjectSPtr vr_supported_languages() const OVERRIDE;
/*
* @brief Sets supported VR languages
@@ -200,7 +200,7 @@ class HMICapabilitiesImpl : public HMICapabilities {
*
* @return Currently supported TTS languages
*/
- const smart_objects::SmartObject* tts_supported_languages() const OVERRIDE;
+ const smart_objects::SmartObjectSPtr tts_supported_languages() const OVERRIDE;
/*
* @brief Sets supported TTS languages
@@ -465,7 +465,7 @@ class HMICapabilitiesImpl : public HMICapabilities {
*
* @return NAVIGATION system capability
*/
- const smart_objects::SmartObject* navigation_capability() const OVERRIDE;
+ const smart_objects::SmartObjectSPtr navigation_capability() const OVERRIDE;
/*
* @brief Interface used to store information regarding
@@ -483,7 +483,7 @@ class HMICapabilitiesImpl : public HMICapabilities {
* @return PHONE_CALL system capability
*/
- const smart_objects::SmartObject* phone_capability() const OVERRIDE;
+ const smart_objects::SmartObjectSPtr phone_capability() const OVERRIDE;
/*
* @brief Sets HMI's video streaming related capability information
@@ -498,17 +498,19 @@ class HMICapabilitiesImpl : public HMICapabilities {
*
* @return HMI's video streaming related capability information
*/
- const smart_objects::SmartObject* video_streaming_capability() const OVERRIDE;
+ const smart_objects::SmartObjectSPtr video_streaming_capability()
+ const OVERRIDE;
void set_rc_capability(
const smart_objects::SmartObject& rc_capability) OVERRIDE;
- const smart_objects::SmartObject* rc_capability() const OVERRIDE;
+ const smart_objects::SmartObjectSPtr rc_capability() const OVERRIDE;
void set_seat_location_capability(
const smart_objects::SmartObject& seat_location_capability) OVERRIDE;
- const smart_objects::SmartObject* seat_location_capability() const OVERRIDE;
+ const smart_objects::SmartObjectSPtr seat_location_capability()
+ const OVERRIDE;
void Init(resumption::LastStateWrapperPtr last_state_wrapper) OVERRIDE;
@@ -587,9 +589,9 @@ class HMICapabilitiesImpl : public HMICapabilities {
hmi_apis::Common_Language::eType vr_language_;
hmi_apis::Common_Language::eType tts_language_;
smart_objects::SmartObjectSPtr vehicle_type_;
- smart_objects::SmartObject* ui_supported_languages_;
- smart_objects::SmartObject* tts_supported_languages_;
- smart_objects::SmartObject* vr_supported_languages_;
+ smart_objects::SmartObjectSPtr ui_supported_languages_;
+ smart_objects::SmartObjectSPtr tts_supported_languages_;
+ smart_objects::SmartObjectSPtr vr_supported_languages_;
/*
* display_capabilities_ is deprecated and replaced by
* system_display_capabilities_. For backward compatibility
@@ -611,11 +613,11 @@ class HMICapabilitiesImpl : public HMICapabilities {
bool is_video_streaming_supported_;
bool is_rc_supported_;
std::string ccpu_version_;
- smart_objects::SmartObject* navigation_capability_;
- smart_objects::SmartObject* phone_capability_;
- smart_objects::SmartObject* video_streaming_capability_;
- smart_objects::SmartObject* rc_capability_;
- smart_objects::SmartObject* seat_location_capability_;
+ smart_objects::SmartObjectSPtr navigation_capability_;
+ smart_objects::SmartObjectSPtr phone_capability_;
+ smart_objects::SmartObjectSPtr video_streaming_capability_;
+ smart_objects::SmartObjectSPtr rc_capability_;
+ smart_objects::SmartObjectSPtr seat_location_capability_;
ApplicationManager& app_mngr_;
HMILanguageHandler hmi_language_handler_;
diff --git a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/src/commands/mobile/get_interior_vehicle_data_request.cc b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/src/commands/mobile/get_interior_vehicle_data_request.cc
index 10f6303ac9..01bc17cc20 100644
--- a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/src/commands/mobile/get_interior_vehicle_data_request.cc
+++ b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/src/commands/mobile/get_interior_vehicle_data_request.cc
@@ -54,8 +54,7 @@ GetInteriorVehicleDataRequest::GetInteriorVehicleDataRequest(
bool GetInteriorVehicleDataRequest::ProcessCapabilities() {
LOG4CXX_AUTO_TRACE(logger_);
- const smart_objects::SmartObject* rc_capabilities =
- hmi_capabilities_.rc_capability();
+ const auto rc_capabilities = hmi_capabilities_.rc_capability();
const std::string module_type = ModuleType();
const std::string module_id = ModuleId();
diff --git a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/src/commands/mobile/release_interior_vehicle_data_module_request.cc b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/src/commands/mobile/release_interior_vehicle_data_module_request.cc
index e30d7869bd..e27b8bbf36 100644
--- a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/src/commands/mobile/release_interior_vehicle_data_module_request.cc
+++ b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/src/commands/mobile/release_interior_vehicle_data_module_request.cc
@@ -91,8 +91,7 @@ ReleaseInteriorVehicleDataModuleRequest::
bool ReleaseInteriorVehicleDataModuleRequest::ProcessCapabilities() {
LOG4CXX_AUTO_TRACE(logger_);
- const smart_objects::SmartObject* rc_capabilities =
- hmi_capabilities_.rc_capability();
+ const auto rc_capabilities = hmi_capabilities_.rc_capability();
const std::string module_type = ModuleType();
const std::string module_id = ModuleId();
diff --git a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/button_press_request_test.cc b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/button_press_request_test.cc
index fb8de0bb9c..625b2d6312 100644
--- a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/button_press_request_test.cc
+++ b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/button_press_request_test.cc
@@ -79,14 +79,15 @@ class ButtonPressRequestTest
: public CommandRequestTest<CommandsTestMocks::kIsNice> {
public:
ButtonPressRequestTest()
- : rc_capabilities_(smart_objects::SmartType_Map)
+ : rc_capabilities_(std::make_shared<smart_objects::SmartObject>(
+ smart_objects::SmartType_Map))
, mock_app_(std::make_shared<NiceMock<MockApplication> >())
, rc_app_extention_(
std::make_shared<rc_rpc_plugin::RCAppExtension>(kModuleId)) {}
void SetUp() OVERRIDE {
smart_objects::SmartObject control_caps((smart_objects::SmartType_Array));
- rc_capabilities_[strings::kradioControlCapabilities] = control_caps;
+ (*rc_capabilities_)[strings::kradioControlCapabilities] = control_caps;
ON_CALL(app_mngr_, application(_)).WillByDefault(Return(mock_app_));
ON_CALL(*mock_app_, QueryInterface(RCRPCPlugin::kRCPluginID))
.WillByDefault(Return(rc_app_extention_));
@@ -95,7 +96,7 @@ class ButtonPressRequestTest
ON_CALL(app_mngr_, hmi_capabilities())
.WillByDefault(ReturnRef(mock_hmi_capabilities_));
ON_CALL(mock_hmi_capabilities_, rc_capability())
- .WillByDefault(Return(&rc_capabilities_));
+ .WillByDefault(Return(rc_capabilities_));
ON_CALL(*mock_app_, policy_app_id()).WillByDefault(Return(kPolicyAppId));
ON_CALL(mock_policy_handler_,
CheckHMIType(kPolicyAppId,
@@ -140,7 +141,7 @@ class ButtonPressRequestTest
}
protected:
- smart_objects::SmartObject rc_capabilities_;
+ smart_objects::SmartObjectSPtr rc_capabilities_;
std::shared_ptr<MockApplication> mock_app_;
std::shared_ptr<rc_rpc_plugin::RCAppExtension> rc_app_extention_;
test::components::policy_test::MockPolicyHandlerInterface
diff --git a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/get_interior_vehicle_data_request_test.cc b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/get_interior_vehicle_data_request_test.cc
index 532a62df3b..82b71f1be4 100644
--- a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/get_interior_vehicle_data_request_test.cc
+++ b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/get_interior_vehicle_data_request_test.cc
@@ -96,7 +96,8 @@ class GetInteriorVehicleDataRequestTest
, rc_app_extention2_(std::make_shared<RCAppExtension>(kModuleId))
, apps_lock_(std::make_shared<sync_primitives::Lock>())
, apps_da_(apps_, apps_lock_)
- , rc_capabilities_(smart_objects::SmartType::SmartType_Array) {
+ , rc_capabilities_(std::make_shared<smart_objects::SmartObject>(
+ smart_objects::SmartType::SmartType_Array)) {
ON_CALL(*mock_app_, app_id()).WillByDefault(Return(kAppId));
ON_CALL(*mock_app2_, app_id()).WillByDefault(Return(kAppId2));
ON_CALL(*mock_app_, is_remote_control_supported())
@@ -131,7 +132,7 @@ class GetInteriorVehicleDataRequestTest
frequency.first = max_request_in_time_frame;
frequency.second = time_frame_of_allowed_requests;
smart_objects::SmartObject control_caps((smart_objects::SmartType_Array));
- rc_capabilities_[strings::kradioControlCapabilities] = control_caps;
+ (*rc_capabilities_)[strings::kradioControlCapabilities] = control_caps;
ON_CALL(app_mngr_, get_settings())
.WillByDefault(ReturnRef(app_mngr_settings_));
ON_CALL(app_mngr_settings_, get_interior_vehicle_data_frequency())
@@ -151,7 +152,7 @@ class GetInteriorVehicleDataRequestTest
ON_CALL(app_mngr_, hmi_capabilities())
.WillByDefault(ReturnRef(mock_hmi_capabilities_));
ON_CALL(mock_hmi_capabilities_, rc_capability())
- .WillByDefault(Return(&rc_capabilities_));
+ .WillByDefault(Return(rc_capabilities_));
ON_CALL(mock_policy_handler_,
CheckHMIType(
_, mobile_apis::AppHMIType::eType::REMOTE_CONTROL, nullptr))
@@ -195,7 +196,7 @@ class GetInteriorVehicleDataRequestTest
DataAccessor<application_manager::ApplicationSet> apps_da_;
testing::NiceMock<rc_rpc_plugin_test::MockRCCapabilitiesManager>
mock_rc_capabilities_manager_;
- smart_objects::SmartObject rc_capabilities_;
+ smart_objects::SmartObjectSPtr rc_capabilities_;
testing::NiceMock<MockRCConsentManager> mock_rc_consent_manger_;
};
diff --git a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/rc_get_interior_vehicle_data_consent_test.cc b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/rc_get_interior_vehicle_data_consent_test.cc
index 55be43f37b..e5f96215eb 100644
--- a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/rc_get_interior_vehicle_data_consent_test.cc
+++ b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/rc_get_interior_vehicle_data_consent_test.cc
@@ -106,7 +106,8 @@ class RCGetInteriorVehicleDataConsentTest
RCGetInteriorVehicleDataConsentTest()
: mock_app_(std::make_shared<NiceMock<MockApplication> >())
, command_holder(app_mngr_)
- , rc_capabilities_(smart_objects::SmartType::SmartType_Array)
+ , rc_capabilities_(std::make_shared<smart_objects::SmartObject>(
+ smart_objects::SmartType::SmartType_Array))
, request_controller(mock_request_controler)
, rpc_protection_manager_(
std::make_shared<application_manager::MockRPCProtectionManager>())
@@ -124,7 +125,7 @@ class RCGetInteriorVehicleDataConsentTest
, rpc_plugin(mock_rpc_plugin)
, optional_mock_rpc_plugin(mock_rpc_plugin) {
smart_objects::SmartObject control_caps((smart_objects::SmartType_Array));
- rc_capabilities_[strings::kradioControlCapabilities] = control_caps;
+ (*rc_capabilities_)[strings::kradioControlCapabilities] = control_caps;
ON_CALL(*mock_app_, app_id()).WillByDefault(Return(kAppId));
ON_CALL(app_mngr_, hmi_interfaces())
.WillByDefault(ReturnRef(mock_hmi_interfaces_));
@@ -143,7 +144,7 @@ class RCGetInteriorVehicleDataConsentTest
ON_CALL(app_mngr_, hmi_capabilities())
.WillByDefault(ReturnRef(mock_hmi_capabilities_));
ON_CALL(mock_hmi_capabilities_, rc_capability())
- .WillByDefault(Return(&rc_capabilities_));
+ .WillByDefault(Return(rc_capabilities_));
ON_CALL(mock_policy_handler_,
CheckHMIType(
_, mobile_apis::AppHMIType::eType::REMOTE_CONTROL, nullptr))
@@ -209,7 +210,7 @@ class RCGetInteriorVehicleDataConsentTest
mock_interior_data_cache_;
testing::NiceMock<rc_rpc_plugin_test::MockInteriorDataManager>
mock_interior_data_manager_;
- smart_objects::SmartObject rc_capabilities_;
+ smart_objects::SmartObjectSPtr rc_capabilities_;
MockRPCPlugin mock_rpc_plugin;
MockCommandFactory mock_command_factory;
am::request_controller::RequestController request_controller;
diff --git a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/release_interior_vehicle_data_module_request_test.cc b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/release_interior_vehicle_data_module_request_test.cc
index 200e458c17..84b298cea2 100644
--- a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/release_interior_vehicle_data_module_request_test.cc
+++ b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/release_interior_vehicle_data_module_request_test.cc
@@ -84,12 +84,19 @@ using namespace rc_rpc_plugin;
class ReleaseInteriorVehicleDataModuleRequestTest
: public CommandRequestTest<CommandsTestMocks::kIsNice> {
public:
- ReleaseInteriorVehicleDataModuleRequestTest() : mock_app_(CreateMockApp()) {}
+ ReleaseInteriorVehicleDataModuleRequestTest()
+ : mock_app_(CreateMockApp())
+ , rc_capabilities_(std::make_shared<smart_objects::SmartObject>(
+ smart_objects::SmartType::SmartType_Array)) {}
void SetUp() OVERRIDE {
TestPreCondition();
ON_CALL(app_mngr_, application(kAppID)).WillByDefault(Return(mock_app_));
ON_CALL(*mock_app_, app_id()).WillByDefault(Return(kAppID));
+ ON_CALL(mock_hmi_capabilities_, rc_capability())
+ .WillByDefault(Return(rc_capabilities_));
+ ON_CALL(mock_rc_capabilities_manager_, CheckIfModuleExistsInCapabilities(_))
+ .WillByDefault(Return(true));
ON_CALL(mock_rc_capabilities_manager_,
GetDefaultModuleIdFromCapabilities(kModuleType))
.WillByDefault(Return(kDefaultModuleID));
@@ -143,6 +150,7 @@ class ReleaseInteriorVehicleDataModuleRequestTest
MockInteriorDataManager mock_interior_data_manager_;
NiceMock<MockRCCapabilitiesManager> mock_rc_capabilities_manager_;
MockRCConsentManager mock_rc_consent_manger_;
+ smart_objects::SmartObjectSPtr rc_capabilities_;
};
TEST_F(ReleaseInteriorVehicleDataModuleRequestTest,
diff --git a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/set_interior_vehicle_data_request_test.cc b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/set_interior_vehicle_data_request_test.cc
index 5a822a2fe4..170f7402d7 100644
--- a/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/set_interior_vehicle_data_request_test.cc
+++ b/src/components/application_manager/rpc_plugins/rc_rpc_plugin/test/commands/set_interior_vehicle_data_request_test.cc
@@ -74,11 +74,12 @@ class SetInteriorVehicleDataRequestTest
SetInteriorVehicleDataRequestTest()
: mock_app_(std::make_shared<NiceMock<MockApplication> >())
, rc_app_extention_(std::make_shared<RCAppExtension>(kModuleId))
- , rc_capabilities_(smart_objects::SmartType::SmartType_Array) {}
+ , rc_capabilities_(std::make_shared<smart_objects::SmartObject>(
+ smart_objects::SmartType::SmartType_Array)) {}
void SetUp() OVERRIDE {
smart_objects::SmartObject control_caps((smart_objects::SmartType_Array));
- rc_capabilities_[strings::kradioControlCapabilities] = control_caps;
+ (*rc_capabilities_)[strings::kradioControlCapabilities] = control_caps;
ON_CALL(app_mngr_, hmi_interfaces())
.WillByDefault(ReturnRef(mock_hmi_interfaces_));
ON_CALL(
@@ -102,7 +103,7 @@ class SetInteriorVehicleDataRequestTest
nullptr))
.WillByDefault(Return(true));
ON_CALL(mock_hmi_capabilities_, rc_capability())
- .WillByDefault(Return(&rc_capabilities_));
+ .WillByDefault(Return(rc_capabilities_));
ON_CALL(mock_allocation_manager_, is_rc_enabled())
.WillByDefault(Return(true));
ON_CALL(mock_rc_capabilities_manager_, CheckIfModuleExistsInCapabilities(_))
@@ -149,7 +150,7 @@ class SetInteriorVehicleDataRequestTest
std::shared_ptr<RCAppExtension> rc_app_extention_;
testing::NiceMock<rc_rpc_plugin_test::MockRCCapabilitiesManager>
mock_rc_capabilities_manager_;
- smart_objects::SmartObject rc_capabilities_;
+ smart_objects::SmartObjectSPtr rc_capabilities_;
testing::NiceMock<MockRCConsentManager> mock_rc_consent_manger_;
};
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/change_registration_request.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/change_registration_request.cc
index 50217a9c8a..a177cf0a80 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/change_registration_request.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/change_registration_request.cc
@@ -460,8 +460,7 @@ bool ChangeRegistrationRequest::PrepareResponseParameters(
bool ChangeRegistrationRequest::IsLanguageSupportedByUI(
const int32_t& hmi_display_lang) {
const HMICapabilities& hmi_capabilities = hmi_capabilities_;
- const smart_objects::SmartObject* ui_languages =
- hmi_capabilities.ui_supported_languages();
+ const auto ui_languages = hmi_capabilities.ui_supported_languages();
if (!ui_languages) {
LOG4CXX_ERROR(logger_, "NULL pointer");
@@ -482,8 +481,7 @@ bool ChangeRegistrationRequest::IsLanguageSupportedByUI(
bool ChangeRegistrationRequest::IsLanguageSupportedByVR(
const int32_t& hmi_display_lang) {
const HMICapabilities& hmi_capabilities = hmi_capabilities_;
- const smart_objects::SmartObject* vr_languages =
- hmi_capabilities.vr_supported_languages();
+ const auto vr_languages = hmi_capabilities.vr_supported_languages();
if (!vr_languages) {
LOG4CXX_ERROR(logger_, "NULL pointer");
@@ -504,8 +502,7 @@ bool ChangeRegistrationRequest::IsLanguageSupportedByVR(
bool ChangeRegistrationRequest::IsLanguageSupportedByTTS(
const int32_t& hmi_display_lang) {
const HMICapabilities& hmi_capabilities = hmi_capabilities_;
- const smart_objects::SmartObject* tts_languages =
- hmi_capabilities.tts_supported_languages();
+ const auto tts_languages = hmi_capabilities.tts_supported_languages();
if (!tts_languages) {
LOG4CXX_ERROR(logger_, "NULL pointer");
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/change_registration_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/change_registration_test.cc
index 4394c6fe5e..9736bb380b 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/change_registration_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/change_registration_test.cc
@@ -103,11 +103,11 @@ class ChangeRegistrationRequestTest
(*supported_languages_)[0] =
static_cast<int32_t>(mobile_apis::Language::EN_US);
EXPECT_CALL(mock_hmi_capabilities_, ui_supported_languages())
- .WillOnce(Return(supported_languages_.get()));
+ .WillOnce(Return(supported_languages_));
EXPECT_CALL(mock_hmi_capabilities_, vr_supported_languages())
- .WillOnce(Return(supported_languages_.get()));
+ .WillOnce(Return(supported_languages_));
EXPECT_CALL(mock_hmi_capabilities_, tts_supported_languages())
- .WillOnce(Return(supported_languages_.get()));
+ .WillOnce(Return(supported_languages_));
EXPECT_CALL(app_mngr_, hmi_interfaces())
.WillRepeatedly(ReturnRef(mock_hmi_interfaces_));
@@ -242,11 +242,11 @@ class ChangeRegistrationRequestTest
void ExpectationsHmiCapabilities(
smart_objects::SmartObjectSPtr supported_languages) {
EXPECT_CALL(mock_hmi_capabilities_, ui_supported_languages())
- .WillOnce(Return(supported_languages.get()));
+ .WillOnce(Return(supported_languages));
EXPECT_CALL(mock_hmi_capabilities_, vr_supported_languages())
- .WillOnce(Return(supported_languages.get()));
+ .WillOnce(Return(supported_languages));
EXPECT_CALL(mock_hmi_capabilities_, tts_supported_languages())
- .WillOnce(Return(supported_languages.get()));
+ .WillOnce(Return(supported_languages));
}
void ResultCommandExpectations(MessageSharedPtr msg,
@@ -381,11 +381,11 @@ TEST_F(ChangeRegistrationRequestTest,
(*supported_languages_)[0] =
static_cast<int32_t>(mobile_apis::Language::EN_US);
EXPECT_CALL(mock_hmi_capabilities_, ui_supported_languages())
- .WillOnce(Return(supported_languages_.get()));
+ .WillOnce(Return(supported_languages_));
EXPECT_CALL(mock_hmi_capabilities_, vr_supported_languages())
- .WillOnce(Return(supported_languages_.get()));
+ .WillOnce(Return(supported_languages_));
EXPECT_CALL(mock_hmi_capabilities_, tts_supported_languages())
- .WillOnce(Return(supported_languages_.get()));
+ .WillOnce(Return(supported_languages_));
EXPECT_CALL(app_mngr_, hmi_interfaces())
.WillRepeatedly(ReturnRef(mock_hmi_interfaces_));
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/register_app_interface_request_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/register_app_interface_request_test.cc
index 6376570106..a42aa61400 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/register_app_interface_request_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/register_app_interface_request_test.cc
@@ -201,6 +201,8 @@ class RegisterAppInterfaceRequestTest
.WillByDefault(Return(smart_objects::SmartObjectSPtr()));
ON_CALL(mock_hmi_capabilities_, pcm_stream_capabilities())
.WillByDefault(Return(smart_objects::SmartObjectSPtr()));
+ ON_CALL(mock_hmi_capabilities_, seat_location_capability())
+ .WillByDefault(Return(smart_objects::SmartObjectSPtr()));
ON_CALL(app_mngr_settings_, supported_diag_modes())
.WillByDefault(ReturnRef(kDummyDiagModes));
ON_CALL(mock_policy_handler_, GetAppRequestTypes(_, _))
diff --git a/src/components/application_manager/src/hmi_capabilities_impl.cc b/src/components/application_manager/src/hmi_capabilities_impl.cc
index 6a0fbf78e3..d0e9f5a917 100644
--- a/src/components/application_manager/src/hmi_capabilities_impl.cc
+++ b/src/components/application_manager/src/hmi_capabilities_impl.cc
@@ -463,15 +463,7 @@ HMICapabilitiesImpl::HMICapabilitiesImpl(ApplicationManager& app_mngr)
}
}
-HMICapabilitiesImpl::~HMICapabilitiesImpl() {
- delete ui_supported_languages_;
- delete tts_supported_languages_;
- delete vr_supported_languages_;
- delete navigation_capability_;
- delete phone_capability_;
- delete video_streaming_capability_;
- delete rc_capability_;
-}
+HMICapabilitiesImpl::~HMICapabilitiesImpl() {}
bool HMICapabilitiesImpl::VerifyImageType(const int32_t image_type) const {
auto capabilities = display_capabilities();
@@ -567,27 +559,23 @@ HMICapabilitiesImpl::active_tts_language() const {
void HMICapabilitiesImpl::set_ui_supported_languages(
const smart_objects::SmartObject& supported_languages) {
- if (ui_supported_languages_) {
- delete ui_supported_languages_;
- }
- ui_supported_languages_ = new smart_objects::SmartObject(supported_languages);
+ smart_objects::SmartObjectSPtr new_value =
+ std::make_shared<smart_objects::SmartObject>(supported_languages);
+ ui_supported_languages_.swap(new_value);
}
void HMICapabilitiesImpl::set_tts_supported_languages(
const smart_objects::SmartObject& supported_languages) {
- if (tts_supported_languages_) {
- delete tts_supported_languages_;
- }
- tts_supported_languages_ =
- new smart_objects::SmartObject(supported_languages);
+ smart_objects::SmartObjectSPtr new_value =
+ std::make_shared<smart_objects::SmartObject>(supported_languages);
+ tts_supported_languages_.swap(new_value);
}
void HMICapabilitiesImpl::set_vr_supported_languages(
const smart_objects::SmartObject& supported_languages) {
- if (vr_supported_languages_) {
- delete vr_supported_languages_;
- }
- vr_supported_languages_ = new smart_objects::SmartObject(supported_languages);
+ smart_objects::SmartObjectSPtr new_value =
+ std::make_shared<smart_objects::SmartObject>(supported_languages);
+ vr_supported_languages_.swap(new_value);
}
void HMICapabilitiesImpl::set_display_capabilities(
@@ -695,45 +683,37 @@ void HMICapabilitiesImpl::set_rc_supported(const bool supported) {
void HMICapabilitiesImpl::set_navigation_capability(
const smart_objects::SmartObject& navigation_capability) {
- if (navigation_capability_) {
- delete navigation_capability_;
- }
- navigation_capability_ =
- new smart_objects::SmartObject(navigation_capability);
+ smart_objects::SmartObjectSPtr new_value =
+ std::make_shared<smart_objects::SmartObject>(navigation_capability);
+ navigation_capability_.swap(new_value);
}
void HMICapabilitiesImpl::set_phone_capability(
const smart_objects::SmartObject& phone_capability) {
- if (phone_capability_) {
- delete phone_capability_;
- }
- phone_capability_ = new smart_objects::SmartObject(phone_capability);
+ smart_objects::SmartObjectSPtr new_value =
+ std::make_shared<smart_objects::SmartObject>(phone_capability);
+ phone_capability_.swap(new_value);
}
void HMICapabilitiesImpl::set_video_streaming_capability(
const smart_objects::SmartObject& video_streaming_capability) {
- if (video_streaming_capability_) {
- delete video_streaming_capability_;
- }
- video_streaming_capability_ =
- new smart_objects::SmartObject(video_streaming_capability);
+ smart_objects::SmartObjectSPtr new_value =
+ std::make_shared<smart_objects::SmartObject>(video_streaming_capability);
+ video_streaming_capability_.swap(new_value);
}
void HMICapabilitiesImpl::set_rc_capability(
const smart_objects::SmartObject& rc_capability) {
- if (rc_capability_) {
- delete rc_capability_;
- }
- rc_capability_ = new smart_objects::SmartObject(rc_capability);
+ smart_objects::SmartObjectSPtr new_value =
+ std::make_shared<smart_objects::SmartObject>(rc_capability);
+ rc_capability_.swap(new_value);
}
void HMICapabilitiesImpl::set_seat_location_capability(
const smart_objects::SmartObject& seat_location_capability) {
- if (seat_location_capability_) {
- delete seat_location_capability_;
- }
- seat_location_capability_ =
- new smart_objects::SmartObject(seat_location_capability);
+ smart_objects::SmartObjectSPtr new_value =
+ std::make_shared<smart_objects::SmartObject>(seat_location_capability);
+ seat_location_capability_.swap(new_value);
}
void HMICapabilitiesImpl::Init(
@@ -774,18 +754,18 @@ bool HMICapabilitiesImpl::is_rc_cooperating() const {
return is_rc_cooperating_;
}
-const smart_objects::SmartObject* HMICapabilitiesImpl::ui_supported_languages()
- const {
+const smart_objects::SmartObjectSPtr
+HMICapabilitiesImpl::ui_supported_languages() const {
return ui_supported_languages_;
}
-const smart_objects::SmartObject* HMICapabilitiesImpl::vr_supported_languages()
- const {
+const smart_objects::SmartObjectSPtr
+HMICapabilitiesImpl::vr_supported_languages() const {
return vr_supported_languages_;
}
-const smart_objects::SmartObject* HMICapabilitiesImpl::tts_supported_languages()
- const {
+const smart_objects::SmartObjectSPtr
+HMICapabilitiesImpl::tts_supported_languages() const {
return tts_supported_languages_;
}
@@ -868,26 +848,27 @@ bool HMICapabilitiesImpl::rc_supported() const {
return is_rc_supported_;
}
-const smart_objects::SmartObject* HMICapabilitiesImpl::navigation_capability()
- const {
+const smart_objects::SmartObjectSPtr
+HMICapabilitiesImpl::navigation_capability() const {
return navigation_capability_;
}
-const smart_objects::SmartObject* HMICapabilitiesImpl::phone_capability()
+const smart_objects::SmartObjectSPtr HMICapabilitiesImpl::phone_capability()
const {
return phone_capability_;
}
-const smart_objects::SmartObject*
+const smart_objects::SmartObjectSPtr
HMICapabilitiesImpl::video_streaming_capability() const {
return video_streaming_capability_;
}
-const smart_objects::SmartObject* HMICapabilitiesImpl::rc_capability() const {
+const smart_objects::SmartObjectSPtr HMICapabilitiesImpl::rc_capability()
+ const {
return rc_capability_;
}
-const smart_objects::SmartObject*
+const smart_objects::SmartObjectSPtr
HMICapabilitiesImpl::seat_location_capability() const {
return seat_location_capability_;
}
diff --git a/src/components/application_manager/test/include/application_manager/mock_hmi_capabilities.h b/src/components/application_manager/test/include/application_manager/mock_hmi_capabilities.h
index 7c163d78ad..762552e8f4 100644
--- a/src/components/application_manager/test/include/application_manager/mock_hmi_capabilities.h
+++ b/src/components/application_manager/test/include/application_manager/mock_hmi_capabilities.h
@@ -75,7 +75,7 @@ class MockHMICapabilities : public ::application_manager::HMICapabilities {
void(const hmi_apis::Common_Language::eType language));
MOCK_CONST_METHOD0(ui_supported_languages,
- const smart_objects::SmartObject*());
+ const smart_objects::SmartObjectSPtr());
MOCK_METHOD1(set_ui_supported_languages,
void(const smart_objects::SmartObject& supported_languages));
@@ -85,7 +85,7 @@ class MockHMICapabilities : public ::application_manager::HMICapabilities {
void(const hmi_apis::Common_Language::eType language));
MOCK_CONST_METHOD0(vr_supported_languages,
- const smart_objects::SmartObject*());
+ const smart_objects::SmartObjectSPtr());
MOCK_METHOD1(set_vr_supported_languages,
void(const smart_objects::SmartObject& supported_languages));
@@ -95,7 +95,7 @@ class MockHMICapabilities : public ::application_manager::HMICapabilities {
void(const hmi_apis::Common_Language::eType language));
MOCK_CONST_METHOD0(tts_supported_languages,
- const smart_objects::SmartObject*());
+ const smart_objects::SmartObjectSPtr());
MOCK_METHOD1(set_tts_supported_languages,
void(const smart_objects::SmartObject& supported_languages));
@@ -173,25 +173,25 @@ class MockHMICapabilities : public ::application_manager::HMICapabilities {
MOCK_METHOD1(set_rc_supported, void(const bool supported));
MOCK_CONST_METHOD0(navigation_capability,
- const smart_objects::SmartObject*());
+ const smart_objects::SmartObjectSPtr());
MOCK_METHOD1(set_navigation_capability,
void(const smart_objects::SmartObject& navigation_capability));
- MOCK_CONST_METHOD0(phone_capability, const smart_objects::SmartObject*());
+ MOCK_CONST_METHOD0(phone_capability, const smart_objects::SmartObjectSPtr());
MOCK_METHOD1(set_phone_capability,
void(const smart_objects::SmartObject& phone_capability));
MOCK_CONST_METHOD0(video_streaming_capability,
- const smart_objects::SmartObject*());
+ const smart_objects::SmartObjectSPtr());
MOCK_METHOD1(
set_video_streaming_capability,
void(const smart_objects::SmartObject& video_streaming_capability));
- MOCK_CONST_METHOD0(rc_capability, const smart_objects::SmartObject*());
+ MOCK_CONST_METHOD0(rc_capability, const smart_objects::SmartObjectSPtr());
MOCK_METHOD1(set_rc_capability,
void(const smart_objects::SmartObject& rc_capability));
MOCK_CONST_METHOD0(seat_location_capability,
- const smart_objects::SmartObject*());
+ const smart_objects::SmartObjectSPtr());
MOCK_METHOD1(
set_seat_location_capability,
void(const smart_objects::SmartObject& seat_location_capability));
diff --git a/src/components/include/application_manager/hmi_capabilities.h b/src/components/include/application_manager/hmi_capabilities.h
index e10295b56f..00ff67aa11 100644
--- a/src/components/include/application_manager/hmi_capabilities.h
+++ b/src/components/include/application_manager/hmi_capabilities.h
@@ -140,7 +140,8 @@ class HMICapabilities {
*
* @return Currently supported UI languages
*/
- virtual const smart_objects::SmartObject* ui_supported_languages() const = 0;
+ virtual const smart_objects::SmartObjectSPtr ui_supported_languages()
+ const = 0;
/*
* @brief Sets supported UI languages
@@ -170,7 +171,8 @@ class HMICapabilities {
*
* @return Currently supported VR languages
*/
- virtual const smart_objects::SmartObject* vr_supported_languages() const = 0;
+ virtual const smart_objects::SmartObjectSPtr vr_supported_languages()
+ const = 0;
/*
* @brief Sets supported VR languages
@@ -201,7 +203,8 @@ class HMICapabilities {
*
* @return Currently supported TTS languages
*/
- virtual const smart_objects::SmartObject* tts_supported_languages() const = 0;
+ virtual const smart_objects::SmartObjectSPtr tts_supported_languages()
+ const = 0;
/*
* @brief Sets supported TTS languages
@@ -468,7 +471,8 @@ class HMICapabilities {
*
* @return NAVIGATION system capability
*/
- virtual const smart_objects::SmartObject* navigation_capability() const = 0;
+ virtual const smart_objects::SmartObjectSPtr navigation_capability()
+ const = 0;
/*
* @brief Interface used to store information regarding
@@ -485,7 +489,7 @@ class HMICapabilities {
*
* @return PHONE_CALL system capability
*/
- virtual const smart_objects::SmartObject* phone_capability() const = 0;
+ virtual const smart_objects::SmartObjectSPtr phone_capability() const = 0;
/*
* @brief Sets HMI's video streaming related capability information
@@ -500,7 +504,7 @@ class HMICapabilities {
*
* @return HMI's video streaming related capability information
*/
- virtual const smart_objects::SmartObject* video_streaming_capability()
+ virtual const smart_objects::SmartObjectSPtr video_streaming_capability()
const = 0;
/**
@@ -510,7 +514,7 @@ class HMICapabilities {
virtual void set_rc_capability(
const smart_objects::SmartObject& rc_capability) = 0;
- virtual const smart_objects::SmartObject* rc_capability() const = 0;
+ virtual const smart_objects::SmartObjectSPtr rc_capability() const = 0;
/**
* @brief Sets available SeatLocation capabilities for further usage by
@@ -525,7 +529,7 @@ class HMICapabilities {
* seat location capability
* @return smart object of seat location capability
*/
- virtual const smart_objects::SmartObject* seat_location_capability()
+ virtual const smart_objects::SmartObjectSPtr seat_location_capability()
const = 0;
DEPRECATED