diff options
author | TreeHugger Robot <treehugger-gerrit@google.com> | 2019-12-18 15:58:34 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2019-12-18 15:58:34 +0000 |
commit | 5d14634cb478dc2abe1240a9feda22b46ee44f14 (patch) | |
tree | 818a6f067d2abc6580619d86e466ff7b2ad831c0 | |
parent | 7174ed634f0845b0378087e376357005974f89b1 (diff) | |
parent | ecd43102cb5e8920d392448fc142b74a68271eea (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.java | 21 |
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]; - } } |