diff options
author | <philippe colliot> | 2016-01-31 15:07:47 +0100 |
---|---|---|
committer | <philippe colliot> | 2016-01-31 15:07:47 +0100 |
commit | 61fd86539acf19d009a0fc472b203387fd6cd817 (patch) | |
tree | be9fd17964ae41062cc75e137ae71965c9a7c574 /api/poi-service | |
parent | 0970cb1d7f4e8eabc205434de070b704c632094d (diff) | |
download | poi-service-61fd86539acf19d009a0fc472b203387fd6cd817.tar.gz |
Alignment of Franca and DBus files, test done for POI APIs
Diffstat (limited to 'api/poi-service')
5 files changed, 230 insertions, 411 deletions
diff --git a/api/poi-service/genivi-poiservice-configuration.xml b/api/poi-service/genivi-poiservice-configuration.xml index 705a396..5b018fb 100644 --- a/api/poi-service/genivi-poiservice-configuration.xml +++ b/api/poi-service/genivi-poiservice-configuration.xml @@ -30,7 +30,7 @@ <doc> <line>SetUnitsOfMeasurement = This method sets the units of measurement</line> </doc> - <arg name="unitsOfMeasurementList" type="a{qv}" direction="in"> + <arg name="unitsOfMeasurementList" type="a{i(yv)}" direction="in"> <doc> <line>unitsOfMeasurementList = array[unitsOfMeasurement]</line> <line>unitsOfMeasurement = tuple (key,value)</line> @@ -43,7 +43,7 @@ <doc> <line>GetUnitsOfMeasurement = This method retrieves the units of measurement</line> </doc> - <arg name="unitsOfMeasurementList" type="a{qv}" direction="out"> + <arg name="unitsOfMeasurementList" type="a{i(yv)}" direction="out"> <doc> <line>unitsOfMeasurementList = array[unitsOfMeasurement]</line> <line>unitsOfMeasurement = tuple (key,value)</line> @@ -56,7 +56,7 @@ <doc> <line>GetSupportedUnitsOfMeasurement = This method retrieves the supported units of measurement</line> </doc> - <arg name="unitsOfMeasurementList" type="a{qv}" direction="out"> + <arg name="unitsOfMeasurementList" type="a{i(yv)}" direction="out"> <doc> <line>unitsOfMeasurementList = array[unitsOfMeasurement]</line> <line>unitsOfMeasurement = dictionary[key,value]</line> @@ -70,7 +70,7 @@ <doc> <line>SetTimeFormat = This method sets the time format</line> </doc> - <arg name="timeFormat" type="q" direction="in"> + <arg name="timeFormat" type="i" direction="in"> <doc> <line>timeFormat = enum(INVALID,12H,24H, ... )</line> </doc> @@ -80,7 +80,7 @@ <doc> <line>GetTimeFormat = This method retrieves the time format</line> </doc> - <arg name="timeFormat" type="q" direction="out"> + <arg name="timeFormat" type="i" direction="out"> <doc> <line>timeFormat = enum(INVALID,12H,24H, ... )</line> </doc> @@ -90,7 +90,7 @@ <doc> <line>GetSupportedTimeFormats = This method retrieves the supported time formats</line> </doc> - <arg name="timeFormatList" type="aq" direction="out"> + <arg name="timeFormatList" type="ai" direction="out"> <doc> <line>timeFormatList = array[timeFormat]</line> <line>timeFormat = enum(INVALID,12H,24H, ... )</line> @@ -101,7 +101,7 @@ <doc> <line>SetCoordinatesFormat = This method sets the coordinates format</line> </doc> - <arg name="coordinatesFormat" type="q" direction="in"> + <arg name="coordinatesFormat" type="i" direction="in"> <doc> <line>coordinatesFormat = enum(INVALID,DEGREES,MINUTES,SECONDS, ... )</line> <line>DEGREES format = d.dº</line> @@ -114,7 +114,7 @@ <doc> <line>GetCoordinatesFormat = This method retrieves the coordinates format</line> </doc> - <arg name="coordinatesFormat" type="q" direction="out"> + <arg name="coordinatesFormat" type="i" direction="out"> <doc> <line>coordinatesFormat = enum(INVALID,DEGREES,MINUTES,SECONDS, ... )</line> <line>DEGREES format = d.dº</line> @@ -127,7 +127,7 @@ <doc> <line>GetSupportedCoordinatesFormats = This method retrieves the supported coordinates formats</line> </doc> - <arg name="coordinatesFormatList" type="aq" direction="out"> + <arg name="coordinatesFormatList" type="ai" direction="out"> <doc> <line>coordinatesFormatList = array[coordinatesFormat]</line> <line>coordinatesFormat = enum(INVALID,DEGREES,MINUTES,SECONDS, ... )</line> @@ -194,7 +194,7 @@ <doc> <line>ConfigurationChanged = This signal is sent to the clients when one or more configuration settings changes</line> </doc> - <arg name="changedSettings" type="aq"> + <arg name="changedSettings" type="ai"> <doc> <line>changedSettings = array[setting]</line> <line>setting = enum(INVALID,UNITS_OF_MEASUREMENT,LOCALE,TIME_FORMAT,COORDINATES_FORMAT, ... )</line> diff --git a/api/poi-service/genivi-poiservice-contentaccessmodule.xml b/api/poi-service/genivi-poiservice-contentaccessmodule.xml index d372dbe..16eac50 100644 --- a/api/poi-service/genivi-poiservice-contentaccessmodule.xml +++ b/api/poi-service/genivi-poiservice-contentaccessmodule.xml @@ -79,17 +79,137 @@ </doc> </arg> </method> - <signal name="ConfigurationChanged"> + <method name="GetAvailableCategories"> <doc> - <line>ConfigurationChanged = This signal is sent to the clients when one or more configuration settings changes</line> + <line>GetAvailableCategories = This method retrieves the list of POI categories available (pre-defined and custom).</line> </doc> - <arg name="changedSettings" type="aq"> + <arg name="categories" type="a(usb)" direction="out"> <doc> - <line>changedSettings = array[setting]</line> - <line>setting = enum(INVALID,UNITS_OF_MEASUREMENT,LOCALE,TIME_FORMAT,COORDINATES_FORMAT, ... )</line> + <line>categories = array[struct(id, name, top_level)]</line> + <line>id = enum(INVALID,ALL_CATEGORIES,AIRPORT,RESTAURANT,HOTEL,GAZ_STATION,CAR_PARK, ...)</line> + <line>name = name to be displayed by application</line> + <line>top_level = true if the category is a pre-defined one (top level with only ALL_CATEGORIES as parent), false for customized categories created by plug-in.</line> + <line>Note: A POI category is a unique ID.</line> </doc> </arg> - </signal> + </method> + <method name="GetRootCategory"> + <doc> + <line>GetRootCategory = Get the root category id. That would be ALL_CATEGORIES.</line> + </doc> + <arg name="category" type="u" direction="out"> + <doc> + <line>id = ALL_CATEGORIES</line> + <line>The root category is a top level one by design.</line> + </doc> + </arg> + </method> + <method name="GetChildrenCategories"> + <doc> + <line>GetChildrenCategories = Get the children categories id and type (top level) from the a parent unique id.</line> + </doc> + <arg name="category" type="u" direction="in"> + <doc> + <line>unique category id</line> + </doc> + </arg> + <arg name="categories" type="a(ub)" direction="out"> + <doc> + <line>categories = array[struct(id, top_level)]</line> + <line>id = enum(INVALID,ALL_CATEGORIES,AIRPORT,RESTAURANT,HOTEL,GAZ_STATION,CAR_PARK, ...)</line> + <line>top_level = true if the category is a pre-defined one (top level with only ALL_CATEGORIES as parent), false for customized categories created by plug-in.</line> + </doc> + </arg> + <error name="org.genivi.poiservice.poiSearch.Error.InvalidCategory"> + <doc> + <line>The category is not available.</line> + </doc> + </error> + </method> + <method name="GetParentCategories"> + <doc> + <line>GetParentCategories = Get the parent categories id and type (top level) from the a unique id.</line> + </doc> + <arg name="category" type="u" direction="in"> + <doc> + <line>unique category id</line> + </doc> + </arg> + <arg name="categories" type="a(ub)" direction="out"> + <doc> + <line>categories = array[struct(id, top_level)]</line> + <line>id = enum(INVALID,ALL_CATEGORIES,AIRPORT,RESTAURANT,HOTEL,GAZ_STATION,CAR_PARK, ...)</line> + <line>top_level = true if the category is a pre-defined one (top level with only ALL_CATEGORIES as parent), false for customized categories created by plug-in.</line> + </doc> + </arg> + <error name="org.genivi.poiservice.poiSearch.Error.InvalidCategory"> + <doc> + <line>The category is not available.</line> + </doc> + </error> + </method> + <method name="createCategory"> + <doc> + <line>createCategory = Creates a category by name and return an unique id.</line> + </doc> + <arg direction="in" name="category" type="((au(yv)ss(yv))a(usia(is(yv)))a(us))"> + <doc> + <line>category (of type CAMCategory) = List of details for the category to create.</line> + <line>CAMCategory struct[details, attributeList, sortOptions] = </line> + <line>0: CAMCategory.details ('?') = struct(list of parents_id, icons, name, short_desc, media).</line> + <line>1: CAMCategory.attributeList ('?') = array[struct(name, type, array[struct(operator_id, operator_name)])].</line> + <line>2: CAMCategory.sortOptions ('?') = array[struct(id, name)].</line> + </doc> + </arg> + <arg direction="out" name="unique_id" type="u"> + <doc> + <line>unique_id (of type CategoryID) = Category unique id.</line> + <line>lineComment to be defined</line> + </doc> + </arg> + </method> + <method name="removeCategories"> + <doc> + <line>removeCategories = Removes a list of categories. Because of required time to remove it from the database, a signal is emitted when the deletion is done.</line> + </doc> + <arg direction="in" name="categories" type="au"> + <doc> + <line>categories (of type CategoryID) = List of categories to be removed.</line> + <line>lineComment to be defined</line> + </doc> + </arg> + </method> + <method name="addPOIs"> + <doc> + <line>addPOIs = Adds a list of POIs to a category. Because of required time to add it to the database, a signal is emitted when the update is done, that gives the id of the elements added</line> + </doc> + <arg direction="in" name="unique_id" type="u"> + <doc> + <line>unique_id (of type CategoryID) = Category unique id.</line> + <line>lineComment to be defined</line> + </doc> + </arg> + <arg direction="in" name="poiList" type="a(s(ddd)a(ui(yv)))"> + <doc> + <line>poiList (of type PoiAddedDetails) = List of POIs and all their content. Note that there's no id sent, because it's up to the component to give it</line> + <line>PoiAddedDetails struct[name, location, attributeList] = </line> + <line>0: PoiAddedDetails.name ('s') = POI name</line> + <line>1: PoiAddedDetails.location ('?') = POI location.</line> + <line>2: PoiAddedDetails.attributeList ('?') = array[struct(id,type,value)].</line> + </doc> + </arg> + </method> + <method name="removePOIs"> + <doc> + <line>removePOIs = Removes a list of POIs to a category. Because of required time to remove it from the database, a signal is emitted when the update is done.</line> + </doc> + <arg direction="in" name="ids" type="au"> + <doc> + <line>ids (of type POI_ID) = List of unique ids of POIs to remove.</line> + <line>lineComment to be defined</line> + </doc> + </arg> + </method> <method name="PoiSearchStarted"> <doc> <line>PoiSearchStarted = This method is sent by the POI service component to inform all the CAM that a new POI search was started.</line> @@ -105,7 +225,7 @@ <line>maxSize = max size of the results list</line> </doc> </arg> - <arg name="location" type="(ddi)" direction="in"> + <arg name="location" type="(ddd)" direction="in"> <doc> <line>location = struct(lat,lon,alt)</line> <line>lat = latitude of a vertex of the polygon in format %3.6f. Range [-90:+90]. Example: 48.053250</line> @@ -121,7 +241,7 @@ <line>Note: A POI category is a unique ID. It could be a predifined category or a custom one defined by a POI plug-in.</line> </doc> </arg> - <arg name="poiAttributes" type="a(uuivib)" direction="in"> + <arg name="poiAttributes" type="a(uui(yv)ib)" direction="in"> <doc> <line>poiAtttributes = array[struct(id, categoryId, type, value, oper, mandatory)]</line> <line>id = attribute unique id (see data model)</line> @@ -169,9 +289,9 @@ <line>poiSearchHandle = poi search unique handle</line> </doc> </arg> - <arg name="attributes" type="au" direction="in"> + <arg name="attributeList" type="au" direction="in"> <doc> - <line>attributes = List of attributes id to retrieve. This is optional and the list could be empty.</line> + <line>attributeList = List of attributes id to retrieve. This is optional and the list could be empty.</line> </doc> </arg> <arg name="statusValue" type="q" direction="out"> @@ -184,9 +304,9 @@ <line>resultListSize = Number of items of the results list</line> </doc> </arg> - <arg name="resultList" type="a(usu(ddi)qa(uiv))" direction="out"> + <arg name="resultList" type="a(usu(ddd)qa(ui(yv)))" direction="out"> <doc> - <line>resultList = array[source_id,name, category, location, distance, attributes]</line> + <line>resultList = array[source_id,name, category, location, distance, attributeList]</line> <line>source_id = POI unique id as known by the content access module. This id will be used by POI service to request POI details.</line> <line>name = POI name</line> <line>category = POI category unique id</line> @@ -196,7 +316,7 @@ <line>lon = longitude of a vertex of the polygon in format %3.6f. Range [-180:+180]. Example: 48.053250</line> <line>alt = altitude above the sea level of the current position in meters</line> <line>distance = distance in meters to poi from center of the search</line> - <line>attributes = array[struct(name, type, value)]</line> + <line>attributeList = array[struct(name, type, value)]</line> <line>List of attributes requested. It could be empty.</line> <line>id = attribute unique id (see data model)</line> <line>type = enum(INVALID,STRING,INTEGER,COORDINATES ...)</line> @@ -229,9 +349,9 @@ <line>list of poi = Unique source poi id</line> </doc> </arg> - <arg name="results" type="a((us(ddi))aua(uiv))" direction="out"> + <arg name="results" type="a((us(ddd))aua(ui(yv)))" direction="out"> <doc> - <line>results = array[details, categories, attributes]</line> + <line>results = array[details, categories, attributeList]</line> <line>results = List of details for all the POI.</line> <line>details = struct(unique id, name, location)</line> <line>source id = POI id</line> @@ -242,7 +362,7 @@ <line>alt = altitude above the sea level of the current position in meters</line> <line>categories = array[id]</line> <line>id = enum(INVALID,ALL_CATEGORIES,AIRPORT,RESTAURANT,HOTEL,GAZ_STATION,CAR_PARK, ...)</line> - <line>attributes = array[struct(id, type, value)]</line> + <line>attributeList = array[struct(id, type, value)]</line> <line>id = attribute unique name (see data model)</line> <line>type = enum(INVALID,STRING,INTEGER,COORDINATES ...)</line> <line>value = value. The value depends on the attribute specifications and type.</line> @@ -260,5 +380,72 @@ </doc> </error> </method> + <signal name="ConfigurationChanged"> + <doc> + <line>ConfigurationChanged = This signal is sent to the clients when one or more configuration settings changes</line> + </doc> + <arg name="changedSettings" type="aq"> + <doc> + <line>changedSettings = array[setting]</line> + <line>setting = enum(INVALID,UNITS_OF_MEASUREMENT,LOCALE,TIME_FORMAT,COORDINATES_FORMAT, ... )</line> + </doc> + </arg> + </signal> + <signal name="CategoriesRemoved"> + <doc> + <line>CategoriesRemoved = CategoriesRemoved = This signal is emitted when a list of categories and associated content has been removed from the database.</line> + </doc> + <arg direction="out" name="categories" type="au"> + <doc> + <line>categories (of type CategoryID) = List of categories removed.</line> + <line>lineComment to be defined</line> + </doc> + </arg> + </signal> + <signal name="POIAdded"> + <doc> + <line>POIAdded = POIAdded = This signal is emitted when a list of POIs and associated content has been added to the database. It returns the ids.</line> + </doc> + <arg direction="out" name="pois" type="au"> + <doc> + <line>pois (of type POI_ID) = List of unique ids of POIs added. The order is the same as the order in the AddPOIs method.</line> + <line>lineComment to be defined</line> + </doc> + </arg> + </signal> + <signal name="POIRemoved"> + <doc> + <line>POIRemoved = POIRemoved = This signal is emitted when a list of POIs and associated content has been removed from the database.</line> + </doc> + <arg direction="out" name="pois" type="au"> + <doc> + <line>pois (of type POI_ID) = List of unique ids of POIs removed.</line> + <line>lineComment to be defined</line> + </doc> + </arg> + </signal> + <signal name="SearchStatusChanged"> + <doc> + <line>SearchStatusChanged = SearchStatusChanged = This signal updates the search or proximity alert status of the specified handle.</line> + </doc> + <arg direction="out" name="poiSearchHandle" type="u"> + <doc> + <line>poiSearchHandle (of type Handle) = poi search unique handle.</line> + <line>lineComment to be defined</line> + </doc> + </arg> + <arg direction="out" name="statusValue" type="i"> + <doc> + <line>statusValue (of type SearchStatusState) = enum(INVALID,NOT_STARTED,SEARCHING,FINISHED, ... ).</line> + <line>enum[INVALID (org.franca.core.franca.impl.FIntegerConstantImpl@12babf4 (val: 0)), NOT_STARTED (org.franca.core.franca.impl.FIntegerConstantImpl@1a3c8e3 (val: 1296)), SEARCHING (org.franca.core.franca.impl.FIntegerConstantImpl@1f53788 (val: 1297)), FINISHED (org.franca.core.franca.impl.FIntegerConstantImpl@bdae21 (val: 1298))]</line> + </doc> + </arg> + <arg direction="out" name="pois" type="au"> + <doc> + <line>pois (of type POI_ID) = List of pois that match the search (only valid if status is set to SEARCHING or FINISHED, by default empty list).</line> + <line>lineComment to be defined</line> + </doc> + </arg> + </signal> </interface> </node> diff --git a/api/poi-service/genivi-poiservice-contentmanager.xml b/api/poi-service/genivi-poiservice-contentmanager.xml deleted file mode 100644 index 1fbda33..0000000 --- a/api/poi-service/genivi-poiservice-contentmanager.xml +++ /dev/null @@ -1,368 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<?xml-stylesheet type="text/xsl" href="introspect.xsl"?> -<node xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="introspect.xsd" name="org.genivi.navigation.poiservice"> - <interface name="org.genivi.poiservice.POIContentManager"> - <version>1.0</version> - <method name="getVersion"> - <doc> - <line>getVersion = This method returns the API version implemented by the content access module.</line> - </doc> - <arg direction="out" name="version" type="(qqqs)"> - <doc> - <line>version (of type Version) = .</line> - <line>Version struct[versionMajor, versionMinor, versionMicro, date] = version.</line> - <line>Version.versionMajor ('q') = when the major changes, then backward compatibility with previous releases is not granted.</line> - <line>Version.versionMinor ('q') = when the minor changes, then backward compatibility with previous releases is granted, but something changed in the implementation of the API (e.g. new methods may have been added).</line> - <line>Version.versionMicro ('q') = when the micro changes, then backward compatibility with previous releases is granted (bug fixes or documentation modifications).</line> - <line>Version.date ('s') = release date (e.g. 21-06-2011).</line> - </doc> - </arg> - </method> - <method name="setLocale"> - <doc> - <line>setLocale = Set the current language set for the search by poi provider module.</line> - <line>The language defines the poi and categories name and details language. If the language is not supported, the default details will be returned in the native language.</line> - </doc> - <arg direction="in" name="languageCode" type="s"> - <doc> - <line>languageCode = the language to be used. ISO 639‐3 language code (lower case)</line> - </doc> - </arg> - <arg direction="in" name="countryCode" type="s"> - <doc> - <line>countryCode = the country specific variant for the language to be used. ISO 3166‐1 alpha 3 country code (upper case)</line> - </doc> - </arg> - <arg direction="in" name="scriptCode" type="s"> - <doc> - <line>scriptCode = the script specific variant for the language to be used. ISO 15924 alpha 4 script code (upper case)</line> - </doc> - </arg> - </method> - <method name="getLocale"> - <doc> - <line>getLocale = Get the current language set for the search by poi provider module.</line> - </doc> - <arg direction="out" name="languageCode" type="s"> - <doc> - <line>languageCode = the language used. ISO 639‐3 language code (lower case)</line> - </doc> - </arg> - <arg direction="out" name="countryCode" type="s"> - <doc> - <line>countryCode = the country specific variant for the language used. ISO 3166‐1 alpha 3 country code (upper case)</line> - </doc> - </arg> - <arg direction="out" name="scriptCode" type="s"> - <doc> - <line>scriptCode = the script specific variant for the language used. ISO 15924 alpha 4 script code (upper case)</line> - </doc> - </arg> - </method> - <method name="getSupportedLocales"> - <doc> - <line>getSupportedLocales = Get the supported set of locales for the search by poi provider module.</line> - </doc> - <arg direction="out" name="localeList" type="a(sss)"> - <doc> - <line>localeList = array[struct(languageCode,countryCode,scriptCode)]</line> - </doc> - </arg> - </method> - <method name="getAvailableCategories"> - <doc> - <line>getAvailableCategories = This method retrieves the list od POI categories available (pre-defined and custom).</line> - </doc> - <arg direction="out" name="categories" type="a(usb)"> - <doc> - <line>categories (of type CategoryAndName) = List of categories (id, name and top_level).</line> - <line>CategoryAndName struct[uniqueId, name, topLevel] = pair of category and name</line> - <line>CategoryAndName.uniqueId ('?') = Category unique id.</line> - <line>CategoryAndName.name ('s') = name.</line> - <line>CategoryAndName.topLevel ('b') = true if the category is a pre-defined one (top level), false for customized categories created by plug-in.</line> - </doc> - </arg> - </method> - <method name="getRootCategory"> - <doc> - <line>getRootCategory = Get the root category id. That would be ALL_CATEGORIES.</line> - </doc> - <arg direction="out" name="category" type="u"> - <doc> - <line>category (of type CategoryID) = The root category is a top level one by design.</line> - <line>lineComment to be defined</line> - </doc> - </arg> - </method> - <method name="getChildrenCategories"> - <doc> - <line>getChildrenCategories = Get the children categories id and type (top level) from the a parent unique id.</line> - </doc> - <arg direction="in" name="category" type="u"> - <doc> - <line>category (of type CategoryID) = unique category id.</line> - <line>lineComment to be defined</line> - </doc> - </arg> - <arg direction="out" name="categories" type="a(ub)"> - <doc> - <line>categories (of type CategoryAndLevel) = List of categories (id and top_level).</line> - <line>CategoryAndLevel struct[uniqueId, topLevel] = Pair of catgory and description of level</line> - <line>CategoryAndLevel.uniqueId ('?') = Category unique id.</line> - <line>CategoryAndLevel.topLevel ('b') = true if the category is a pre-defined one (top level), false for customized categories created by plug-in.</line> - </doc> - </arg> - </method> - <method name="getParentCategories"> - <doc> - <line>getParentCategories = Get the parent categories id and type (top level) from the a unique id.</line> - </doc> - <arg direction="in" name="category" type="u"> - <doc> - <line>category (of type CategoryID) = unique category id.</line> - <line>lineComment to be defined</line> - </doc> - </arg> - <arg direction="out" name="categories" type="a(ub)"> - <doc> - <line>categories (of type CategoryAndLevel) = List of categories (id and top_level).</line> - <line>CategoryAndLevel struct[uniqueId, topLevel] = Pair of catgory and description of level</line> - <line>CategoryAndLevel.uniqueId ('?') = Category unique id.</line> - <line>CategoryAndLevel.topLevel ('b') = true if the category is a pre-defined one (top level), false for customized categories created by plug-in.</line> - </doc> - </arg> - </method> - <method name="createCategory"> - <doc> - <line>createCategory = Creates a category by name and return an unique id.</line> - </doc> - <arg direction="in" name="category" type="((au(yv)ss(yv))a(usia(is(yv)))a(us))"> - <doc> - <line>category (of type CAMCategory) = List of details for the category to create.</line> - <line>CAMCategory struct[details, attributes, sortOptions] = </line> - <line>CAMCategory.details ('?') = struct(list of parents_id, icons, name, short_desc, media).</line> - <line>CAMCategory.attributes ('?') = array[struct(name, type, array[struct(operator_id, operator_name)])].</line> - <line>CAMCategory.sortOptions ('?') = array[struct(id, name)].</line> - </doc> - </arg> - <arg direction="out" name="unique_id" type="u"> - <doc> - <line>unique_id (of type CategoryID) = Category unique id.</line> - <line>lineComment to be defined</line> - </doc> - </arg> - </method> - <method name="removeCategories"> - <doc> - <line>removeCategories = Removes a list of categories. Because of required time to remove it from the database, a signal is emitted when the deletion is done.</line> - </doc> - <arg direction="in" name="categories" type="au"> - <doc> - <line>categories (of type CategoryID) = List of categories to be removed.</line> - <line>lineComment to be defined</line> - </doc> - </arg> - </method> - <method name="addPOIs"> - <doc> - <line>addPOIs = Adds a list of POIs to a category. Because of required time to add it to the database, a signal is emitted when the update is done, that gives the id of the elements added</line> - </doc> - <arg direction="in" name="unique_id" type="u"> - <doc> - <line>unique_id (of type CategoryID) = Category unique id.</line> - <line>lineComment to be defined</line> - </doc> - </arg> - <arg direction="in" name="poiList" type="a(s(ddi)a(ui(yv)))"> - <doc> - <line>poiList (of type PoiAddedDetails) = List of POIs and all their content. Note that there's no id sent, because it's up to the component to give it</line> - <line>PoiAddedDetails struct[name, location, attributes] = </line> - <line>PoiAddedDetails.name ('s') = POI name</line> - <line>PoiAddedDetails.location ('?') = POI location.</line> - <line>PoiAddedDetails.attributes ('?') = array[struct(id,type,value)].</line> - </doc> - </arg> - </method> - <method name="removePOIs"> - <doc> - <line>removePOIs = Removes a list of POIs to a category. Because of required time to remove it from the database, a signal is emitted when the update is done.</line> - </doc> - <arg direction="in" name="ids" type="au"> - <doc> - <line>ids (of type POI_ID) = List of unique ids of POIs to remove.</line> - <line>lineComment to be defined</line> - </doc> - </arg> - </method> - <method name="poiSearchStarted"> - <doc> - <line>poiSearchStarted = This method is sent by the POI service component to inform all the CAM that a new POI search was started.</line> - <line>It provides all the relevant search parameters. Of course the CAM will only be aware of the search if it registers one of the search categories.</line> - </doc> - <arg direction="in" name="poiSearchHandle" type="u"> - <doc> - <line>poiSearchHandle = poi search unique handle. It must be used by the CAM to send the list of results to the component.</line> - </doc> - </arg> - <arg direction="in" name="maxSize" type="q"> - <doc> - <line>maxSize = max size of the results list.</line> - </doc> - </arg> - <arg direction="in" name="location" type="(ddi)"> - <doc> - <line>location = struct(lat,lon,alt).</line> - </doc> - </arg> - <arg direction="in" name="poiCategories" type="a(uu)"> - <doc> - <line>poiCategories (of type CategoryAndRadius) = array[struct(id,radius)].</line> - <line>CategoryAndRadius struct[id, radius] = </line> - <line>CategoryAndRadius.id ('?') = enum(INVALID,ALL_CATEGORIES,AIRPORT,RESTAURANT,HOTEL,GAZ_STATION,CAR_PARK, ...). Note: A POI category is a unique ID. It could be a predefined category or a custom one defined by a POI plug-in</line> - <line>CategoryAndRadius.radius ('u') = activation or search radius around the position (in 10 meters) for the category. If value is 0 (zero), the default radius (defined for a category) is applied.</line> - </doc> - </arg> - <arg direction="in" name="poiAttributes" type="a(uui(yv)ib)"> - <doc> - <line>poiAttributes (of type AttributeDetails) = array[struct(name, poiCategory, type, value, operator, mandatory)].</line> - <line>AttributeDetails struct[id, categoryId, type, value, oper, mandatory] = used in setAttrbutes and CAM startPOISearch</line> - <line>AttributeDetails.id ('?') = id of attribute .</line> - <line>AttributeDetails.categoryId ('?') = enum(INVALID,ALL_CATEGORIES,AIRPORT,RESTAURANT,HOTEL,GAZ_STATION,CAR_PARK, ...). Note: A POI category is a unique ID. It could be a predefined category or a custom one defined by a POI plug-in</line> - <line>AttributeDetails.type ('?') = enum(INVALID,STRING,INTEGER,COORDINATES ...).</line> - <line>AttributeDetails.value ('?') = value or partial value. The value depends on the attribute specifications and type.</line> - <line>AttributeDetails.oper ('?') = enum(INVALID,MORE_THAN,LESS_THAN,EQUAL, ....).</line> - <line>AttributeDetails.mandatory ('b') = true if the attribute is mandatory for the search and false for optional.</line> - </doc> - </arg> - <arg direction="in" name="inputString" type="s"> - <doc> - <line>inputString = contains the name of the poi that is searched. It could be a partial name or an empty string.</line> - </doc> - </arg> - <arg direction="in" name="sortOption" type="q"> - <doc> - <line>sortOption = enum(SORT_DEFAULT,SORT_BY_DISTANCE,SORT_BY_TIME,ATTRIBUTE_CUSTOM, ... )</line> - <line>If more than one category was defined for this search, the sort criteria should be compliant with all categories.</line> - </doc> - </arg> - </method> - <method name="poiSearchCanceled"> - <doc> - <line>poiSearchCanceled = This method cancels the search for the current id.</line> - </doc> - <arg direction="in" name="poiSearchHandle" type="u"> - <doc> - <line>poiSearchHandle = poi search unique handle.</line> - </doc> - </arg> - </method> - <method name="resultListRequested"> - <doc> - <line>resultListRequested = This method provides the poi results list found by the CAM.</line> - <line>As the POI unique id is managed by the POI component, the CAM only provides the POI name, the category and coordinates as well as all the relevant detailed information.</line> - </doc> - <arg direction="in" name="camId" type="y"> - <doc> - <line>camId = Content access module unique id as known by the POI service component.</line> - </doc> - </arg> - <arg direction="in" name="poiSearchHandle" type="u"> - <doc> - <line>poiSearchHandle = poi search unique handle.</line> - </doc> - </arg> - <arg direction="in" name="attributes" type="au"> - <doc> - <line>attributes = List of attributes id to retrieve. This is optional and the list could be empty.</line> - </doc> - </arg> - <arg direction="out" name="statusValue" type="i"> - <doc> - <line>statusValue (of type SearchStatusState) = enum(INVALID,NOT_STARTED,SEARCHING,FINISHED, ... ).</line> - <line>enum[INVALID (null), NOT_STARTED (null), SEARCHING (null), FINISHED (null)]</line> - </doc> - </arg> - <arg direction="out" name="resultListSize" type="q"> - <doc> - <line>resultListSize = Number of items of the results list.</line> - </doc> - </arg> - <arg direction="out" name="resultList" type="a(usu(ddi)qa(ui(yv)))"> - <doc> - <line>resultList (of type PoiCAMDetails) = array[struct(source_id, name, category, location, distance, attributes)].</line> - <line>PoiCAMDetails struct[sourceId, name, category, location, distance, attributes] = </line> - <line>PoiCAMDetails.sourceId ('?') = POI unique id as known by the content access module. This id will be used by POI service to request POI details.</line> - <line>PoiCAMDetails.name ('s') = POI name.</line> - <line>PoiCAMDetails.category ('?') = POI category unique id.</line> - <line>PoiCAMDetails.location ('?') = POI location.</line> - <line>PoiCAMDetails.distance ('q') = distance in meters to poi from center of the search.</line> - <line>PoiCAMDetails.attributes ('?') = List of attributes requested. It could be empty.</line> - </doc> - </arg> - </method> - <method name="poiDetailsRequested"> - <doc> - <line>poiDetailsRequested = This method retrieves the details associated to one or more POI.</line> - <line>It contains the name, the parent categories, the list of attributes, the icons, ... .</line> - </doc> - <arg direction="in" name="source_id" type="au"> - <doc> - <line>source_id (of type POI_ID) = array[unique_poi_id].</line> - <line>lineComment to be defined</line> - </doc> - </arg> - <arg direction="out" name="results" type="a((us(ddi))aua(ui(yv)))"> - <doc> - <line>results (of type SearchResultDetails) = array[(details, categories, attributes)] .</line> - <line>SearchResultDetails struct[details, categories, attributes] = </line> - <line>SearchResultDetails.details ('?') = struct(id,name,latitude,longitude,altitude).</line> - <line>SearchResultDetails.categories ('?') = array[unique_id].</line> - <line>SearchResultDetails.attributes ('?') = array[struct(name,type,value)].</line> - </doc> - </arg> - </method> - <signal name="ConfigurationChanged"> - <doc> - <line>ConfigurationChanged = guidanceStatusChanged = This signal is sent to the clients when one or more configuration settings changes.</line> - </doc> - <arg direction="out" name="changedSettings" type="aq"> - <doc> - <line>changedSettings = changedSettings array[setting].</line> - </doc> - </arg> - </signal> - <signal name="CategoriesRemoved"> - <doc> - <line>CategoriesRemoved = CategoriesRemoved = This signal is emitted when a list of categories and associated content has been removed from the database.</line> - </doc> - <arg direction="out" name="categories" type="au"> - <doc> - <line>categories (of type CategoryID) = List of categories removed.</line> - <line>lineComment to be defined</line> - </doc> - </arg> - </signal> - <signal name="POIAdded"> - <doc> - <line>POIAdded = POIAdded = This signal is emitted when a list of POIs and associated content has been added to the database. It returns the ids.</line> - </doc> - <arg direction="out" name="pois" type="au"> - <doc> - <line>pois (of type POI_ID) = List of unique ids of POIs added. The order is the same as the order in the AddPOIs method.</line> - <line>lineComment to be defined</line> - </doc> - </arg> - </signal> - <signal name="POIRemoved"> - <doc> - <line>POIRemoved = POIRemoved = This signal is emitted when a list of POIs and associated content has been removed from the database.</line> - </doc> - <arg direction="out" name="pois" type="au"> - <doc> - <line>pois (of type POI_ID) = List of unique ids of POIs removed.</line> - <line>lineComment to be defined</line> - </doc> - </arg> - </signal> - </interface> -</node> diff --git a/api/poi-service/genivi-poiservice-poicontentaccess.xml b/api/poi-service/genivi-poiservice-poicontentaccess.xml index d0d31c1..f8d3abb 100644 --- a/api/poi-service/genivi-poiservice-poicontentaccess.xml +++ b/api/poi-service/genivi-poiservice-poicontentaccess.xml @@ -87,7 +87,7 @@ <line>camId = Content access module unique id as known by the POI service component.</line> </doc> </arg> - <arg name="poiCategories" type="a((auvssv)a(usia(isv))a(us))" direction="in"> + <arg name="poiCategories" type="a((au(yv)ss(yv))a(usia(is(yv)))a(us))" direction="in"> <doc> <line>poiCategories = array[details, attributes, sortOptions]</line> <line>List of details for all the POI categories.</line> @@ -138,7 +138,7 @@ <line>camId = Content access module unique id as known by the POI service component.</line> </doc> </arg> - <arg name="poiCategories" type="a(ua(usia(isv))a(us))" direction="in"> + <arg name="poiCategories" type="a(ua(usia(is(yv)))a(us))" direction="in"> <doc> <line>poiCategories = array[unique_id, attributes, sortOptions]</line> <line>List of attributes to update.</line> diff --git a/api/poi-service/genivi-poiservice-poisearch.xml b/api/poi-service/genivi-poiservice-poisearch.xml index 40a5e91..7cb0985 100644 --- a/api/poi-service/genivi-poiservice-poisearch.xml +++ b/api/poi-service/genivi-poiservice-poisearch.xml @@ -126,9 +126,9 @@ <line>Note: A POI category is a unique ID. It could be a predifined category or a custom one defined by a POI plug-in.</line> </doc> </arg> - <arg name="results" type="a((uauvsbsv)a(usia(isv))a(us))" direction="out"> + <arg name="results" type="a((uau(yv)sbs(yv))a(usia(is(yv)))a(us))" direction="out"> <doc> - <line>results = array[details, attributes, sortOptions]</line> + <line>results = array[details, attributeList, sortOptions]</line> <line>results = List of details for all the POI categories.</line> <line>details = struct(unique_id, list of parents_id, icons, name, top_level, short_desc, media)]</line> <line>unique_id = Category unique id</line> @@ -138,7 +138,7 @@ <line>top_level = true if the category is a predefined one (top level), false for customized categories created by plug-in.</line> <line>short_desc = short category description (optional)</line> <line>media = media associated (html web site, audio, video, ...) (optional)</line> - <line>attributes = array[struct(id, name, type, array[struct(operator_type, operator_name, operator_value)])</line> + <line>attributeList = array[struct(id, name, type, array[struct(operator_type, operator_name, operator_value)])</line> <line>id = attribute unique id</line> <line>name = attribute unique name</line> <line>type = enum(INVALID,STRING,INTEGER,COORDINATES ...)</line> @@ -210,7 +210,7 @@ <line>poiSearchHandle = poi search unique handle</line> </doc> </arg> - <arg name="location" type="(ddi)" direction="in"> + <arg name="location" type="(ddd)" direction="in"> <doc> <line>location = struct(lat,lon,alt)</line> <line>lat = latitude of a vertex of the polygon in format %3.6f. Range [-90:+90]. Example: 48.053250</line> @@ -245,12 +245,12 @@ <line>poiSearchHandle = poi search unique handle</line> </doc> </arg> - <arg name="sessionHandle" type="y" direction="in"> + <arg name="sessionHandle" type="u" direction="in"> <doc> <line>sessionHandle = session handle</line> </doc> </arg> - <arg name="routeHandle" type="y" direction="in"> + <arg name="routeHandle" type="u" direction="in"> <doc> <line>routeHandle = route handle.</line> </doc> @@ -324,7 +324,7 @@ <line>poiSearchHandle = poi search unique handle</line> </doc> </arg> - <arg name="poiAttributes" type="a(uuivib)" direction="in"> + <arg name="poiAttributes" type="a(uui(yv)ib)" direction="in"> <doc> <line>poiAtttributes = array[struct(id, categoryId, type, value, oper, mandatory)]</line> <line>id = attribute unique id (see data model)</line> @@ -501,9 +501,9 @@ <line>maxWindowSize = maximum number of elements that should be returned as result</line> </doc> </arg> - <arg name="attributes" type="au" direction="in"> + <arg name="attributeList" type="au" direction="in"> <doc> - <line>attributes = List of attributes id to retrieve. This is optional and the list could be empty.</line> + <line>attributeList = List of attributes id to retrieve. This is optional and the list could be empty.</line> </doc> </arg> <arg name="statusValue" type="q" direction="out"> @@ -516,13 +516,13 @@ <line>resultListSize = Number of items of the results list</line> </doc> </arg> - <arg name="resultListWindow" type="a(uuqa(uiv))" direction="out"> + <arg name="resultListWindow" type="a(uuqa(ui(yv)))" direction="out"> <doc> - <line>resultListWindow = array[unique_id, distance, route_status, attributes]</line> + <line>resultListWindow = array[unique_id, distance, route_status, attributeList]</line> <line>unique_id = POI unique id</line> <line>distance = distance in meters to poi from center of the search or from vehicle if search along</line> <line>route_status = enum(OFF_ROUTE,ON_ROUTE,INSIDE_CORRIDOR, ... )</line> - <line>attributes = array[struct(id, type, value)]</line> + <line>attributeList = array[struct(id, type, value)]</line> <line>List of attributes requested. It could be empty.</line> <line>id = attribute unique id (see data model)</line> <line>type = enum(INVALID,STRING,INTEGER,COORDINATES ...)</line> @@ -550,9 +550,9 @@ <line>list of poi = Unique poi id</line> </doc> </arg> - <arg name="results" type="a((us(ddi))aua(uiv))" direction="out"> + <arg name="results" type="a((us(ddd))aua(ui(yv)))" direction="out"> <doc> - <line>results = array[details, categories, attributes]</line> + <line>results = array[details, categories, attributeList]</line> <line>results = List of details for all the POI.</line> <line>details = struct(unique id, name, location)</line> <line>unique id = POI id</line> @@ -563,7 +563,7 @@ <line>alt = altitude above the sea level of the current position in meters</line> <line>categories = array[id]</line> <line>id = enum(INVALID,ALL_CATEGORIES,AIRPORT,RESTAURANT,HOTEL,GAZ_STATION,CAR_PARK, ...)</line> - <line>attributes = array[struct(id, type, value)]</line> + <line>attributeList = array[struct(id, type, value)]</line> <line>List of attributes requested. It could be empty.</line> <line>id = attribute unique id (see data model)</line> <line>type = enum(INVALID,STRING,INTEGER,COORDINATES ...)</line> |