diff options
Diffstat (limited to 'src/components/policy/policy_regular/include/policy/policy_table/types.h')
-rw-r--r-- | src/components/policy/policy_regular/include/policy/policy_table/types.h | 61 |
1 files changed, 60 insertions, 1 deletions
diff --git a/src/components/policy/policy_regular/include/policy/policy_table/types.h b/src/components/policy/policy_regular/include/policy/policy_table/types.h index e201251745..e41069a86c 100644 --- a/src/components/policy/policy_regular/include/policy/policy_table/types.h +++ b/src/components/policy/policy_regular/include/policy/policy_table/types.h @@ -50,6 +50,8 @@ struct MessageLanguages; struct MessageString; struct RpcParameters; struct Rpcs; +struct AppServiceHandledRpc; +struct AppServiceInfo; } // namespace policy_table_interface_base } // namespace rpc @@ -98,6 +100,13 @@ typedef Array<Enum<RequestType>, 0, 255> RequestTypes; typedef Strings RequestSubTypes; +typedef String<0, 255> AppServiceType; +typedef String<0, 255> AppServiceName; +typedef Array<AppServiceName, 0, 255> AppServiceNames; +typedef Array<AppServiceHandledRpc, 0, 255> AppServiceHandledRpcs; +typedef Map<AppServiceInfo, 0, 255> AppServiceParameters; +typedef Integer<int32_t, 0, INT32_MAX> FunctionIDInt; + typedef Map<Strings, 0, 255> RemoteRpcs; typedef Map<RemoteRpcs, 0, 255> AccessModules; typedef Array<Enum<ModuleType>, 0, 255> ModuleTypes; @@ -105,6 +114,45 @@ typedef Array<Enum<ModuleType>, 0, 255> ModuleTypes; typedef AppHMIType AppHmiType; typedef std::vector<AppHMIType> AppHmiTypes; +struct AppServiceHandledRpc : CompositeType { + public: + FunctionIDInt function_id; + + public: + AppServiceHandledRpc(); + ~AppServiceHandledRpc(); + AppServiceHandledRpc(const Json::Value* value__); + Json::Value ToJsonValue() const; + bool is_valid() const; + bool is_initialized() const; + bool struct_empty() const; + virtual void SetPolicyTableType(PolicyTableType pt_type); + void ReportErrors(rpc::ValidationReport* report__) const; + + private: + bool Validate() const; +}; + +struct AppServiceInfo : CompositeType { + public: + Optional<AppServiceNames> service_names; + AppServiceHandledRpcs handled_rpcs; + + public: + AppServiceInfo(); + ~AppServiceInfo(); + AppServiceInfo(const Json::Value* value__); + Json::Value ToJsonValue() const; + bool is_valid() const; + bool is_initialized() const; + bool struct_empty() const; + virtual void SetPolicyTableType(PolicyTableType pt_type); + void ReportErrors(rpc::ValidationReport* report__) const; + + private: + bool Validate() const; +}; + struct PolicyBase : CompositeType { public: Enum<Priority> priority; @@ -142,8 +190,19 @@ struct ApplicationParams : PolicyBase { Optional<RequestSubTypes> RequestSubType; Optional<Integer<uint16_t, 0, 65225> > memory_kb; Optional<Integer<uint32_t, 0, UINT_MAX> > heart_beat_timeout_ms; - Optional<String<0, 255> > certificate; + Optional<String<0, 65535> > certificate; mutable Optional<ModuleTypes> moduleType; + // Cloud application params + Optional<Enum<HybridAppPreference> > hybrid_app_preference; + Optional<String<0, 255> > endpoint; + Optional<Boolean> enabled; + Optional<String<0, 65535> > auth_token; + Optional<String<0, 255> > cloud_transport_type; + Optional<String<0, 65535> > icon_url; + + // App Service Params + Optional<AppServiceParameters> app_service_parameters; + Optional<Boolean> allow_unknown_rpc_passthrough; public: ApplicationParams(); |