diff options
Diffstat (limited to 'src/components/include/transport_manager')
7 files changed, 51 insertions, 35 deletions
diff --git a/src/components/include/transport_manager/error.h b/src/components/include/transport_manager/error.h index 022ddf0e38..ba357dd54b 100644 --- a/src/components/include/transport_manager/error.h +++ b/src/components/include/transport_manager/error.h @@ -34,7 +34,7 @@ #define SRC_COMPONENTS_INCLUDE_TRANSPORT_MANAGER_ERROR_H_ #include <string> -#include <utils/shared_ptr.h> +#include <memory> namespace transport_manager { @@ -79,7 +79,7 @@ class BaseError { private: std::string description_; }; -typedef utils::SharedPtr<BaseError> BaseErrorPtr; +typedef std::shared_ptr<BaseError> BaseErrorPtr; /** * @brief Error that originates during device search. diff --git a/src/components/include/transport_manager/transport_adapter/device.h b/src/components/include/transport_manager/transport_adapter/device.h index 148e715050..1ac1424477 100644 --- a/src/components/include/transport_manager/transport_adapter/device.h +++ b/src/components/include/transport_manager/transport_adapter/device.h @@ -35,9 +35,10 @@ #include <string> #include <vector> +#include <memory> #include "transport_manager/common.h" -#include "utils/shared_ptr.h" + #include "utils/macro.h" namespace transport_manager { @@ -160,7 +161,7 @@ class Device { **/ bool keep_on_disconnect_; }; -typedef utils::SharedPtr<Device> DeviceSptr; +typedef std::shared_ptr<Device> DeviceSptr; typedef std::vector<DeviceSptr> DeviceVector; } // namespace transport_adapter } // namespace transport_manager diff --git a/src/components/include/transport_manager/transport_adapter/transport_adapter.h b/src/components/include/transport_manager/transport_adapter/transport_adapter.h index 7f6d347535..ebbf7dae28 100644 --- a/src/components/include/transport_manager/transport_adapter/transport_adapter.h +++ b/src/components/include/transport_manager/transport_adapter/transport_adapter.h @@ -41,8 +41,6 @@ #include <list> #include <map> -#include "utils/shared_ptr.h" - #include "transport_manager/transport_adapter/device.h" #include "transport_manager/common.h" #include "transport_manager/error.h" @@ -59,17 +57,16 @@ class TransportAdapterListener; /** * @brief The DeviceType enum defines types based on available transport * adapters - * @deprecated PASA_AOA, PASA_BLUETOOTH, MME */ enum DeviceType { AOA, - PASA_AOA, BLUETOOTH, - PASA_BLUETOOTH, - MME, IOS_BT, IOS_USB, TCP, + IOS_USB_HOST_MODE, + IOS_USB_DEVICE_MODE, + IOS_CARPLAY_WIRELESS, // running on iAP over Carplay wireless transport UNKNOWN }; @@ -86,6 +83,18 @@ typedef std::map<DeviceUID, DeviceSptr> DeviceMap; */ typedef std::list<TransportAdapterListener*> TransportAdapterListenerList; +/** + * @brief Type definition for transport's configuration information + */ +typedef std::map<std::string, std::string> TransportConfig; + +/** + * @brief TransportConfig keys + */ +extern const char* tc_enabled; +extern const char* tc_tcp_port; +extern const char* tc_tcp_ip_address; + class TransportAdapter { public: /** @@ -312,6 +321,12 @@ class TransportAdapter { virtual void DeviceSwitched(const DeviceUID& device_handle) = 0; virtual SwitchableDevices GetSwitchableDevices() const = 0; + + /** + * @brief Returns the transport's configuration information + */ + virtual TransportConfig GetTransportConfiguration() const = 0; + #ifdef TELEMETRY_MONITOR /** * @brief Return Time metric observer diff --git a/src/components/include/transport_manager/transport_adapter/transport_adapter_event.h b/src/components/include/transport_manager/transport_adapter/transport_adapter_event.h index 18f4ccb2d1..fd1d693067 100644 --- a/src/components/include/transport_manager/transport_adapter/transport_adapter_event.h +++ b/src/components/include/transport_manager/transport_adapter/transport_adapter_event.h @@ -57,7 +57,8 @@ enum class EventTypeEnum { ON_RECEIVED_FAIL, ON_COMMUNICATION_ERROR, ON_UNEXPECTED_DISCONNECT, - ON_TRANSPORT_SWITCH_REQUESTED + ON_TRANSPORT_SWITCH_REQUESTED, + ON_TRANSPORT_CONFIG_UPDATED }; class TransportAdapterEvent { @@ -87,30 +88,6 @@ class TransportAdapterEvent { , event_error(error) {} /** - * DEPRECATED - * @brief Constructor. - * - * @param type Event type. - * @param transport_adapter Transport adapter - * @param device_handle Handle of device. - * @param application_id Handle of application. - * @param data Smart pointer to the raw message. - * @param error Error class that contains details of this error situation. - */ - TransportAdapterEvent(int type, - transport_adapter::TransportAdapter* adapter, - const DeviceUID& device_handle, - const ApplicationHandle& application_id, - ::protocol_handler::RawMessagePtr data, - BaseErrorPtr error) - : event_type(static_cast<EventTypeEnum>(type)) - , application_id(application_id) - , device_uid(device_handle) - , transport_adapter(adapter) - , event_data(data) - , event_error(error) {} - - /** * @brief Value that describe event type. */ EventTypeEnum event_type; diff --git a/src/components/include/transport_manager/transport_manager_listener.h b/src/components/include/transport_manager/transport_manager_listener.h index d336eade45..6c3f6e2eaa 100644 --- a/src/components/include/transport_manager/transport_manager_listener.h +++ b/src/components/include/transport_manager/transport_manager_listener.h @@ -33,6 +33,7 @@ #ifndef SRC_COMPONENTS_INCLUDE_TRANSPORT_MANAGER_TRANSPORT_MANAGER_LISTENER_H_ #define SRC_COMPONENTS_INCLUDE_TRANSPORT_MANAGER_TRANSPORT_MANAGER_LISTENER_H_ +#include <map> #include <vector> #include "transport_manager/common.h" #include "transport_manager/info.h" @@ -193,6 +194,14 @@ class TransportManagerListener { virtual void OnTMMessageSendFailed( const DataSendError& error, const ::protocol_handler::RawMessagePtr message) = 0; + + /** + * @brief Notifies that configuration of a transport has been updated. + * + * @param configs pairs of key and value that represent configuration. + */ + virtual void OnTransportConfigUpdated( + const std::map<std::string, std::string>& configs) = 0; }; } // namespace transport_manager #endif // SRC_COMPONENTS_INCLUDE_TRANSPORT_MANAGER_TRANSPORT_MANAGER_LISTENER_H_ diff --git a/src/components/include/transport_manager/transport_manager_listener_empty.h b/src/components/include/transport_manager/transport_manager_listener_empty.h index ca6c573a06..08b2b77c30 100644 --- a/src/components/include/transport_manager/transport_manager_listener_empty.h +++ b/src/components/include/transport_manager/transport_manager_listener_empty.h @@ -187,6 +187,14 @@ class TransportManagerListenerEmpty : public TransportManagerListener { void OnTMMessageSendFailed( const DataSendError& error, const ::protocol_handler::RawMessagePtr message) OVERRIDE {} + + /** + * @brief Notifies that configuration of a transport has been updated. + * + * @param configs pairs of key and value that represent configuration. + */ + void OnTransportConfigUpdated( + const std::map<std::string, std::string>& configs) OVERRIDE {} }; } // namespace transport_manager #endif // SRC_COMPONENTS_INCLUDE_TRANSPORT_MANAGER_TRANSPORT_MANAGER_LISTENER_EMPTY_H_ diff --git a/src/components/include/transport_manager/transport_manager_settings.h b/src/components/include/transport_manager/transport_manager_settings.h index feb3fa2c02..3912bbe747 100644 --- a/src/components/include/transport_manager/transport_manager_settings.h +++ b/src/components/include/transport_manager/transport_manager_settings.h @@ -63,6 +63,12 @@ class TransportManagerSettings : public TransportManagerMMESettings { * the transport change timeout value. */ virtual uint32_t app_transport_change_timer_addition() const = 0; + + /** + * @brief Returns the network interface name for TCP transport adapter + */ + virtual const std::string& transport_manager_tcp_adapter_network_interface() + const = 0; }; } // namespace transport_manager #endif // SRC_COMPONENTS_INCLUDE_TRANSPORT_MANAGER_TRANSPORT_MANAGER_SETTINGS_H_ |