blob: 95a7f3b0fa78474c13e8279c5882da955ed7bed7 [file] [log] [blame]
Zhi Dou4655c962023-06-12 15:56:03 +00001package {package_name};
2
Mårten Kongstad65efa272023-09-11 12:17:25 +00003/** @hide */
Zhi Dou4655c962023-06-12 15:56:03 +00004public final class Flags \{
Zhi Doua41cc5e2023-06-29 15:01:56 +00005{{- for item in class_elements}}
Mårten Kongstada2e152a2023-06-19 16:11:33 +02006 public static final String FLAG_{item.flag_name_constant_suffix} = "{item.device_config_flag}";
Zhi Doua41cc5e2023-06-29 15:01:56 +00007{{- endfor }}
8{{ for item in class_elements}}
Zhi Doudeafa792023-09-05 18:22:46 +00009{{ -if not item.is_read_write }}
10{{ -if item.default_value }}
11 @com.android.aconfig.annotations.AssumeTrueForR8
12{{ -else }}
13 @com.android.aconfig.annotations.AssumeFalseForR8
14{{ -endif- }}
15{{ endif }}
Zhi Dou4655c962023-06-12 15:56:03 +000016 public static boolean {item.method_name}() \{
17 return FEATURE_FLAGS.{item.method_name}();
18 }
Zhi Doua41cc5e2023-06-29 15:01:56 +000019{{ endfor }}
20{{ -if is_test_mode }}
Zhi Dou5aaeee32023-08-07 22:54:13 +000021 public static void setFeatureFlags(FeatureFlags featureFlags) \{
Zhi Dou8ba6aa72023-06-26 21:03:40 +000022 Flags.FEATURE_FLAGS = featureFlags;
23 }
24
Zhi Dou5aaeee32023-08-07 22:54:13 +000025 public static void unsetFeatureFlags() \{
Zhi Dou8ba6aa72023-06-26 21:03:40 +000026 Flags.FEATURE_FLAGS = null;
27 }
Zhi Doudeafa792023-09-05 18:22:46 +000028{{ endif }}
Zhi Dou8ba6aa72023-06-26 21:03:40 +000029 private static FeatureFlags FEATURE_FLAGS{{ -if not is_test_mode }} = new FeatureFlagsImpl(){{ -endif- }};
Zhi Dou4655c962023-06-12 15:56:03 +000030
31}