2020-04-24 12:00:31 +02:00
|
|
|
package info.nightscout.androidaps.dependencyInjection
|
|
|
|
|
|
|
|
import dagger.Binds
|
|
|
|
import dagger.Lazy
|
|
|
|
import dagger.Module
|
|
|
|
import dagger.Provides
|
|
|
|
import dagger.multibindings.IntKey
|
|
|
|
import dagger.multibindings.IntoMap
|
|
|
|
import dagger.multibindings.IntoSet
|
|
|
|
import info.nightscout.androidaps.Config
|
|
|
|
import info.nightscout.androidaps.interfaces.PluginBase
|
|
|
|
import info.nightscout.androidaps.plugins.aps.loop.LoopPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.aps.openAPSAMA.OpenAPSAMAPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.aps.openAPSSMB.OpenAPSSMBPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.configBuilder.ConfigBuilderPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.constraints.dstHelper.DstHelperPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.constraints.objectives.ObjectivesPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.constraints.safety.SafetyPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.constraints.signatureVerifier.SignatureVerifierPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.constraints.storage.StorageConstraintPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.constraints.versionChecker.VersionCheckerPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.actions.ActionsPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.automation.AutomationPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.careportal.CareportalPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.dataBroadcaster.DataBroadcastPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.food.FoodPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.maintenance.MaintenancePlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.nsclient.NSClientPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.overview.OverviewPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.persistentNotification.PersistentNotificationPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.smsCommunicator.SmsCommunicatorPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.wear.WearPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.general.xdripStatusline.StatusLinePlugin
|
|
|
|
import info.nightscout.androidaps.plugins.insulin.InsulinOrefFreePeakPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.insulin.InsulinOrefRapidActingPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.insulin.InsulinOrefUltraRapidActingPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.IobCobCalculatorPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.profile.local.LocalProfilePlugin
|
|
|
|
import info.nightscout.androidaps.plugins.profile.ns.NSProfilePlugin
|
|
|
|
import info.nightscout.androidaps.plugins.pump.combo.ComboPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.pump.danaR.DanaRPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.pump.danaRKorean.DanaRKoreanPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.pump.danaRS.DanaRSPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.pump.danaRv2.DanaRv2Plugin
|
|
|
|
import info.nightscout.androidaps.plugins.pump.insight.LocalInsightPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.pump.mdi.MDIPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.pump.medtronic.MedtronicPumpPlugin
|
2020-04-26 19:28:00 +02:00
|
|
|
import info.nightscout.androidaps.plugins.pump.omnipod.OmnipodPumpPlugin
|
2020-04-24 12:00:31 +02:00
|
|
|
import info.nightscout.androidaps.plugins.pump.virtual.VirtualPumpPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.sensitivity.SensitivityAAPSPlugin
|
|
|
|
import info.nightscout.androidaps.plugins.sensitivity.SensitivityOref1Plugin
|
|
|
|
import info.nightscout.androidaps.plugins.sensitivity.SensitivityWeightedAveragePlugin
|
|
|
|
import info.nightscout.androidaps.plugins.source.*
|
|
|
|
import info.nightscout.androidaps.plugins.treatments.TreatmentsPlugin
|
|
|
|
import javax.inject.Qualifier
|
|
|
|
|
|
|
|
@Module
|
|
|
|
abstract class PluginsModule {
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(0)
|
|
|
|
abstract fun bindOverviewPlugin(plugin: OverviewPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(10)
|
|
|
|
abstract fun bindIobCobCalculatorPlugin(plugin: IobCobCalculatorPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@NotNSClient
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(20)
|
|
|
|
abstract fun bindActionsPlugin(plugin: ActionsPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(30)
|
|
|
|
abstract fun bindInsulinOrefRapidActingPlugin(plugin: InsulinOrefRapidActingPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(40)
|
|
|
|
abstract fun bindInsulinOrefUltraRapidActingPlugin(plugin: InsulinOrefUltraRapidActingPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(50)
|
|
|
|
abstract fun bindInsulinOrefFreePeakPlugin(plugin: InsulinOrefFreePeakPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(60)
|
|
|
|
abstract fun bindSensitivityAAPSPlugin(plugin: SensitivityAAPSPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(70)
|
|
|
|
abstract fun bindSensitivityWeightedAveragePlugin(plugin: SensitivityWeightedAveragePlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(80)
|
|
|
|
abstract fun bindSensitivityOref1Plugin(plugin: SensitivityOref1Plugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@PumpDriver
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(90)
|
|
|
|
abstract fun bindDanaRPlugin(plugin: DanaRPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@PumpDriver
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(100)
|
|
|
|
abstract fun bindDanaRKoreanPlugin(plugin: DanaRKoreanPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@PumpDriver
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(110)
|
|
|
|
abstract fun bindDanaRv2Plugin(plugin: DanaRv2Plugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@PumpDriver
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(120)
|
|
|
|
abstract fun bindDanaRSPlugin(plugin: DanaRSPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@PumpDriver
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(130)
|
|
|
|
abstract fun bindLocalInsightPlugin(plugin: LocalInsightPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@PumpDriver
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(140)
|
|
|
|
abstract fun bindComboPlugin(plugin: ComboPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@PumpDriver
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(150)
|
|
|
|
abstract fun bindMedtronicPumpPlugin(plugin: MedtronicPumpPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@NotNSClient
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(160)
|
|
|
|
abstract fun bindMDIPlugin(plugin: MDIPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(170)
|
|
|
|
abstract fun bindVirtualPumpPlugin(plugin: VirtualPumpPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
2020-04-24 22:39:56 +02:00
|
|
|
@NSClient
|
2020-04-24 12:00:31 +02:00
|
|
|
@IntoMap
|
|
|
|
@IntKey(180)
|
|
|
|
abstract fun bindCareportalPlugin(plugin: CareportalPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@APS
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(190)
|
|
|
|
abstract fun bindLoopPlugin(plugin: LoopPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@APS
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(210)
|
|
|
|
abstract fun bindOpenAPSAMAPlugin(plugin: OpenAPSAMAPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@APS
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(220)
|
|
|
|
abstract fun bindOpenAPSSMBPlugin(plugin: OpenAPSSMBPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(230)
|
|
|
|
abstract fun bindNSProfilePlugin(plugin: NSProfilePlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@NotNSClient
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(240)
|
|
|
|
abstract fun bindLocalProfilePlugin(plugin: LocalProfilePlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(250)
|
|
|
|
abstract fun bindAutomationPlugin(plugin: AutomationPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(260)
|
|
|
|
abstract fun bindTreatmentsPlugin(plugin: TreatmentsPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
2020-04-24 22:39:56 +02:00
|
|
|
@AllConfigs
|
2020-04-25 22:31:39 +02:00
|
|
|
@IntoMap
|
|
|
|
@IntKey(265)
|
2020-04-24 12:00:31 +02:00
|
|
|
abstract fun bindSafetyPlugin(plugin: SafetyPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@NotNSClient
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(270)
|
|
|
|
abstract fun bindVersionCheckerPlugin(plugin: VersionCheckerPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@NotNSClient
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(280)
|
|
|
|
abstract fun bindSmsCommunicatorPlugin(plugin: SmsCommunicatorPlugin): PluginBase
|
|
|
|
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@APS
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(290)
|
|
|
|
abstract fun bindStorageConstraintPlugin(plugin: StorageConstraintPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@APS
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(300)
|
|
|
|
abstract fun bindSignatureVerifierPlugin(plugin: SignatureVerifierPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@APS
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(310)
|
|
|
|
abstract fun bindObjectivesPlugin(plugin: ObjectivesPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(320)
|
|
|
|
abstract fun bindFoodPlugin(plugin: FoodPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(330)
|
|
|
|
abstract fun bindWearPlugin(plugin: WearPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(340)
|
|
|
|
abstract fun bindStatusLinePlugin(plugin: StatusLinePlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(350)
|
|
|
|
abstract fun bindPersistentNotificationPlugin(plugin: PersistentNotificationPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(360)
|
|
|
|
abstract fun bindNSClientPlugin(plugin: NSClientPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(370)
|
|
|
|
abstract fun bindMaintenancePlugin(plugin: MaintenancePlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(380)
|
|
|
|
abstract fun bindDstHelperPlugin(plugin: DstHelperPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(390)
|
|
|
|
abstract fun bindDataBroadcastPlugin(plugin: DataBroadcastPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(400)
|
|
|
|
abstract fun bindXdripPlugin(plugin: XdripPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(410)
|
|
|
|
abstract fun bindNSClientSourcePlugin(plugin: NSClientSourcePlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(420)
|
|
|
|
abstract fun bindMM640gPlugin(plugin: MM640gPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(430)
|
|
|
|
abstract fun bindGlimpPlugin(plugin: GlimpPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(440)
|
|
|
|
abstract fun bindDexcomPlugin(plugin: DexcomPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(450)
|
|
|
|
abstract fun bindPoctechPlugin(plugin: PoctechPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(460)
|
|
|
|
abstract fun bindTomatoPlugin(plugin: TomatoPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(470)
|
|
|
|
abstract fun bindRandomBgPlugin(plugin: RandomBgPlugin): PluginBase
|
|
|
|
|
|
|
|
@Binds
|
|
|
|
@AllConfigs
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(480)
|
|
|
|
abstract fun bindConfigBuilderPlugin(plugin: ConfigBuilderPlugin): PluginBase
|
|
|
|
|
2020-04-26 19:28:00 +02:00
|
|
|
@Binds
|
|
|
|
@PumpDriver
|
|
|
|
@IntoMap
|
|
|
|
@IntKey(490)
|
|
|
|
abstract fun bindOmnipodPumpPlugin(plugin: OmnipodPumpPlugin): PluginBase
|
|
|
|
|
2020-04-24 12:00:31 +02:00
|
|
|
@Qualifier
|
|
|
|
annotation class AllConfigs
|
|
|
|
|
|
|
|
@Qualifier
|
|
|
|
annotation class PumpDriver
|
|
|
|
|
|
|
|
@Qualifier
|
|
|
|
annotation class NotNSClient
|
|
|
|
|
2020-04-24 22:39:56 +02:00
|
|
|
@Qualifier
|
|
|
|
annotation class NSClient
|
|
|
|
|
2020-04-24 12:00:31 +02:00
|
|
|
@Qualifier
|
|
|
|
annotation class APS
|
|
|
|
|
2020-04-25 17:55:07 +02:00
|
|
|
}
|