summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsrc/appMain/hmi_capabilities.json1
-rw-r--r--src/components/application_manager/include/application_manager/smart_object_keys.h1
-rw-r--r--src/components/application_manager/src/commands/mobile/register_app_interface_request.cc4
-rw-r--r--src/components/application_manager/src/smart_object_keys.cc1
-rw-r--r--src/components/application_manager/test/commands/hmi/ui_get_capabilities_response_test.cc2
-rw-r--r--src/components/application_manager/test/commands/mobile/register_app_interface_request_test.cc1
-rw-r--r--src/components/application_manager/test/hmi_capabilities.json1
-rw-r--r--src/components/application_manager/test/hmi_capabilities_test.cc2
-rw-r--r--src/components/interfaces/HMI_API.xml7
-rw-r--r--src/components/interfaces/MOBILE_API.xml7
-rwxr-xr-xtools/InterfaceGenerator/generator/Model.py10
-rwxr-xr-xtools/InterfaceGenerator/generator/parsers/RPCBase.py9
12 files changed, 38 insertions, 8 deletions
diff --git a/src/appMain/hmi_capabilities.json b/src/appMain/hmi_capabilities.json
index 8b61df1b31..6731c858ca 100755
--- a/src/appMain/hmi_capabilities.json
+++ b/src/appMain/hmi_capabilities.json
@@ -7,6 +7,7 @@
],
"displayCapabilities": {
"displayType": "GEN2_8_DMA",
+ "displayName": "GENERIC_DISPLAY",
"textFields": [{
"name": "mainField1",
"characterSet": "TYPE2SET",
diff --git a/src/components/application_manager/include/application_manager/smart_object_keys.h b/src/components/application_manager/include/application_manager/smart_object_keys.h
index 1c71cec29d..ca5d60b116 100644
--- a/src/components/application_manager/include/application_manager/smart_object_keys.h
+++ b/src/components/application_manager/include/application_manager/smart_object_keys.h
@@ -479,6 +479,7 @@ extern const char* dtc;
extern const char* ecu_header;
extern const char* image_capabilities;
extern const char* display_type;
+extern const char* display_name;
extern const char* text_fields;
extern const char* media_clock_formats;
extern const char* graphic_supported;
diff --git a/src/components/application_manager/src/commands/mobile/register_app_interface_request.cc b/src/components/application_manager/src/commands/mobile/register_app_interface_request.cc
index c799d68609..54def92111 100644
--- a/src/components/application_manager/src/commands/mobile/register_app_interface_request.cc
+++ b/src/components/application_manager/src/commands/mobile/register_app_interface_request.cc
@@ -453,6 +453,10 @@ void FillUIRelatedFields(smart_objects::SmartObject& response_params,
hmi_capabilities.display_capabilities()->getElement(
hmi_response::display_type);
+ display_caps[hmi_response::display_name] =
+ hmi_capabilities.display_capabilities()->getElement(
+ hmi_response::display_name);
+
display_caps[hmi_response::text_fields] =
hmi_capabilities.display_capabilities()->getElement(
hmi_response::text_fields);
diff --git a/src/components/application_manager/src/smart_object_keys.cc b/src/components/application_manager/src/smart_object_keys.cc
index 26ca8e790f..47fae60728 100644
--- a/src/components/application_manager/src/smart_object_keys.cc
+++ b/src/components/application_manager/src/smart_object_keys.cc
@@ -437,6 +437,7 @@ const char* dtc = "dtc";
const char* ecu_header = "ecuHeader";
const char* image_capabilities = "imageCapabilities";
const char* display_type = "displayType";
+const char* display_name = "displayName";
const char* text_fields = "textFields";
const char* media_clock_formats = "mediaClockFormats";
const char* graphic_supported = "graphicSupported";
diff --git a/src/components/application_manager/test/commands/hmi/ui_get_capabilities_response_test.cc b/src/components/application_manager/test/commands/hmi/ui_get_capabilities_response_test.cc
index b02c9851ee..7dd7a74f4c 100644
--- a/src/components/application_manager/test/commands/hmi/ui_get_capabilities_response_test.cc
+++ b/src/components/application_manager/test/commands/hmi/ui_get_capabilities_response_test.cc
@@ -95,6 +95,8 @@ TEST_F(UIGetCapabilitiesResponseTest, RUN_SetDisplay_SUCCESSS) {
smart_objects::SmartObject(smart_objects::SmartType_Map);
(*command_msg)[strings::msg_params][hmi_response::display_capabilities]
[hmi_response::display_type] = "GEN2_8_DMA";
+ (*command_msg)[strings::msg_params][hmi_response::display_capabilities]
+ [hmi_response::display_name] = "GENERIC_DISPLAY";
ResponseFromHMIPtr command(
CreateCommand<UIGetCapabilitiesResponse>(command_msg));
diff --git a/src/components/application_manager/test/commands/mobile/register_app_interface_request_test.cc b/src/components/application_manager/test/commands/mobile/register_app_interface_request_test.cc
index b7a004f199..457310d0c0 100644
--- a/src/components/application_manager/test/commands/mobile/register_app_interface_request_test.cc
+++ b/src/components/application_manager/test/commands/mobile/register_app_interface_request_test.cc
@@ -344,6 +344,7 @@ TEST_F(RegisterAppInterfaceRequestTest,
SmartObject& display_capabilities =
(*expected_message)[am::hmi_response::display_capabilities];
display_capabilities[am::hmi_response::display_type] = "test_display_type";
+ display_capabilities[am::hmi_response::display_name] = "GENERIC_DISPLAY";
display_capabilities[am::hmi_response::text_fields] = "test_text_fields";
display_capabilities[am::hmi_response::image_fields] = "test_image_fields";
display_capabilities[am::hmi_response::media_clock_formats] =
diff --git a/src/components/application_manager/test/hmi_capabilities.json b/src/components/application_manager/test/hmi_capabilities.json
index 0efcc688bc..fbf856873f 100644
--- a/src/components/application_manager/test/hmi_capabilities.json
+++ b/src/components/application_manager/test/hmi_capabilities.json
@@ -42,6 +42,7 @@
],
"displayCapabilities": {
"displayType": "GEN2_8_DMA",
+ "displayName": "GENERIC_DISPLAY",
"textFields": [
{
"name": "mainField1",
diff --git a/src/components/application_manager/test/hmi_capabilities_test.cc b/src/components/application_manager/test/hmi_capabilities_test.cc
index b8369528aa..8033dfa027 100644
--- a/src/components/application_manager/test/hmi_capabilities_test.cc
+++ b/src/components/application_manager/test/hmi_capabilities_test.cc
@@ -269,6 +269,8 @@ TEST_F(HMICapabilitiesTest, LoadCapabilitiesFromFile) {
static_cast<hmi_apis::Common_DisplayType::eType>(
display_capabilities_so[hmi_response::display_type].asInt()));
+ EXPECT_EQ("GENERIC_DISPLAY", display_capabilities_so[hmi_response::display_name].asString());
+
EXPECT_TRUE(display_capabilities_so["graphicSupported"].asBool());
// Check text fields
diff --git a/src/components/interfaces/HMI_API.xml b/src/components/interfaces/HMI_API.xml
index 2b34de0440..37b3167c8b 100644
--- a/src/components/interfaces/HMI_API.xml
+++ b/src/components/interfaces/HMI_API.xml
@@ -409,7 +409,7 @@
<element name="SUSPEND" />
</enum>
-<enum name="DisplayType">
+<enum name="DisplayType" deprecated="true">
<description>The possible types of HU display.</description>
<element name="CID">
<description> A 2-line x 20 character "dot matrix" display </description>
@@ -2114,9 +2114,12 @@
<struct name="DisplayCapabilities">
<description>Contains information about the display capabilities.</description>
- <param name="displayType" type="Common.DisplayType" mandatory="true">
+ <param name="displayType" type="Common.DisplayType" mandatory="true" deprecated="true">
<description>The type of the display. See DisplayType</description>
</param>
+ <param name="displayName" type="String" mandatory="false">
+ <description>The name of the display the app is connected to.</description>
+ </param>
<param name="textFields" type="Common.TextField" minsize="0" maxsize="100" array="true" mandatory="true">
<description>A set of all fields for text displaying supported by HU. See TextFieldName.</description>
<description>If there are no textfields supported, the empty array must be returned</description>
diff --git a/src/components/interfaces/MOBILE_API.xml b/src/components/interfaces/MOBILE_API.xml
index d64aef1bf7..ad2c6dd72e 100644
--- a/src/components/interfaces/MOBILE_API.xml
+++ b/src/components/interfaces/MOBILE_API.xml
@@ -619,7 +619,7 @@
</element>
</enum>
- <enum name="DisplayType">
+ <enum name="DisplayType" deprecated="true">
<description>See DAES for further infos regarding the displays</description>
<element name="CID"/>
<element name="TYPE2" />
@@ -1937,9 +1937,12 @@
<struct name="DisplayCapabilities">
<description>Contains information about the display capabilities.</description>
- <param name="displayType" type="DisplayType" mandatory="true">
+ <param name="displayType" type="DisplayType" mandatory="true" deprecated="true">
<description>The type of the display. See DisplayType</description>
</param>
+ <param name="displayName" type="String" mandatory="false">
+ <description>The name of the display the app is connected to.</description>
+ </param>
<param name="textFields" type="TextField" minsize="1" maxsize="100" array="true" mandatory="true">
<description>A set of all fields that support text data. See TextField</description>
</param>
diff --git a/tools/InterfaceGenerator/generator/Model.py b/tools/InterfaceGenerator/generator/Model.py
index ee458d934a..8c1c2f95f9 100755
--- a/tools/InterfaceGenerator/generator/Model.py
+++ b/tools/InterfaceGenerator/generator/Model.py
@@ -180,13 +180,14 @@ class Enum(InterfaceItemBase):
def __init__(self, name, description=None, design_description=None,
issues=None, todos=None, platform=None, internal_scope=None,
- elements=None, scope=None):
+ elements=None, scope=None, deprecated=None):
super(Enum, self).__init__(
name, description=description,
design_description=design_description, issues=issues, todos=todos,
platform=platform, scope=scope)
self.internal_scope = internal_scope
+ self.deprecated = deprecated
self.elements = \
elements if elements is not None else collections.OrderedDict()
@@ -229,7 +230,7 @@ class Param(InterfaceItemBase):
def __init__(self, name, param_type, description=None,
design_description=None, issues=None, todos=None,
- platform=None, is_mandatory=True, default_value=None, scope=None):
+ platform=None, is_mandatory=True, default_value=None, scope=None, deprecated = None):
super(Param, self).__init__(
name, description=description,
design_description=design_description, issues=issues, todos=todos,
@@ -238,6 +239,7 @@ class Param(InterfaceItemBase):
self.is_mandatory = is_mandatory
self.param_type = param_type
self.default_value = default_value
+ self.deprecated = deprecated
class FunctionParam(Param):
@@ -251,11 +253,11 @@ class FunctionParam(Param):
def __init__(self, name, param_type, description=None,
design_description=None, issues=None, todos=None,
- platform=None, is_mandatory=True, default_value=None, scope=None):
+ platform=None, is_mandatory=True, default_value=None, scope=None, deprecated=None):
super(FunctionParam, self).__init__(
name, param_type=param_type, description=description,
design_description=design_description, issues=issues, todos=todos,
- platform=platform, is_mandatory=is_mandatory, default_value=default_value, scope=scope)
+ platform=platform, is_mandatory=is_mandatory, default_value=default_value, scope=scope, deprecated=deprecated)
self.default_value = default_value
diff --git a/tools/InterfaceGenerator/generator/parsers/RPCBase.py b/tools/InterfaceGenerator/generator/parsers/RPCBase.py
index 4853916dad..45ffaca5f0 100755
--- a/tools/InterfaceGenerator/generator/parsers/RPCBase.py
+++ b/tools/InterfaceGenerator/generator/parsers/RPCBase.py
@@ -203,16 +203,20 @@ class Parser(object):
internal_scope = None
scope = None
+ deprecated = None
for attribute in attributes:
if attribute == "internal_scope":
internal_scope = attributes[attribute]
elif attribute == "scope":
scope = attributes[attribute]
+ elif attribute == "deprecated":
+ deprecated = attributes[attribute]
else:
raise ParseError("Unexpected attribute '" + attribute +
"' in enum '" + params["name"] + "'")
params["internal_scope"] = internal_scope
params["scope"] = scope
+ params["deprecated"] = deprecated
elements = collections.OrderedDict()
for subelement in subelements:
@@ -555,6 +559,11 @@ class Parser(object):
params["is_mandatory"] = self._get_bool_from_string(is_mandatory)
+ deprecated = None
+ deprecated = self._extract_optional_bool_attrib(attrib, "deprecated", False)
+ if deprecated is not None:
+ params["deprecated"] = deprecated
+
scope = self._extract_attrib(attrib, "scope")
if scope is not None:
params["scope"] = scope