1 package com.android.systemui.qs.pipeline.shared
2 
3 import com.android.systemui.Flags as AconfigFlags
4 import com.android.systemui.dagger.SysUISingleton
5 import com.android.systemui.flags.RefactorFlagUtils
6 import javax.inject.Inject
7 
8 /** Encapsulate the different QS pipeline flags and their dependencies */
9 @SysUISingleton
10 class QSPipelineFlagsRepository @Inject constructor() {
11 
12     val pipelineEnabled: Boolean
13         get() = AconfigFlags.qsNewPipeline()
14 
15     val tilesEnabled: Boolean
16         get() = AconfigFlags.qsNewTiles()
17 
18     companion object Utils {
assertInLegacyModenull19         fun assertInLegacyMode() =
20             RefactorFlagUtils.assertInLegacyMode(
21                 AconfigFlags.qsNewPipeline(),
22                 AconfigFlags.FLAG_QS_NEW_PIPELINE
23             )
24 
25         fun assertNewTiles() =
26             RefactorFlagUtils.assertInNewMode(
27                 AconfigFlags.qsNewTiles(),
28                 AconfigFlags.FLAG_QS_NEW_TILES
29             )
30     }
31 }
32