Remove HiddenApiAccessFlags, move content to hiddenapi::
Hiddenapi code in runtime/ has all code in the hiddenapi:: namespace
instead of using a class as a wrapper. Refactor HiddenApiAccessFlags
for consistency. Also turn ApiList into `enum class` for stricter
type checks.
Test: m test-art
Change-Id: Ifb3c443ea43860476abd4fd3d4934cd14e2cdcc1
diff --git a/runtime/hidden_api.h b/runtime/hidden_api.h
index c16e7f3..57f1a59 100644
--- a/runtime/hidden_api.h
+++ b/runtime/hidden_api.h
@@ -68,8 +68,8 @@
kAccessDenied = 1 << 1,
};
-inline Action GetActionFromAccessFlags(HiddenApiAccessFlags::ApiList api_list) {
- if (api_list == HiddenApiAccessFlags::kWhitelist) {
+inline Action GetActionFromAccessFlags(ApiList api_list) {
+ if (api_list == ApiList::kWhitelist) {
return kAllow;
}
@@ -85,9 +85,9 @@
}
DCHECK(policy >= EnforcementPolicy::kDarkGreyAndBlackList);
// The logic below relies on equality of values in the enums EnforcementPolicy and
- // HiddenApiAccessFlags::ApiList, and their ordering. Assertions are in hidden_api.cc.
+ // ApiList, and their ordering. Assertions are in hidden_api.cc.
if (static_cast<int>(policy) > static_cast<int>(api_list)) {
- return api_list == HiddenApiAccessFlags::kDarkGreylist
+ return api_list == ApiList::kDarkGreylist
? kAllowButWarnAndToast
: kAllowButWarn;
} else {
@@ -144,14 +144,14 @@
bool IsExempted(const std::vector<std::string>& exemptions);
- void WarnAboutAccess(AccessMethod access_method, HiddenApiAccessFlags::ApiList list);
+ void WarnAboutAccess(AccessMethod access_method, ApiList list);
void LogAccessToEventLog(AccessMethod access_method, Action action_taken);
};
template<typename T>
Action GetMemberActionImpl(T* member,
- HiddenApiAccessFlags::ApiList api_list,
+ ApiList api_list,
Action action,
AccessMethod access_method)
REQUIRES_SHARED(Locks::mutator_lock_);
@@ -208,7 +208,7 @@
// cannot change Java semantics. We should, however, decode the access flags
// once and use it throughout this function, otherwise we may get inconsistent
// results, e.g. print whitelist warnings (b/78327881).
- HiddenApiAccessFlags::ApiList api_list = member->GetHiddenApiAccessFlags();
+ ApiList api_list = member->GetHiddenApiAccessFlags();
Action action = GetActionFromAccessFlags(member->GetHiddenApiAccessFlags());
if (action == kAllow) {