summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2019-12-18 15:58:34 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2019-12-18 15:58:34 +0000
commit5d14634cb478dc2abe1240a9feda22b46ee44f14 (patch)
tree818a6f067d2abc6580619d86e466ff7b2ad831c0
parent7174ed634f0845b0378087e376357005974f89b1 (diff)
parentecd43102cb5e8920d392448fc142b74a68271eea (diff)
Merge "Remove the unnecessary parsing that could be simply eliminated by casting to StringAtomicFormula."
-rw-r--r--services/core/java/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifier.java21
1 files changed, 6 insertions, 15 deletions
diff --git a/services/core/java/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifier.java b/services/core/java/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifier.java
index 4aabb1c87b34..b98522502780 100644
--- a/services/core/java/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifier.java
+++ b/services/core/java/com/android/server/integrity/serializer/RuleIndexingDetailsIdentifier.java
@@ -49,7 +49,8 @@ class RuleIndexingDetailsIdentifier {
case Formula.COMPOUND_FORMULA_TAG:
return getIndexingDetailsForCompoundFormula((CompoundFormula) formula);
case Formula.STRING_ATOMIC_FORMULA_TAG:
- return getIndexingDetailsForAtomicStringFormula((AtomicFormula) formula);
+ return getIndexingDetailsForStringAtomicFormula(
+ (AtomicFormula.StringAtomicFormula) formula);
case Formula.INT_ATOMIC_FORMULA_TAG:
case Formula.BOOLEAN_ATOMIC_FORMULA_TAG:
// Package name and app certificate related formulas are string atomic formulas.
@@ -102,26 +103,16 @@ class RuleIndexingDetailsIdentifier {
}
}
- private static RuleIndexingDetails getIndexingDetailsForAtomicStringFormula(
- AtomicFormula atomicFormula) {
+ private static RuleIndexingDetails getIndexingDetailsForStringAtomicFormula(
+ AtomicFormula.StringAtomicFormula atomicFormula) {
switch (atomicFormula.getKey()) {
case AtomicFormula.PACKAGE_NAME:
- return new RuleIndexingDetails(PACKAGE_NAME_INDEXED,
- getValueFromAtomicRuleString(atomicFormula.toString()));
+ return new RuleIndexingDetails(PACKAGE_NAME_INDEXED, atomicFormula.getValue());
case AtomicFormula.APP_CERTIFICATE:
- return new RuleIndexingDetails(APP_CERTIFICATE_INDEXED,
- getValueFromAtomicRuleString(atomicFormula.toString()));
+ return new RuleIndexingDetails(APP_CERTIFICATE_INDEXED, atomicFormula.getValue());
default:
return new RuleIndexingDetails(NOT_INDEXED);
}
}
-
- // The AtomRule API does not allow direct access to the {@link AtomicFormula} value. However,
- // this value is printed as "(%s %s %s)" where the last %s stands for the value. This method
- // parses the last.
- private static String getValueFromAtomicRuleString(String ruleString) {
- // TODO (b/145488708): Make an API change and get rid of this trick.
- return ruleString.split(" ")[2].split("[)]")[0];
- }
}