Merge "Added a debug and release version of flag reader" into sc-v2-dev am: 653657d97d

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16040959

Change-Id: I0f1388cc3f4d7350e1ecba5d2e954cce49fec48f
This commit is contained in:
Dave Mankoff
2021-10-13 20:12:33 +00:00
committed by Automerger Merge Worker
3 changed files with 95 additions and 0 deletions

View File

@@ -50,6 +50,16 @@ java_library {
srcs: ["src/com/android/systemui/EventLogTags.logtags"], srcs: ["src/com/android/systemui/EventLogTags.logtags"],
} }
filegroup {
name: "ReleaseJavaFiles",
srcs: ["src/com/android/systemui/flags/FeatureFlagManager.java"],
}
filegroup {
name: "DebugJavaFiles",
srcs: ["src-debug/com/android/systemui/flags/FeatureFlagManager.java"],
}
android_library { android_library {
name: "SystemUI-core", name: "SystemUI-core",
srcs: [ srcs: [
@@ -57,6 +67,12 @@ android_library {
"src/**/*.java", "src/**/*.java",
"src/**/I*.aidl", "src/**/I*.aidl",
], ],
product_variables: {
debuggable: {
srcs: [":DebugJavaFiles"],
exclude_srcs: [":ReleaseJavaFiles"],
},
},
resource_dirs: [ resource_dirs: [
"res-product", "res-product",
"res-keyguard", "res-keyguard",

View File

@@ -0,0 +1,43 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.systemui.flags;
import android.util.ArraySet;
import com.android.systemui.dagger.SysUISingleton;
/**
* Concrete implementation of the a Flag manager that returns default values for debug builds
*/
@SysUISingleton
public class FeatureFlagManager {
public boolean isEnabled(int key, boolean defaultValue) {
return isEnabled(Integer.toString(key), defaultValue);
}
public boolean isEnabled(String key, boolean defaultValue) {
// TODO
return false;
}
public void setEnabled(int key, boolean value) {
setEnabled(Integer.toString(key), value);
}
public void setEnabled(String key, boolean value) {
// TODO
}
}

View File

@@ -0,0 +1,36 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.systemui.flags;
import com.android.systemui.dagger.SysUISingleton;
/**
* Default implementation of the a Flag manager that returns default values for release builds
*/
@SysUISingleton
public class FeatureFlagManager {
public boolean getBoolean(int key, boolean defaultValue) {
return defaultValue;
}
public void setBoolean(int key, boolean value) {}
public boolean getBoolean(String key, boolean defaultValue) {
return defaultValue;
}
public void setBoolean(String key, boolean value) {}
public void addFlagChangedListener(Runnable run) {}
public void removeFlagUpdatedListener(Runnable run) {}
}