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

Commit 005ad540 authored by Lyn Han's avatar Lyn Han Committed by Android (Google) Code Review
Browse files

Merge "Collect and log isCooldownEnabled flow" into main

parents 5ce711ec 89e763a4
Loading
Loading
Loading
Loading
+21 −2
Original line number Diff line number Diff line
@@ -16,17 +16,23 @@

package com.android.systemui.statusbar.notification.data

import com.android.systemui.CoreStartable
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Application
import com.android.systemui.dagger.qualifiers.Background
import com.android.systemui.settings.SecureSettingsRepositoryModule
import com.android.systemui.settings.SystemSettingsRepositoryModule
import com.android.systemui.shared.notifications.data.repository.NotificationSettingsRepository
import com.android.systemui.shared.settings.data.repository.SecureSettingsRepository
import com.android.systemui.shared.settings.data.repository.SystemSettingsRepository
import com.android.systemui.statusbar.notification.interruption.VisualInterruptionDecisionLogger
import dagger.Module
import dagger.Provides
import dagger.multibindings.ClassKey
import dagger.multibindings.IntoMap
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.launch

@Module(includes = [SecureSettingsRepositoryModule::class, SystemSettingsRepositoryModule::class])
object NotificationSettingsRepositoryModule {
@@ -42,6 +48,19 @@ object NotificationSettingsRepositoryModule {
            backgroundScope,
            backgroundDispatcher,
            secureSettingsRepository,
            systemSettingsRepository
        )
            systemSettingsRepository)

    @Provides
    @IntoMap
    @ClassKey(NotificationSettingsRepository::class)
    @SysUISingleton
    fun provideCoreStartable(
        @Application applicationScope: CoroutineScope,
        repository: NotificationSettingsRepository,
        logger: VisualInterruptionDecisionLogger
    ) = CoreStartable {
        applicationScope.launch {
            repository.isCooldownEnabled.collect { value -> logger.logCooldownSetting(value) }
        }
    }
}
+9 −0
Original line number Diff line number Diff line
@@ -102,6 +102,15 @@ constructor(@NotificationInterruptLog val buffer: LogBuffer) {
            { "AvalancheSuppressor: $str1" }
        )
    }

    fun logCooldownSetting(isEnabled: Boolean) {
        buffer.log(
            TAG,
            INFO,
            { bool1 = isEnabled },
            { "Cooldown enabled: $isEnabled" }
        )
    }
}

private const val TAG = "VisualInterruptionDecisionProvider"