summaryrefslogtreecommitdiff
path: root/src/components/application_manager/rpc_plugins/app_service_rpc_plugin
diff options
context:
space:
mode:
authorShobhit Adlakha <ShobhitAd@users.noreply.github.com>2019-03-07 21:43:31 -0500
committerGitHub <noreply@github.com>2019-03-07 21:43:31 -0500
commit3be4d6a8384f5422a040121c11b448a7dd6901fc (patch)
treeeef53c493b759056158ac39b261fcd4e0519b7b3 /src/components/application_manager/rpc_plugins/app_service_rpc_plugin
parent5cc1ad073dd9a05a3bd65499acf0c6b079287a29 (diff)
downloadsdl_core-3be4d6a8384f5422a040121c11b448a7dd6901fc.tar.gz
RPC Passing and Handling unknown RPC parameters (#2821)
* Initial app service app extension * Add GetAppServiceData rpc templates. * Add request to mobile, and fix HMI GASD naming * Add Core->Mobile Requests and Responses * HMI GetAppService Request/Response to hmi and from hmi. * Add mobile on event handling * Fix GASD Response From Mobile * Add PerformAppServiceInteraction RPC * Fixes for GetAppServiceData subscribe, and OnAppServiceData Fixes allow for multiple consumers on a single app service type. Consumer/provider can be any combination of an ios app(s), android app(s), or an ivi HMI app(s). * Update AppServicetype to string and fix unit tests * Implemented RpcPassThroughTimeout param and IncreaseForwardedRequestTimeout function * Address review comments * Fixed build tests * Fix style * Address comments * Address comments * Pass info from provider in GASD response * Implemented boolean paramter to keep/remove unknown RPC paramaters * Added plugin keys * Implemented allowing unknown rpc params if function is handled by AS plugin or is related to SystemCapability * Implemented handling unknown params for OSCU notifications * Fixed build tests * Implemented handling unknown params for RPC Passing * Initial implementation of RPC Passing * fixed UNSUPPORTED_REQUEST case * Moved RPCPassing implementation into seperate class * Implemented passthrough request timeout * Addressed style and formatting comments * Put RPCPassingHandler in seperate file * Removed unused request/response file (based on review comment r263121367) * Fixed timeout implementation * Created functions for handling forwarding requests/responses to core and mobile * Moved Populating request queue functionality to seperate function * Changed implementation to use one map with the original request and a queue of app service information * Fixed timeout implementation * Seperated RPCPassing checks from IsAppServiceRPC checks * Added locks for request and timeout queues * Addressed review comments * Fixed rpc_passing_handler_ initializer and added comments * Reduced scope of locks for rpc_passing_queue
Diffstat (limited to 'src/components/application_manager/rpc_plugins/app_service_rpc_plugin')
-rw-r--r--src/components/application_manager/rpc_plugins/app_service_rpc_plugin/src/app_service_rpc_plugin.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/components/application_manager/rpc_plugins/app_service_rpc_plugin/src/app_service_rpc_plugin.cc b/src/components/application_manager/rpc_plugins/app_service_rpc_plugin/src/app_service_rpc_plugin.cc
index 971e3cc5e0..b96e5c199d 100644
--- a/src/components/application_manager/rpc_plugins/app_service_rpc_plugin/src/app_service_rpc_plugin.cc
+++ b/src/components/application_manager/rpc_plugins/app_service_rpc_plugin/src/app_service_rpc_plugin.cc
@@ -35,11 +35,13 @@
#include "app_service_rpc_plugin/app_service_app_extension.h"
#include "app_service_rpc_plugin/app_service_command_factory.h"
#include "app_service_rpc_plugin/app_service_rpc_plugin.h"
+#include "application_manager/plugin_manager/plugin_keys.h"
namespace app_service_rpc_plugin {
CREATE_LOGGERPTR_GLOBAL(logger_, "AppServiceRpcPlugin")
namespace strings = application_manager::strings;
+namespace plugins = application_manager::plugin_manager;
AppServiceRpcPlugin::AppServiceRpcPlugin() : application_manager_(nullptr) {}
@@ -60,7 +62,7 @@ bool AppServiceRpcPlugin::IsAbleToProcess(
}
std::string AppServiceRpcPlugin::PluginName() {
- return "App Service RPC Plugin";
+ return plugins::plugin_names::app_service_rpc_plugin;
}
app_mngr::CommandFactory& AppServiceRpcPlugin::GetCommandFactory() {