From 97bdc29480adc4628f451c79beb2a64d36c8ebe7 Mon Sep 17 00:00:00 2001 From: Beverly Date: Mon, 8 May 2023 16:04:15 +0000 Subject: [PATCH] Move toTriple/Quad/Quint methods to a Utils class Bug: 278719514 Test: atest KeyguardTransitionScenariosTest Change-Id: I8720d8f97269994d2c6c934fd9b61f5d30506b57 --- ...romAlternateBouncerTransitionInteractor.kt | 2 + .../FromDreamingTransitionInteractor.kt | 2 +- .../FromGoneTransitionInteractor.kt | 1 + .../FromLockscreenTransitionInteractor.kt | 4 +- .../FromOccludedTransitionInteractor.kt | 2 +- .../FromPrimaryBouncerTransitionInteractor.kt | 5 ++- .../domain/interactor/TransitionInteractor.kt | 24 ----------- .../com/android/systemui/util/kotlin/Utils.kt | 40 +++++++++++++++++++ 8 files changed, 51 insertions(+), 29 deletions(-) create mode 100644 packages/SystemUI/src/com/android/systemui/util/kotlin/Utils.kt diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractor.kt index cde67f979132a..38eaccee7284a 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractor.kt @@ -24,6 +24,8 @@ import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepositor import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionInfo import com.android.systemui.keyguard.shared.model.WakefulnessState +import com.android.systemui.util.kotlin.Utils.Companion.toQuad +import com.android.systemui.util.kotlin.Utils.Companion.toQuint import com.android.systemui.util.kotlin.sample import javax.inject.Inject import kotlinx.coroutines.CoroutineScope diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDreamingTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDreamingTransitionInteractor.kt index fc7bfb4e45f4e..36c8eb1869240 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDreamingTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromDreamingTransitionInteractor.kt @@ -26,13 +26,13 @@ import com.android.systemui.keyguard.shared.model.DozeStateModel import com.android.systemui.keyguard.shared.model.DozeStateModel.Companion.isDozeOff import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionInfo +import com.android.systemui.util.kotlin.Utils.Companion.toTriple import com.android.systemui.util.kotlin.sample import javax.inject.Inject import kotlin.time.Duration import kotlin.time.Duration.Companion.milliseconds import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.delay -import kotlinx.coroutines.flow.collect import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.onEach import kotlinx.coroutines.launch diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGoneTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGoneTransitionInteractor.kt index 39c630b1fa6fc..cfcb65471d8b2 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGoneTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromGoneTransitionInteractor.kt @@ -24,6 +24,7 @@ import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepositor import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionInfo import com.android.systemui.keyguard.shared.model.WakefulnessState +import com.android.systemui.util.kotlin.Utils.Companion.toTriple import com.android.systemui.util.kotlin.sample import javax.inject.Inject import kotlin.time.Duration diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt index 0505d37262b0c..b5e289f2ac6ea 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt @@ -27,6 +27,8 @@ import com.android.systemui.keyguard.shared.model.TransitionInfo import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.WakefulnessState import com.android.systemui.shade.data.repository.ShadeRepository +import com.android.systemui.util.kotlin.Utils.Companion.toQuad +import com.android.systemui.util.kotlin.Utils.Companion.toTriple import com.android.systemui.util.kotlin.sample import java.util.UUID import javax.inject.Inject @@ -144,7 +146,7 @@ constructor( keyguardTransitionInteractor.startedKeyguardTransitionStep, keyguardInteractor.statusBarState, keyguardInteractor.isKeyguardUnlocked, - ::toTriple + ::Triple ), ::toQuad ) diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromOccludedTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromOccludedTransitionInteractor.kt index 47846d1f41189..b0dbc591dd153 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromOccludedTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromOccludedTransitionInteractor.kt @@ -24,12 +24,12 @@ import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepositor import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionInfo import com.android.systemui.keyguard.shared.model.WakefulnessState +import com.android.systemui.util.kotlin.Utils.Companion.toTriple import com.android.systemui.util.kotlin.sample import javax.inject.Inject import kotlin.time.Duration import kotlin.time.Duration.Companion.milliseconds import kotlinx.coroutines.CoroutineScope -import kotlinx.coroutines.flow.collect import kotlinx.coroutines.flow.combine import kotlinx.coroutines.launch diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromPrimaryBouncerTransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromPrimaryBouncerTransitionInteractor.kt index bc55bd4b8c924..da09e1f0f4d23 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromPrimaryBouncerTransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromPrimaryBouncerTransitionInteractor.kt @@ -27,6 +27,7 @@ import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepositor import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionInfo import com.android.systemui.keyguard.shared.model.WakefulnessState +import com.android.systemui.util.kotlin.Utils.Companion.toQuad import com.android.systemui.util.kotlin.sample import javax.inject.Inject import kotlin.time.Duration @@ -60,7 +61,7 @@ constructor( keyguardInteractor.wakefulnessModel, keyguardTransitionInteractor.startedKeyguardTransitionStep, keyguardInteractor.isKeyguardOccluded, - ::toTriple + ::Triple ), ::toQuad ) @@ -100,7 +101,7 @@ constructor( keyguardInteractor.wakefulnessModel, keyguardTransitionInteractor.startedKeyguardTransitionStep, keyguardInteractor.isAodAvailable, - ::toTriple + ::Triple ), ::toQuad ) diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/TransitionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/TransitionInteractor.kt index e3e3527e851f2..b7dd1a5f42b5d 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/TransitionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/TransitionInteractor.kt @@ -27,29 +27,5 @@ package com.android.systemui.keyguard.domain.interactor * 'when' clause of [KeyguardTransitionCoreStartable] */ sealed class TransitionInteractor(val name: String) { - abstract fun start() - - fun toTriple(a: A, b: B, c: C) = Triple(a, b, c) - - fun toTriple(a: A, bc: Pair) = Triple(a, bc.first, bc.second) - - fun toTriple(ab: Pair, c: C) = Triple(ab.first, ab.second, c) - - fun toQuad(a: A, b: B, c: C, d: D) = Quad(a, b, c, d) - - fun toQuad(a: A, bcd: Triple) = Quad(a, bcd.first, bcd.second, bcd.third) - - fun toQuint(a: A, bcde: Quad) = - Quint(a, bcde.first, bcde.second, bcde.third, bcde.fourth) } - -data class Quad(val first: A, val second: B, val third: C, val fourth: D) - -data class Quint( - val first: A, - val second: B, - val third: C, - val fourth: D, - val fifth: E -) diff --git a/packages/SystemUI/src/com/android/systemui/util/kotlin/Utils.kt b/packages/SystemUI/src/com/android/systemui/util/kotlin/Utils.kt new file mode 100644 index 0000000000000..73e2f97d92ae1 --- /dev/null +++ b/packages/SystemUI/src/com/android/systemui/util/kotlin/Utils.kt @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2023 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.util.kotlin + +class Utils { + companion object { + fun toTriple(a: A, bc: Pair) = Triple(a, bc.first, bc.second) + + fun toQuad(a: A, b: B, c: C, d: D) = Quad(a, b, c, d) + fun toQuad(a: A, bcd: Triple) = + Quad(a, bcd.first, bcd.second, bcd.third) + + fun toQuint(a: A, bcde: Quad) = + Quint(a, bcde.first, bcde.second, bcde.third, bcde.fourth) + } +} + +data class Quad(val first: A, val second: B, val third: C, val fourth: D) + +data class Quint( + val first: A, + val second: B, + val third: C, + val fourth: D, + val fifth: E +)