diff options
author | jacobkeeler <jacob.keeler@livioradio.com> | 2019-04-30 14:48:02 -0400 |
---|---|---|
committer | jacobkeeler <jacob.keeler@livioradio.com> | 2019-04-30 14:48:02 -0400 |
commit | 92a773c828bdde9aeaede217cc442a37d7f516ac (patch) | |
tree | 854b97f8efa225fb5576e9eca53f6393f7e68d24 | |
parent | 945d9a4e06bf74f257898671c9b63598d8b0a3bf (diff) | |
parent | 194ccbc933b1fa9893700b3db97aa184d68636dc (diff) | |
download | sdl_core-92a773c828bdde9aeaede217cc442a37d7f516ac.tar.gz |
Merge remote-tracking branch 'origin/release/5.1.1' into feature/update_style_scriptfeature/update_style_script
# Conflicts:
# src/components/transport_manager/src/transport_manager_impl.cc
13 files changed, 68 insertions, 10 deletions
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/on_exit_application_notification.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/on_exit_application_notification.cc index a2e6836857..11647e2140 100644 --- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/on_exit_application_notification.cc +++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/on_exit_application_notification.cc @@ -106,10 +106,13 @@ void OnExitApplicationNotification::Run() { application_manager_.UnregisterApplication(app_id, Result::SUCCESS); return; } +#if defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) case Common_ApplicationExitReason::CLOSE_CLOUD_CONNECTION: { application_manager_.DisconnectCloudApp(app_impl); break; } +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT + default: { LOG4CXX_WARN(logger_, "Unhandled reason"); return; diff --git a/src/components/application_manager/src/application_impl.cc b/src/components/application_manager/src/application_impl.cc index cecd9865cf..3b2f51f26c 100644 --- a/src/components/application_manager/src/application_impl.cc +++ b/src/components/application_manager/src/application_impl.cc @@ -1186,7 +1186,11 @@ const std::string& ApplicationImpl::cloud_app_certificate() const { } bool ApplicationImpl::is_cloud_app() const { +#if !defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) + return false; +#else return !endpoint_.empty(); +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT } void ApplicationImpl::set_cloud_app_endpoint(const std::string& endpoint) { diff --git a/src/components/application_manager/src/application_manager_impl.cc b/src/components/application_manager/src/application_manager_impl.cc index d04b08f9f4..3a92009d4f 100644 --- a/src/components/application_manager/src/application_manager_impl.cc +++ b/src/components/application_manager/src/application_manager_impl.cc @@ -894,6 +894,10 @@ void ApplicationManagerImpl::SetIconFileFromSystemRequest( } void ApplicationManagerImpl::DisconnectCloudApp(ApplicationSharedPtr app) { +#if !defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) + LOG4CXX_TRACE(logger_, "Cloud app support is disabled. Exiting function"); + return; +#else std::string endpoint; std::string certificate; std::string auth_token; @@ -931,9 +935,14 @@ void ApplicationManagerImpl::DisconnectCloudApp(ApplicationSharedPtr app) { // Create device in pending state LOG4CXX_DEBUG(logger_, "Re-adding the cloud app device"); connection_handler().AddCloudAppDevice(policy_app_id, properties); +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT } void ApplicationManagerImpl::RefreshCloudAppInformation() { +#if !defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) + LOG4CXX_TRACE(logger_, "Cloud app support is disabled. Exiting function"); + return; +#else LOG4CXX_AUTO_TRACE(logger_); if (is_stopping()) { return; @@ -1084,6 +1093,7 @@ void ApplicationManagerImpl::RefreshCloudAppInformation() { LOG4CXX_DEBUG(logger_, "Removed " << removed_app_count << " disabled apps"); SendUpdateAppList(); } +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT } void ApplicationManagerImpl::CreatePendingApplication( @@ -1218,6 +1228,9 @@ void ApplicationManagerImpl::OnConnectionStatusUpdated() { hmi_apis::Common_CloudConnectionStatus::eType ApplicationManagerImpl::GetCloudAppConnectionStatus( ApplicationConstSharedPtr app) const { +#if !defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) + return hmi_apis::Common_CloudConnectionStatus::INVALID_ENUM; +#else transport_manager::ConnectionStatus status = connection_handler().GetConnectionStatus(app->device()); switch (status) { @@ -1231,6 +1244,7 @@ ApplicationManagerImpl::GetCloudAppConnectionStatus( default: return hmi_apis::Common_CloudConnectionStatus::INVALID_ENUM; } +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT } uint32_t ApplicationManagerImpl::GetNextMobileCorrelationID() { diff --git a/src/components/application_manager/test/application_manager_impl_test.cc b/src/components/application_manager/test/application_manager_impl_test.cc index 12ca199862..3405006859 100644 --- a/src/components/application_manager/test/application_manager_impl_test.cc +++ b/src/components/application_manager/test/application_manager_impl_test.cc @@ -103,6 +103,7 @@ const std::string kAppId = "someID"; const uint32_t kConnectionKey = 1232u; const std::string kAppName = "appName"; +#if defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) // Cloud application params const std::string kEndpoint = "endpoint"; const std::string kEndpoint2 = "https://fakesdlcloudapptesting.com:8080"; @@ -113,6 +114,7 @@ const mobile_api::HybridAppPreference::eType kHybridAppPreference = mobile_api::HybridAppPreference::CLOUD; const std::string kHybridAppPreferenceStr = "CLOUD"; const bool kEnabled = true; +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT } // namespace class ApplicationManagerImplTest : public ::testing::Test { @@ -225,8 +227,9 @@ class ApplicationManagerImplTest : public ::testing::Test { connection_handler::DeviceHandle secondary_device_handle, std::string secondary_transport_device_string); +#if defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) void AddCloudAppToPendingDeviceMap(); - +#endif uint32_t app_id_; NiceMock<policy_test::MockPolicySettings> mock_policy_settings_; std::shared_ptr<NiceMock<resumption_test::MockResumptionData> > mock_storage_; @@ -1449,6 +1452,7 @@ TEST_F(ApplicationManagerImplTest, EXPECT_TRUE(file_system::RemoveDirectory(kDirectoryName, true)); } +#if defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) void ApplicationManagerImplTest::AddCloudAppToPendingDeviceMap() { app_manager_impl_->SetMockPolicyHandler(mock_policy_handler_); std::vector<std::string> enabled_apps{"1234"}; @@ -1662,7 +1666,7 @@ TEST_F(ApplicationManagerImplTest, app_manager_impl_->RegisterApplication(request_for_registration_ptr); EXPECT_EQ(0, application.use_count()); } - +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT } // namespace application_manager_test } // namespace components } // namespace test diff --git a/src/components/policy/policy_external/src/cache_manager.cc b/src/components/policy/policy_external/src/cache_manager.cc index 1eb103be26..bd38f7bf8f 100644 --- a/src/components/policy/policy_external/src/cache_manager.cc +++ b/src/components/policy/policy_external/src/cache_manager.cc @@ -1391,6 +1391,10 @@ const policy::VehicleInfo CacheManager::GetVehicleInfo() const { void CacheManager::GetEnabledCloudApps( std::vector<std::string>& enabled_apps) const { +#if !defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) + enabled_apps.clear(); + return; +#else const policy_table::ApplicationPolicies& policies = pt_->policy_table.app_policies_section.apps; for (policy_table::ApplicationPolicies::const_iterator it = policies.begin(); @@ -1401,6 +1405,7 @@ void CacheManager::GetEnabledCloudApps( enabled_apps.push_back((*it).first); } } +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT } bool CacheManager::GetCloudAppParameters( diff --git a/src/components/policy/policy_regular/src/cache_manager.cc b/src/components/policy/policy_regular/src/cache_manager.cc index ef4937e336..94ce52b6f1 100644 --- a/src/components/policy/policy_regular/src/cache_manager.cc +++ b/src/components/policy/policy_regular/src/cache_manager.cc @@ -684,6 +684,10 @@ const policy::VehicleInfo CacheManager::GetVehicleInfo() const { void CacheManager::GetEnabledCloudApps( std::vector<std::string>& enabled_apps) const { +#if !defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) + enabled_apps.clear(); + return; +#else const policy_table::ApplicationPolicies& policies = pt_->policy_table.app_policies_section.apps; for (policy_table::ApplicationPolicies::const_iterator it = policies.begin(); @@ -694,6 +698,7 @@ void CacheManager::GetEnabledCloudApps( enabled_apps.push_back((*it).first); } } +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT } bool CacheManager::GetCloudAppParameters( diff --git a/src/components/transport_manager/CMakeLists.txt b/src/components/transport_manager/CMakeLists.txt index f1edb6e298..11986ee9fa 100644 --- a/src/components/transport_manager/CMakeLists.txt +++ b/src/components/transport_manager/CMakeLists.txt @@ -76,17 +76,22 @@ endif() if(BUILD_CLOUD_APP_SUPPORT) GET_PROPERTY(BOOST_LIBS_DIRECTORY GLOBAL PROPERTY GLOBAL_BOOST_LIBS) list(APPEND LIBRARIES boost_system boost_regex -L${BOOST_LIBS_DIRECTORY}) +else() + list(APPEND EXCLUDE_PATHS + ${CMAKE_CURRENT_SOURCE_DIR}/include/transport_manager/cloud + ${CMAKE_CURRENT_SOURCE_DIR}/src/cloud + ) endif() if(BUILD_USB_SUPPORT) if (CMAKE_SYSTEM_NAME STREQUAL "Linux") - set(EXCLUDE_PATHS + list(APPEND EXCLUDE_PATHS ${COMPONENTS_DIR}/transport_manager/include/transport_manager/usb/qnx ${COMPONENTS_DIR}/transport_manager/src/usb/qnx ) elseif(CMAKE_SYSTEM_NAME STREQUAL "QNX") - set(EXCLUDE_PATHS + list(APPEND EXCLUDE_PATHS ${COMPONENTS_DIR}/transport_manager/include/transport_manager/usb/libusb ${COMPONENTS_DIR}/transport_manager/src/usb/libusb ) diff --git a/src/components/transport_manager/src/cloud/cloud_websocket_transport_adapter.cc b/src/components/transport_manager/src/cloud/cloud_websocket_transport_adapter.cc index c8d9dc3811..e141a65ec0 100644 --- a/src/components/transport_manager/src/cloud/cloud_websocket_transport_adapter.cc +++ b/src/components/transport_manager/src/cloud/cloud_websocket_transport_adapter.cc @@ -87,7 +87,8 @@ void CloudWebsocketTransportAdapter::CreateDevice(const std::string& uid) { // Extract host and port from endpoint string boost::regex group_pattern( "(wss?:\\/\\/)([A-Z\\d\\.-]{2,}\\.?([A-Z]{2,})?)(:)(\\d{2,5})(\\/" - "[A-Z\\d\\.-]+)*\\/?"); + "[A-Z\\d\\.-]+)*\\/?", + boost::regex::icase); boost::smatch results; std::string str = uid; diff --git a/src/components/transport_manager/src/transport_manager_default.cc b/src/components/transport_manager/src/transport_manager_default.cc index 41487b054b..71fc41ada9 100644 --- a/src/components/transport_manager/src/transport_manager_default.cc +++ b/src/components/transport_manager/src/transport_manager_default.cc @@ -46,7 +46,7 @@ #if defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) #include "transport_manager/cloud/cloud_websocket_transport_adapter.h" -#endif +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT #if defined(BUILD_TESTS) #include "transport_manager/iap2_emulation/iap2_transport_adapter.h" @@ -105,7 +105,7 @@ int TransportManagerDefault::Init(resumption::LastState& last_state) { ta_usb = NULL; #endif // USB_SUPPORT -#if defined CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT +#if defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) transport_adapter::TransportAdapterImpl* ta_cloud = new transport_adapter::CloudWebsocketTransportAdapter(last_state, get_settings()); @@ -116,7 +116,7 @@ int TransportManagerDefault::Init(resumption::LastState& last_state) { #endif // TELEMETRY_MONITOR AddTransportAdapter(ta_cloud); ta_cloud = NULL; -#endif +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT #if defined BUILD_TESTS const uint16_t iap2_bt_emu_port = 23456; diff --git a/src/components/transport_manager/src/transport_manager_impl.cc b/src/components/transport_manager/src/transport_manager_impl.cc index 32c572157f..a2bc95bfdd 100644 --- a/src/components/transport_manager/src/transport_manager_impl.cc +++ b/src/components/transport_manager/src/transport_manager_impl.cc @@ -46,7 +46,9 @@ #include "utils/macro.h" #include "config_profile/profile.h" +#if defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) #include "transport_manager/cloud/cloud_websocket_transport_adapter.h" +#endif #include "transport_manager/common.h" #include "transport_manager/transport_adapter/transport_adapter.h" #include "transport_manager/transport_adapter/transport_adapter_event.h" @@ -133,6 +135,9 @@ void TransportManagerImpl::ReconnectionTimeout() { void TransportManagerImpl::AddCloudDevice( const transport_manager::transport_adapter::CloudAppProperties& cloud_properties) { +#if !defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) + LOG4CXX_TRACE(logger_, "Cloud app support is disabled. Exiting function"); +#else transport_adapter::DeviceType type = transport_adapter::DeviceType::UNKNOWN; if (cloud_properties.cloud_transport_type == "WS") { type = transport_adapter::DeviceType::CLOUD_WEBSOCKET; @@ -156,12 +161,17 @@ void TransportManagerImpl::AddCloudDevice( cloud_properties); } } - +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT return; } void TransportManagerImpl::RemoveCloudDevice(const DeviceHandle device_handle) { +#if !defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) + LOG4CXX_TRACE(logger_, "Cloud app support is disabled. Exiting function"); + return; +#else DisconnectDevice(device_handle); +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT } int TransportManagerImpl::ConnectDevice(const DeviceHandle device_handle) { diff --git a/src/components/transport_manager/test/include/transport_manager/tcp/mock_tcp_transport_adapter.h b/src/components/transport_manager/test/include/transport_manager/tcp/mock_tcp_transport_adapter.h index 9a8936e58a..daa9397b7d 100644 --- a/src/components/transport_manager/test/include/transport_manager/tcp/mock_tcp_transport_adapter.h +++ b/src/components/transport_manager/test/include/transport_manager/tcp/mock_tcp_transport_adapter.h @@ -57,7 +57,8 @@ class MockTCPTransportAdapter : public TcpTransportAdapter { const transport_manager::ApplicationHandle& app_handle)); MOCK_CONST_METHOD1( - FindDevice, DeviceSptr(const transport_manager::DeviceUID& device_handle)); + FindDevice, + DeviceSptr(const transport_manager::DeviceUID& device_handle)); MOCK_METHOD2(Connect, TransportAdapter::Error( const transport_manager::DeviceUID& device_handle, diff --git a/src/components/transport_manager/test/transport_adapter_test.cc b/src/components/transport_manager/test/transport_adapter_test.cc index b325449e08..3cef78493d 100644 --- a/src/components/transport_manager/test/transport_adapter_test.cc +++ b/src/components/transport_manager/test/transport_adapter_test.cc @@ -478,6 +478,7 @@ TEST_F(TransportAdapterTest, Disconnect_ConnectDoneSuccess) { EXPECT_CALL(*serverMock, Terminate()); } +#if defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) TEST_F(TransportAdapterTest, FindPending) { MockServerConnectionFactory* serverMock = new MockServerConnectionFactory(); MockTransportAdapterImpl transport_adapter( @@ -608,6 +609,7 @@ TEST_F(TransportAdapterTest, EXPECT_CALL(*serverMock, Terminate()); } +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT TEST_F(TransportAdapterTest, DisconnectDevice_DeviceAddedConnectionCreated) { MockServerConnectionFactory* serverMock = new MockServerConnectionFactory(); diff --git a/src/components/transport_manager/test/transport_manager_impl_test.cc b/src/components/transport_manager/test/transport_manager_impl_test.cc index 3073ff689b..3c3e336d0a 100644 --- a/src/components/transport_manager/test/transport_manager_impl_test.cc +++ b/src/components/transport_manager/test/transport_manager_impl_test.cc @@ -189,6 +189,7 @@ class TransportManagerImplTest : public ::testing::Test { tm_.TestHandle(test_event); } +#if defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) void HandlePending() { TransportAdapterEvent test_event(EventTypeEnum::ON_CONNECT_PENDING, mock_adapter_, @@ -206,6 +207,7 @@ class TransportManagerImplTest : public ::testing::Test { tm_.TestHandle(test_event); } +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT void HandleConnectionFailed() { TransportAdapterEvent test_event(EventTypeEnum::ON_CONNECT_FAIL, @@ -422,6 +424,7 @@ TEST_F(TransportManagerImplTest, DisconnectDevice_DeviceNotConnected) { EXPECT_EQ(E_INVALID_HANDLE, tm_.DisconnectDevice(device_handle_)); } +#if defined(CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT) TEST_F(TransportManagerImplTest, Pending) { // Calling HandlePending twice verifies the connection_id stays the same if // the connection exists. @@ -447,6 +450,7 @@ TEST_F(TransportManagerImplTest, Pending) { tm_.TestHandle(test_event); } +#endif // CLOUD_APP_WEBSOCKET_TRANSPORT_SUPPORT TEST_F(TransportManagerImplTest, Disconnect) { // Arrange |