summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJackLivio <jack@livio.io>2018-09-20 15:58:36 -0400
committerJackLivio <jack@livio.io>2018-09-20 15:58:36 -0400
commit67fdb552dc89c9e0c911937a8ac8a825f11dfb49 (patch)
treebca75d450e26781540cf4739a8e5383d427f5edb
parent55a73f739d9d92d975b9c7d95c3b3001a007c8d1 (diff)
downloadsdl_core-67fdb552dc89c9e0c911937a8ac8a825f11dfb49.tar.gz
Update based on comments
-rw-r--r--src/components/policy/policy_external/src/policy_manager_impl.cc60
-rw-r--r--src/components/policy/policy_regular/src/policy_manager_impl.cc62
2 files changed, 51 insertions, 71 deletions
diff --git a/src/components/policy/policy_external/src/policy_manager_impl.cc b/src/components/policy/policy_external/src/policy_manager_impl.cc
index 649bcb8ea6..ce0e8d0588 100644
--- a/src/components/policy/policy_external/src/policy_manager_impl.cc
+++ b/src/components/policy/policy_external/src/policy_manager_impl.cc
@@ -294,7 +294,7 @@ void FilterInvalidFunctions(policy_table::Rpc& rpcs) {
*/
void FilterInvalidRPCParameters(policy_table::RpcParameters& rpc_parameters) {
policy_table::HmiLevels valid_hmi_levels;
- for (auto& hmi_level : rpc_parameters.hmi_levels) {
+ for (const auto& hmi_level : rpc_parameters.hmi_levels) {
if (hmi_level.is_valid()) {
valid_hmi_levels.push_back(hmi_level);
}
@@ -302,7 +302,7 @@ void FilterInvalidRPCParameters(policy_table::RpcParameters& rpc_parameters) {
rpc_parameters.hmi_levels.swap(valid_hmi_levels);
policy_table::Parameters valid_params;
- for (auto& param : *(rpc_parameters.parameters)) {
+ for (const auto& param : *(rpc_parameters.parameters)) {
if (param.is_valid()) {
valid_params.push_back(param);
}
@@ -311,11 +311,12 @@ void FilterInvalidRPCParameters(policy_table::RpcParameters& rpc_parameters) {
}
/**
- * @brief FilterInvalidNotifications filter notification priorities that are not
+ * @brief FilterInvalidPriorityValues filter notification priorities that are
+ * not
* present in schema
- * @param notification priorities to filter
+ * @param notifications priorities to filter
*/
-void FilterInvalidNotifications(
+void FilterInvalidPriorityValues(
policy_table::NumberOfNotificationsPerMinute& notifications) {
policy_table::NumberOfNotificationsPerMinute valid_notifications;
for (const auto& notification : notifications) {
@@ -330,13 +331,13 @@ void FilterInvalidNotifications(
/**
* @brief FilterInvalidApplicationParameters filter app params that are not
* present in schema
- * @param object of app policy params to filter
+ * @param app_params object of app policy params to filter
*/
void FilterInvalidApplicationParameters(
policy_table::ApplicationParams& app_params) {
// Filter AppHMIType array
policy_table::AppHMITypes valid_app_hmi_types;
- policy_table::AppHMITypes app_hmi_types = *(app_params.AppHMIType);
+ const policy_table::AppHMITypes& app_hmi_types = *(app_params.AppHMIType);
for (const auto& app_hmi_type : app_hmi_types) {
if (app_hmi_type.is_valid()) {
valid_app_hmi_types.push_back(app_hmi_type);
@@ -346,7 +347,7 @@ void FilterInvalidApplicationParameters(
// Filter RquestTypes array
policy_table::RequestTypes valid_request_types;
- policy_table::RequestTypes request_types = *(app_params.RequestType);
+ const policy_table::RequestTypes& request_types = *(app_params.RequestType);
for (const auto& request_type : request_types) {
if (request_type.is_valid()) {
valid_request_types.push_back(request_type);
@@ -354,36 +355,16 @@ void FilterInvalidApplicationParameters(
}
if (valid_request_types.empty() && !request_types.empty()) {
// An empty RequestType array will allow all request types. No valid
- // parameters are in the filtered array, so assign an uninitizlied value to
+ // parameters are in the filtered array, so assign an unitialized value to
// for array to be "omitted"
- policy_table::RequestTypes omitted_request_types;
- *(app_params.RequestType) = omitted_request_types;
- } else {
- app_params.RequestType->swap(valid_request_types);
- }
-
- // Filter RquestSubTypes array
- policy_table::RequestSubTypes valid_request_sub_types;
- policy_table::RequestSubTypes request_sub_types =
- *(app_params.RequestSubType);
- for (const auto& request_sub_type : request_sub_types) {
- if (request_sub_type.is_valid()) {
- valid_request_sub_types.push_back(request_sub_type);
- }
- }
- if (valid_request_types.empty() && !request_types.empty()) {
- // An empty RequestSubType array will allow all request types. No valid
- // parameters are in the filtered array, so assign an uninitizlied value to
- // for array to be "omitted"
- policy_table::RequestTypes omitted_request_types;
- *(app_params.RequestType) = omitted_request_types;
+ *(app_params.RequestType) = policy_table::RequestTypes();
} else {
app_params.RequestType->swap(valid_request_types);
}
// Filter moduleType array
policy_table::ModuleTypes valid_module_types;
- policy_table::ModuleTypes module_types = *(app_params.moduleType);
+ const policy_table::ModuleTypes& module_types = *(app_params.moduleType);
for (const auto& module_type : module_types) {
if (module_type.is_valid()) {
valid_module_types.push_back(module_type);
@@ -391,13 +372,22 @@ void FilterInvalidApplicationParameters(
}
if (valid_module_types.empty() && !module_types.empty()) {
// An empty moduleType array will allow all request types. No valid
- // parameters are in the filtered array, so assign an uninitizlied value to
+ // parameters are in the filtered array, so assign an unitialized value to
// for array to be "omitted"
- policy_table::ModuleTypes omitted_module_types;
- *(app_params.moduleType) = omitted_module_types;
+ *(app_params.moduleType) = policy_table::ModuleTypes();
} else {
app_params.moduleType->swap(valid_module_types);
}
+
+ // Filter default_hmi
+ if (!app_params.default_hmi.is_valid()) {
+ app_params.default_hmi = policy_table::HmiLevel();
+ }
+
+ // Filter priority
+ if (!app_params.priority.is_valid()) {
+ app_params.priority = policy_table::Priority();
+ }
}
/**
@@ -408,7 +398,7 @@ void FilterPolicyTable(policy_table::PolicyTable& pt) {
policy_table::ModuleConfig& module_config = pt.module_config;
if (module_config.is_initialized() &&
module_config.notifications_per_minute_by_priority.is_initialized()) {
- FilterInvalidNotifications(
+ FilterInvalidPriorityValues(
module_config.notifications_per_minute_by_priority);
}
diff --git a/src/components/policy/policy_regular/src/policy_manager_impl.cc b/src/components/policy/policy_regular/src/policy_manager_impl.cc
index 17f0fdebd9..a9619f8bf6 100644
--- a/src/components/policy/policy_regular/src/policy_manager_impl.cc
+++ b/src/components/policy/policy_regular/src/policy_manager_impl.cc
@@ -144,7 +144,7 @@ void PolicyManagerImpl::CheckTriggers() {
}
/**
- * @brief FilterInvalidFunctions filter functions that are not present in schema
+ * @brief FilterInvalidFunctions filter functions that are absent in schema
* @param rpcs list of functions to filter
*/
void FilterInvalidFunctions(policy_table::Rpc& rpcs) {
@@ -166,7 +166,7 @@ void FilterInvalidFunctions(policy_table::Rpc& rpcs) {
*/
void FilterInvalidRPCParameters(policy_table::RpcParameters& rpc_parameters) {
policy_table::HmiLevels valid_hmi_levels;
- for (auto& hmi_level : rpc_parameters.hmi_levels) {
+ for (const auto& hmi_level : rpc_parameters.hmi_levels) {
if (hmi_level.is_valid()) {
valid_hmi_levels.push_back(hmi_level);
}
@@ -174,7 +174,7 @@ void FilterInvalidRPCParameters(policy_table::RpcParameters& rpc_parameters) {
rpc_parameters.hmi_levels.swap(valid_hmi_levels);
policy_table::Parameters valid_params;
- for (auto& param : *(rpc_parameters.parameters)) {
+ for (const auto& param : *(rpc_parameters.parameters)) {
if (param.is_valid()) {
valid_params.push_back(param);
}
@@ -183,11 +183,12 @@ void FilterInvalidRPCParameters(policy_table::RpcParameters& rpc_parameters) {
}
/**
- * @brief FilterInvalidNotifications filter notification priorities that are not
+ * @brief FilterInvalidPriorityValues filter notification priorities that are
+ * not
* present in schema
- * @param notification priorities to filter
+ * @param notifications priorities to filter
*/
-void FilterInvalidNotifications(
+void FilterInvalidPriorityValues(
policy_table::NumberOfNotificationsPerMinute& notifications) {
policy_table::NumberOfNotificationsPerMinute valid_notifications;
for (const auto& notification : notifications) {
@@ -202,13 +203,13 @@ void FilterInvalidNotifications(
/**
* @brief FilterInvalidApplicationParameters filter app params that are not
* present in schema
- * @param object of app policy params to filter
+ * @param app_params object of app policy params to filter
*/
void FilterInvalidApplicationParameters(
policy_table::ApplicationParams& app_params) {
// Filter AppHMIType array
policy_table::AppHMITypes valid_app_hmi_types;
- policy_table::AppHMITypes app_hmi_types = *(app_params.AppHMIType);
+ const policy_table::AppHMITypes& app_hmi_types = *(app_params.AppHMIType);
for (const auto& app_hmi_type : app_hmi_types) {
if (app_hmi_type.is_valid()) {
valid_app_hmi_types.push_back(app_hmi_type);
@@ -218,7 +219,7 @@ void FilterInvalidApplicationParameters(
// Filter RquestTypes array
policy_table::RequestTypes valid_request_types;
- policy_table::RequestTypes request_types = *(app_params.RequestType);
+ const policy_table::RequestTypes& request_types = *(app_params.RequestType);
for (const auto& request_type : request_types) {
if (request_type.is_valid()) {
valid_request_types.push_back(request_type);
@@ -226,36 +227,16 @@ void FilterInvalidApplicationParameters(
}
if (valid_request_types.empty() && !request_types.empty()) {
// An empty RequestType array will allow all request types. No valid
- // parameters are in the filtered array, so assign an uninitizlied value to
+ // parameters are in the filtered array, so assign an unitialized value to
// for array to be "omitted"
- policy_table::RequestTypes omitted_request_types;
- *(app_params.RequestType) = omitted_request_types;
- } else {
- app_params.RequestType->swap(valid_request_types);
- }
-
- // Filter RquestSubTypes array
- policy_table::RequestSubTypes valid_request_sub_types;
- policy_table::RequestSubTypes request_sub_types =
- *(app_params.RequestSubType);
- for (const auto& request_sub_type : request_sub_types) {
- if (request_sub_type.is_valid()) {
- valid_request_sub_types.push_back(request_sub_type);
- }
- }
- if (valid_request_types.empty() && !request_types.empty()) {
- // An empty RequestSubType array will allow all request types. No valid
- // parameters are in the filtered array, so assign an uninitizlied value to
- // for array to be "omitted"
- policy_table::RequestTypes omitted_request_types;
- *(app_params.RequestType) = omitted_request_types;
+ *(app_params.RequestType) = policy_table::RequestTypes();
} else {
app_params.RequestType->swap(valid_request_types);
}
// Filter moduleType array
policy_table::ModuleTypes valid_module_types;
- policy_table::ModuleTypes module_types = *(app_params.moduleType);
+ const policy_table::ModuleTypes& module_types = *(app_params.moduleType);
for (const auto& module_type : module_types) {
if (module_type.is_valid()) {
valid_module_types.push_back(module_type);
@@ -263,13 +244,22 @@ void FilterInvalidApplicationParameters(
}
if (valid_module_types.empty() && !module_types.empty()) {
// An empty moduleType array will allow all request types. No valid
- // parameters are in the filtered array, so assign an uninitizlied value to
+ // parameters are in the filtered array, so assign an unitialized value to
// for array to be "omitted"
- policy_table::ModuleTypes omitted_module_types;
- *(app_params.moduleType) = omitted_module_types;
+ *(app_params.moduleType) = policy_table::ModuleTypes();
} else {
app_params.moduleType->swap(valid_module_types);
}
+
+ // Filter default_hmi
+ if (!app_params.default_hmi.is_valid()) {
+ app_params.default_hmi = policy_table::HmiLevel();
+ }
+
+ // Filter priority
+ if (!app_params.priority.is_valid()) {
+ app_params.priority = policy_table::Priority();
+ }
}
/**
@@ -280,7 +270,7 @@ void FilterPolicyTable(policy_table::PolicyTable& pt) {
policy_table::ModuleConfig& module_config = pt.module_config;
if (module_config.is_initialized() &&
module_config.notifications_per_minute_by_priority.is_initialized()) {
- FilterInvalidNotifications(
+ FilterInvalidPriorityValues(
module_config.notifications_per_minute_by_priority);
}