Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5d31679c authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "[Catalyst] Rename PreferenceScreenMetadata{Creator,Factory}" into main

parents 3f55687a fad50c33
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -44,7 +44,7 @@ abstract class GetPreferenceGraphApiHandler(
    ): PreferenceGraphProto {
        val builder = PreferenceGraphBuilder.of(application, callingPid, callingUid, request)
        if (request.screenKeys.isEmpty()) {
            PreferenceScreenRegistry.preferenceScreenMetadataCreators.forEachKeyAsync {
            PreferenceScreenRegistry.preferenceScreenMetadataFactories.forEachKeyAsync {
                builder.addPreferenceScreenFromRegistry(it)
            }
            for (provider in preferenceScreenProviders) {
+4 −4
Original line number Diff line number Diff line
@@ -126,11 +126,11 @@ class PreferenceScreenAnnotationProcessor : AbstractProcessor() {
            it.write("package $outputPkg;\n\n")
            it.write("import $PACKAGE.FixedArrayMap;\n")
            it.write("import $PACKAGE.FixedArrayMap.OrderedInitializer;\n")
            it.write("import $PACKAGE.$CREATOR;\n\n")
            it.write("import $PACKAGE.$FACTORY;\n\n")
            it.write("// Generated by annotation processor for @$ANNOTATION_NAME\n")
            it.write("public final class $outputClass {\n")
            it.write("  private $outputClass() {}\n\n")
            it.write("  public static FixedArrayMap<String, $CREATOR> $outputFun() {\n")
            it.write("  public static FixedArrayMap<String, $FACTORY> $outputFun() {\n")
            val size = screens.size
            it.write("    return new FixedArrayMap<>($size, $outputClass::init);\n")
            it.write("  }\n\n")
@@ -143,7 +143,7 @@ class PreferenceScreenAnnotationProcessor : AbstractProcessor() {
                if (overlay) it.write(" // overlay")
                it.write("\n")
            }
            it.write("  private static void init(OrderedInitializer<String, $CREATOR> screens) {\n")
            it.write("  private static void init(OrderedInitializer<String, $FACTORY> screens) {\n")
            var index = 0
            while (index < size) {
                val screen = screens[index]
@@ -225,7 +225,7 @@ class PreferenceScreenAnnotationProcessor : AbstractProcessor() {
        private const val ANNOTATION_NAME = "ProvidePreferenceScreen"
        private const val ANNOTATION = "$PACKAGE.$ANNOTATION_NAME"
        private const val PREFERENCE_SCREEN_METADATA = "PreferenceScreenMetadata"
        private const val CREATOR = "PreferenceScreenMetadataCreator"
        private const val FACTORY = "PreferenceScreenMetadataFactory"

        private const val OPTIONS_NAME = "ProvidePreferenceScreenOptions"
        private const val OPTIONS = "$PACKAGE.$OPTIONS_NAME"
+2 −2
Original line number Diff line number Diff line
@@ -65,8 +65,8 @@ interface PreferenceScreenMetadata : PreferenceMetadata {
    fun getLaunchIntent(context: Context, metadata: PreferenceMetadata?): Intent? = null
}

/** Creator of [PreferenceScreenMetadata]. */
fun interface PreferenceScreenMetadataCreator {
/** Factory of [PreferenceScreenMetadata]. */
fun interface PreferenceScreenMetadataFactory {

    /**
     * Creates a new [PreferenceScreenMetadata].
+3 −3
Original line number Diff line number Diff line
@@ -26,11 +26,11 @@ object PreferenceScreenRegistry : ReadWritePermitProvider {
    private lateinit var keyValueStoreProvider: KeyValueStoreProvider

    /**
     * Creators of all available [PreferenceScreenMetadata]s.
     * Factories of all available [PreferenceScreenMetadata]s.
     *
     * The map key is preference screen key.
     */
    var preferenceScreenMetadataCreators = FixedArrayMap<String, PreferenceScreenMetadataCreator>()
    var preferenceScreenMetadataFactories = FixedArrayMap<String, PreferenceScreenMetadataFactory>()

    private var readWritePermitProvider: ReadWritePermitProvider =
        object : ReadWritePermitProvider {}
@@ -51,7 +51,7 @@ object PreferenceScreenRegistry : ReadWritePermitProvider {

    /** Creates [PreferenceScreenMetadata] of particular screen key. */
    fun create(context: Context, screenKey: String?): PreferenceScreenMetadata? =
        screenKey?.let { preferenceScreenMetadataCreators[it]?.create(context.applicationContext) }
        screenKey?.let { preferenceScreenMetadataFactories[it]?.create(context.applicationContext) }

    /**
     * Sets the provider to check read write permit. Read and write requests are denied by default.