| /* |
| * Copyright (C) 2019 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.dagger; |
| |
| import com.android.systemui.ActivityStarterDelegate; |
| import com.android.systemui.appops.AppOpsController; |
| import com.android.systemui.appops.AppOpsControllerImpl; |
| import com.android.systemui.classifier.FalsingManagerProxy; |
| import com.android.systemui.controls.dagger.ControlsModule; |
| import com.android.systemui.globalactions.GlobalActionsComponent; |
| import com.android.systemui.globalactions.GlobalActionsImpl; |
| import com.android.systemui.plugins.ActivityStarter; |
| import com.android.systemui.plugins.DarkIconDispatcher; |
| import com.android.systemui.plugins.FalsingManager; |
| import com.android.systemui.plugins.GlobalActions; |
| import com.android.systemui.plugins.VolumeDialogController; |
| import com.android.systemui.plugins.statusbar.StatusBarStateController; |
| import com.android.systemui.power.PowerNotificationWarnings; |
| import com.android.systemui.power.PowerUI; |
| import com.android.systemui.qs.QSHost; |
| import com.android.systemui.qs.QSTileHost; |
| import com.android.systemui.statusbar.NotificationRemoteInputManager; |
| import com.android.systemui.statusbar.StatusBarStateControllerImpl; |
| import com.android.systemui.statusbar.SysuiStatusBarStateController; |
| import com.android.systemui.statusbar.phone.DarkIconDispatcherImpl; |
| import com.android.systemui.statusbar.phone.ManagedProfileController; |
| import com.android.systemui.statusbar.phone.ManagedProfileControllerImpl; |
| import com.android.systemui.statusbar.phone.StatusBarIconController; |
| import com.android.systemui.statusbar.phone.StatusBarIconControllerImpl; |
| import com.android.systemui.statusbar.phone.StatusBarRemoteInputCallback; |
| import com.android.systemui.statusbar.policy.BluetoothController; |
| import com.android.systemui.statusbar.policy.BluetoothControllerImpl; |
| import com.android.systemui.statusbar.policy.CastController; |
| import com.android.systemui.statusbar.policy.CastControllerImpl; |
| import com.android.systemui.statusbar.policy.ExtensionController; |
| import com.android.systemui.statusbar.policy.ExtensionControllerImpl; |
| import com.android.systemui.statusbar.policy.FlashlightController; |
| import com.android.systemui.statusbar.policy.FlashlightControllerImpl; |
| import com.android.systemui.statusbar.policy.HotspotController; |
| import com.android.systemui.statusbar.policy.HotspotControllerImpl; |
| import com.android.systemui.statusbar.policy.KeyguardStateController; |
| import com.android.systemui.statusbar.policy.KeyguardStateControllerImpl; |
| import com.android.systemui.statusbar.policy.LocationController; |
| import com.android.systemui.statusbar.policy.LocationControllerImpl; |
| import com.android.systemui.statusbar.policy.NetworkController; |
| import com.android.systemui.statusbar.policy.NetworkControllerImpl; |
| import com.android.systemui.statusbar.policy.NextAlarmController; |
| import com.android.systemui.statusbar.policy.NextAlarmControllerImpl; |
| import com.android.systemui.statusbar.policy.RotationLockController; |
| import com.android.systemui.statusbar.policy.RotationLockControllerImpl; |
| import com.android.systemui.statusbar.policy.SecurityController; |
| import com.android.systemui.statusbar.policy.SecurityControllerImpl; |
| import com.android.systemui.statusbar.policy.SensorPrivacyController; |
| import com.android.systemui.statusbar.policy.SensorPrivacyControllerImpl; |
| import com.android.systemui.statusbar.policy.UserInfoController; |
| import com.android.systemui.statusbar.policy.UserInfoControllerImpl; |
| import com.android.systemui.statusbar.policy.ZenModeController; |
| import com.android.systemui.statusbar.policy.ZenModeControllerImpl; |
| import com.android.systemui.tuner.TunerService; |
| import com.android.systemui.tuner.TunerServiceImpl; |
| import com.android.systemui.util.RingerModeTracker; |
| import com.android.systemui.util.RingerModeTrackerImpl; |
| import com.android.systemui.volume.VolumeComponent; |
| import com.android.systemui.volume.VolumeDialogComponent; |
| import com.android.systemui.volume.VolumeDialogControllerImpl; |
| |
| import dagger.Binds; |
| import dagger.Module; |
| |
| /** |
| * Maps interfaces to implementations for use with Dagger. |
| */ |
| @Module(includes = {ControlsModule.class}) |
| public abstract class DependencyBinder { |
| |
| /** |
| */ |
| @Binds |
| public abstract ActivityStarter provideActivityStarter(ActivityStarterDelegate delegate); |
| |
| /** |
| */ |
| @Binds |
| public abstract BluetoothController provideBluetoothController( |
| BluetoothControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract GlobalActions provideGlobalActions(GlobalActionsImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract GlobalActions.GlobalActionsManager provideGlobalActionsManager( |
| GlobalActionsComponent controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract LocationController provideLocationController( |
| LocationControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract RotationLockController provideRotationLockController( |
| RotationLockControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract NetworkController provideNetworkController( |
| NetworkControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract ZenModeController provideZenModeController( |
| ZenModeControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract HotspotController provideHotspotController( |
| HotspotControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract AppOpsController provideAppOpsController( |
| AppOpsControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract NotificationRemoteInputManager.Callback provideNotificationRemoteInputManager( |
| StatusBarRemoteInputCallback callbackImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract CastController provideCastController(CastControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract FlashlightController provideFlashlightController( |
| FlashlightControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract KeyguardStateController provideKeyguardMonitor( |
| KeyguardStateControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract UserInfoController provideUserInfoContrller( |
| UserInfoControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract ManagedProfileController provideManagedProfileController( |
| ManagedProfileControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract NextAlarmController provideNextAlarmController( |
| NextAlarmControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract SecurityController provideSecurityController( |
| SecurityControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract TunerService provideTunerService(TunerServiceImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract DarkIconDispatcher provideDarkIconDispatcher( |
| DarkIconDispatcherImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract StatusBarStateController provideStatusBarStateController( |
| StatusBarStateControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract SysuiStatusBarStateController providesSysuiStatusBarStateController( |
| StatusBarStateControllerImpl statusBarStateControllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract StatusBarIconController provideStatusBarIconController( |
| StatusBarIconControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract ExtensionController provideExtensionController( |
| ExtensionControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract VolumeDialogController provideVolumeDialogController( |
| VolumeDialogControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract PowerUI.WarningsUI provideWarningsUi(PowerNotificationWarnings controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract SensorPrivacyController provideSensorPrivacyControllerImpl( |
| SensorPrivacyControllerImpl controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract QSHost provideQsHost(QSTileHost controllerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract FalsingManager provideFalsingManager(FalsingManagerProxy falsingManagerImpl); |
| |
| /** |
| */ |
| @Binds |
| public abstract VolumeComponent provideVolumeComponent( |
| VolumeDialogComponent volumeDialogComponent); |
| |
| /** |
| */ |
| @Binds |
| public abstract RingerModeTracker provideRingerModeTracker( |
| RingerModeTrackerImpl ringerModeTrackerImpl); |
| } |