Support new generated CustomFeatureFlags
* Broaden jarjar Flags rules for NFC. Note that this brings the NFC rules in line with other packages
* Opt classes named CustomFeatureFlags into Ravenwood
Flag: none
Bug: 336768870
Test: presubmit
Change-Id: Ib1e76ebd04915554f464ec9a3d101b07925e18be
diff --git a/nfc/jarjar-rules.txt b/nfc/jarjar-rules.txt
index 4cd652d..6304c86 100644
--- a/nfc/jarjar-rules.txt
+++ b/nfc/jarjar-rules.txt
@@ -26,9 +26,8 @@
rule android.os.PersistableBundleProto* com.android.nfc.x.@0
# Used by framework-nfc for reading trunk stable flags
-rule android.nfc.FakeFeatureFlagsImpl* com.android.nfc.x.@0
-rule android.nfc.FeatureFlags* com.android.nfc.x.@0
-rule android.nfc.Flags* com.android.nfc.x.@0
+rule android.nfc.*Flags* com.android.nfc.x.@0
+rule android.nfc.Flags com.android.nfc.x.@0
rule android.permission.flags.** com.android.nfc.x.@0
# Used by framework-nfc for misc utilities
diff --git a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/AndroidHeuristicsFilter.kt b/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/AndroidHeuristicsFilter.kt
index 8ca4732..a712ac0 100644
--- a/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/AndroidHeuristicsFilter.kt
+++ b/tools/hoststubgen/hoststubgen/src/com/android/hoststubgen/filters/AndroidHeuristicsFilter.kt
@@ -47,6 +47,8 @@
}
/**
+ * Effectively apply @RavenwoodKeepWholeClass to all classes with these names
+ *
* @return if a given class "seems like" an feature flags class.
*/
private fun ClassNodes.isFeatureFlagsClass(className: String): Boolean {
@@ -55,5 +57,6 @@
return className.endsWith("/Flags")
|| className.endsWith("/FeatureFlags")
|| className.endsWith("/FeatureFlagsImpl")
+ || className.endsWith("/CustomFeatureFlags")
|| className.endsWith("/FakeFeatureFlagsImpl");
}