package {package_name}; {{ if not is_test_mode }} {{ if is_read_write- }} import android.provider.DeviceConfig; {{ endif }} public final class FeatureFlagsImpl implements FeatureFlags \{ {{ for item in class_elements}} @Override public boolean {item.method_name}() \{ {{ -if item.is_read_write }} return DeviceConfig.getBoolean( "{item.device_config_namespace}", "{item.device_config_flag}", {item.default_value} ); {{ else }} return {item.default_value}; {{ endif- }} } {{ endfor }} } {{ else }} {#- Generate only stub if in test mode #} public final class FeatureFlagsImpl implements FeatureFlags \{ {{ for item in class_elements}} @Override public boolean {item.method_name}() \{ throw new UnsupportedOperationException( "Method is not implemented."); } {{ endfor }} } {{ endif }}