diff --git a/app/src/main/kotlin/app/aaps/activities/HistoryBrowserData.kt b/app/src/main/kotlin/app/aaps/activities/HistoryBrowserData.kt index cd14cf4874..1c2120ec67 100644 --- a/app/src/main/kotlin/app/aaps/activities/HistoryBrowserData.kt +++ b/app/src/main/kotlin/app/aaps/activities/HistoryBrowserData.kt @@ -15,7 +15,7 @@ import app.aaps.core.main.graph.OverviewData import app.aaps.core.main.workflow.CalculationWorkflow import app.aaps.database.impl.AppRepository import app.aaps.implementation.overview.OverviewDataImpl -import app.aaps.plugins.iob.iobCobCalculator.IobCobCalculatorPlugin +import app.aaps.plugins.main.iob.iobCobCalculator.IobCobCalculatorPlugin import dagger.android.HasAndroidInjector import javax.inject.Inject import javax.inject.Singleton diff --git a/app/src/main/kotlin/app/aaps/di/AppModule.kt b/app/src/main/kotlin/app/aaps/di/AppModule.kt index cd324c1758..8c3294acd1 100644 --- a/app/src/main/kotlin/app/aaps/di/AppModule.kt +++ b/app/src/main/kotlin/app/aaps/di/AppModule.kt @@ -2,15 +2,13 @@ package app.aaps.di import android.content.Context import app.aaps.MainApp -import app.aaps.core.main.workflow.CalculationWorkflow -import app.aaps.implementations.ConfigImpl -import app.aaps.implementations.InstantiatorImpl -import app.aaps.implementations.UiInteractionImpl import app.aaps.core.interfaces.configuration.Config import app.aaps.core.interfaces.objects.Instantiator import app.aaps.core.interfaces.plugin.PluginBase import app.aaps.core.interfaces.ui.UiInteraction -import app.aaps.workflow.CalculationWorkflowImpl +import app.aaps.implementations.ConfigImpl +import app.aaps.implementations.InstantiatorImpl +import app.aaps.implementations.UiInteractionImpl import dagger.Binds import dagger.Lazy import dagger.Module @@ -51,7 +49,6 @@ open class AppModule { @Binds fun bindConfigInterface(config: ConfigImpl): Config @Binds fun bindActivityNames(activityNames: UiInteractionImpl): UiInteraction - @Binds fun bindCalculationWorkflow(calculationWorkflow: CalculationWorkflowImpl): CalculationWorkflow @Binds fun bindInstantiator(instantiatorImpl: InstantiatorImpl): Instantiator } diff --git a/app/src/main/kotlin/app/aaps/di/PluginsListModule.kt b/app/src/main/kotlin/app/aaps/di/PluginsListModule.kt index 00d10373ca..10b296c758 100644 --- a/app/src/main/kotlin/app/aaps/di/PluginsListModule.kt +++ b/app/src/main/kotlin/app/aaps/di/PluginsListModule.kt @@ -20,7 +20,6 @@ import app.aaps.plugins.insulin.InsulinLyumjevPlugin import app.aaps.plugins.insulin.InsulinOrefFreePeakPlugin import app.aaps.plugins.insulin.InsulinOrefRapidActingPlugin import app.aaps.plugins.insulin.InsulinOrefUltraRapidActingPlugin -import app.aaps.plugins.iob.iobCobCalculator.IobCobCalculatorPlugin import app.aaps.plugins.main.general.actions.ActionsPlugin import app.aaps.plugins.main.general.food.FoodPlugin import app.aaps.plugins.main.general.overview.OverviewPlugin @@ -28,6 +27,7 @@ import app.aaps.plugins.main.general.persistentNotification.PersistentNotificati import app.aaps.plugins.main.general.smsCommunicator.SmsCommunicatorPlugin import app.aaps.plugins.main.general.themes.ThemeSwitcherPlugin import app.aaps.plugins.main.general.wear.WearPlugin +import app.aaps.plugins.main.iob.iobCobCalculator.IobCobCalculatorPlugin import app.aaps.plugins.main.profile.ProfilePlugin import app.aaps.plugins.sensitivity.SensitivityAAPSPlugin import app.aaps.plugins.sensitivity.SensitivityOref1Plugin diff --git a/app/src/main/kotlin/app/aaps/implementations/InstantiatorImpl.kt b/app/src/main/kotlin/app/aaps/implementations/InstantiatorImpl.kt index b18aa83142..c702a1fa16 100644 --- a/app/src/main/kotlin/app/aaps/implementations/InstantiatorImpl.kt +++ b/app/src/main/kotlin/app/aaps/implementations/InstantiatorImpl.kt @@ -7,7 +7,7 @@ import app.aaps.core.interfaces.profile.ProfileStore import app.aaps.core.interfaces.utils.DateUtil import app.aaps.implementation.profile.ProfileStoreObject import app.aaps.plugins.aps.APSResultObject -import app.aaps.plugins.iob.iobCobCalculator.data.AutosensDataObject +import app.aaps.plugins.main.iob.iobCobCalculator.data.AutosensDataObject import dagger.Reusable import dagger.android.HasAndroidInjector import org.json.JSONObject diff --git a/plugins/automation/src/test/kotlin/app/aaps/plugins/automation/triggers/TriggerAutosensValueTest.kt b/plugins/automation/src/test/kotlin/app/aaps/plugins/automation/triggers/TriggerAutosensValueTest.kt index 93ca063187..e443185ef5 100644 --- a/plugins/automation/src/test/kotlin/app/aaps/plugins/automation/triggers/TriggerAutosensValueTest.kt +++ b/plugins/automation/src/test/kotlin/app/aaps/plugins/automation/triggers/TriggerAutosensValueTest.kt @@ -2,7 +2,7 @@ package app.aaps.plugins.automation.triggers import app.aaps.plugins.automation.R import app.aaps.plugins.automation.elements.Comparator -import app.aaps.plugins.iob.iobCobCalculator.data.AutosensDataObject +import app.aaps.plugins.main.iob.iobCobCalculator.data.AutosensDataObject import com.google.common.truth.Truth.assertThat import org.json.JSONObject import org.junit.jupiter.api.Assertions diff --git a/plugins/main/src/main/kotlin/app/aaps/plugins/main/di/PluginsModule.kt b/plugins/main/src/main/kotlin/app/aaps/plugins/main/di/PluginsModule.kt index dab28c8d08..5f6a389b3b 100644 --- a/plugins/main/src/main/kotlin/app/aaps/plugins/main/di/PluginsModule.kt +++ b/plugins/main/src/main/kotlin/app/aaps/plugins/main/di/PluginsModule.kt @@ -2,11 +2,11 @@ package app.aaps.plugins.main.di import app.aaps.core.interfaces.iob.IobCobCalculator import app.aaps.core.interfaces.smsCommunicator.SmsCommunicator -import app.aaps.plugins.iob.iobCobCalculator.IobCobCalculatorPlugin -import app.aaps.plugins.iob.iobCobCalculator.data.AutosensDataObject import app.aaps.plugins.main.general.persistentNotification.DummyService import app.aaps.plugins.main.general.smsCommunicator.SmsCommunicatorPlugin import app.aaps.plugins.main.general.wear.WearFragment +import app.aaps.plugins.main.iob.iobCobCalculator.IobCobCalculatorPlugin +import app.aaps.plugins.main.iob.iobCobCalculator.data.AutosensDataObject import dagger.Binds import dagger.Module import dagger.android.ContributesAndroidInjector diff --git a/plugins/main/src/main/kotlin/app/aaps/plugins/iob/iobCobCalculator/IobCobCalculatorPlugin.kt b/plugins/main/src/main/kotlin/app/aaps/plugins/main/iob/iobCobCalculator/IobCobCalculatorPlugin.kt similarity index 99% rename from plugins/main/src/main/kotlin/app/aaps/plugins/iob/iobCobCalculator/IobCobCalculatorPlugin.kt rename to plugins/main/src/main/kotlin/app/aaps/plugins/main/iob/iobCobCalculator/IobCobCalculatorPlugin.kt index a28b0b1e7d..a3935e7ed0 100644 --- a/plugins/main/src/main/kotlin/app/aaps/plugins/iob/iobCobCalculator/IobCobCalculatorPlugin.kt +++ b/plugins/main/src/main/kotlin/app/aaps/plugins/main/iob/iobCobCalculator/IobCobCalculatorPlugin.kt @@ -1,4 +1,4 @@ -package app.aaps.plugins.iob.iobCobCalculator +package app.aaps.plugins.main.iob.iobCobCalculator import androidx.collection.LongSparseArray import app.aaps.annotations.OpenForTesting @@ -50,8 +50,8 @@ import app.aaps.database.entities.ExtendedBolus import app.aaps.database.entities.TemporaryBasal import app.aaps.database.entities.interfaces.end import app.aaps.database.impl.AppRepository -import app.aaps.plugins.iob.iobCobCalculator.data.AutosensDataStoreObject import app.aaps.plugins.main.R +import app.aaps.plugins.main.iob.iobCobCalculator.data.AutosensDataStoreObject import dagger.android.HasAndroidInjector import io.reactivex.rxjava3.disposables.CompositeDisposable import io.reactivex.rxjava3.kotlin.plusAssign diff --git a/plugins/main/src/main/kotlin/app/aaps/plugins/iob/iobCobCalculator/data/AutosensDataObject.kt b/plugins/main/src/main/kotlin/app/aaps/plugins/main/iob/iobCobCalculator/data/AutosensDataObject.kt similarity index 98% rename from plugins/main/src/main/kotlin/app/aaps/plugins/iob/iobCobCalculator/data/AutosensDataObject.kt rename to plugins/main/src/main/kotlin/app/aaps/plugins/main/iob/iobCobCalculator/data/AutosensDataObject.kt index 2f8099ceac..758220dd3f 100644 --- a/plugins/main/src/main/kotlin/app/aaps/plugins/iob/iobCobCalculator/data/AutosensDataObject.kt +++ b/plugins/main/src/main/kotlin/app/aaps/plugins/main/iob/iobCobCalculator/data/AutosensDataObject.kt @@ -1,4 +1,4 @@ -package app.aaps.plugins.iob.iobCobCalculator.data +package app.aaps.plugins.main.iob.iobCobCalculator.data import app.aaps.core.interfaces.aps.AutosensData import app.aaps.core.interfaces.aps.AutosensResult diff --git a/plugins/main/src/main/kotlin/app/aaps/plugins/iob/iobCobCalculator/data/AutosensDataStoreObject.kt b/plugins/main/src/main/kotlin/app/aaps/plugins/main/iob/iobCobCalculator/data/AutosensDataStoreObject.kt similarity index 99% rename from plugins/main/src/main/kotlin/app/aaps/plugins/iob/iobCobCalculator/data/AutosensDataStoreObject.kt rename to plugins/main/src/main/kotlin/app/aaps/plugins/main/iob/iobCobCalculator/data/AutosensDataStoreObject.kt index aa36afe357..a73b427982 100644 --- a/plugins/main/src/main/kotlin/app/aaps/plugins/iob/iobCobCalculator/data/AutosensDataStoreObject.kt +++ b/plugins/main/src/main/kotlin/app/aaps/plugins/main/iob/iobCobCalculator/data/AutosensDataStoreObject.kt @@ -1,4 +1,4 @@ -package app.aaps.plugins.iob.iobCobCalculator.data +package app.aaps.plugins.main.iob.iobCobCalculator.data import androidx.collection.LongSparseArray import androidx.collection.size diff --git a/plugins/main/src/test/kotlin/app/aaps/plugins/main/iob/AutosensDataStoreTest.kt b/plugins/main/src/test/kotlin/app/aaps/plugins/main/iob/AutosensDataStoreTest.kt index 2446924eb1..df6fbbc110 100644 --- a/plugins/main/src/test/kotlin/app/aaps/plugins/main/iob/AutosensDataStoreTest.kt +++ b/plugins/main/src/test/kotlin/app/aaps/plugins/main/iob/AutosensDataStoreTest.kt @@ -9,8 +9,8 @@ import app.aaps.core.interfaces.sharedPreferences.SP import app.aaps.core.interfaces.utils.DateUtil import app.aaps.core.interfaces.utils.T import app.aaps.database.entities.GlucoseValue -import app.aaps.plugins.iob.iobCobCalculator.data.AutosensDataObject -import app.aaps.plugins.iob.iobCobCalculator.data.AutosensDataStoreObject +import app.aaps.plugins.main.iob.iobCobCalculator.data.AutosensDataObject +import app.aaps.plugins.main.iob.iobCobCalculator.data.AutosensDataStoreObject import app.aaps.shared.impl.utils.DateUtilImpl import app.aaps.shared.tests.TestBase import com.google.common.truth.Truth.assertThat diff --git a/workflow/build.gradle b/workflow/build.gradle index 815fd2bf14..db01daed40 100644 --- a/workflow/build.gradle +++ b/workflow/build.gradle @@ -23,4 +23,5 @@ dependencies { implementation project(':core:utils') implementation project(':database:entities') implementation project(':database:impl') + implementation project(':plugins:main') } \ No newline at end of file diff --git a/app/src/main/kotlin/app/aaps/workflow/CalculationWorkflowImpl.kt b/workflow/src/main/kotlin/app/aaps/workflow/CalculationWorkflowImpl.kt similarity index 98% rename from app/src/main/kotlin/app/aaps/workflow/CalculationWorkflowImpl.kt rename to workflow/src/main/kotlin/app/aaps/workflow/CalculationWorkflowImpl.kt index e184a55721..2faba8d77b 100644 --- a/app/src/main/kotlin/app/aaps/workflow/CalculationWorkflowImpl.kt +++ b/workflow/src/main/kotlin/app/aaps/workflow/CalculationWorkflowImpl.kt @@ -29,7 +29,7 @@ import app.aaps.core.main.workflow.CalculationWorkflow.Companion.MAIN_CALCULATIO import app.aaps.core.main.workflow.CalculationWorkflow.Companion.PASS import app.aaps.core.utils.receivers.DataWorkerStorage import app.aaps.core.utils.worker.then -import app.aaps.plugins.iob.iobCobCalculator.IobCobCalculatorPlugin +import app.aaps.plugins.main.iob.iobCobCalculator.IobCobCalculatorPlugin import app.aaps.workflow.iob.IobCobOref1Worker import app.aaps.workflow.iob.IobCobOrefWorker import dagger.android.HasAndroidInjector @@ -62,7 +62,7 @@ class CalculationWorkflowImpl @Inject constructor( init { // Verify definition var sumPercent = 0 - for (pass in CalculationWorkflow.ProgressData.values()) sumPercent += pass.percentOfTotal + for (pass in CalculationWorkflow.ProgressData.entries) sumPercent += pass.percentOfTotal require(sumPercent == 100) disposable += rxBus diff --git a/workflow/src/main/kotlin/app/aaps/workflow/di/WorkflowModule.kt b/workflow/src/main/kotlin/app/aaps/workflow/di/WorkflowModule.kt index 14270e9825..b0510b4e15 100644 --- a/workflow/src/main/kotlin/app/aaps/workflow/di/WorkflowModule.kt +++ b/workflow/src/main/kotlin/app/aaps/workflow/di/WorkflowModule.kt @@ -1,5 +1,7 @@ package app.aaps.workflow.di +import app.aaps.core.main.workflow.CalculationWorkflow +import app.aaps.workflow.CalculationWorkflowImpl import app.aaps.workflow.DummyWorker import app.aaps.workflow.InvokeLoopWorker import app.aaps.workflow.LoadBgDataWorker @@ -15,13 +17,24 @@ import app.aaps.workflow.UpdateIobCobSensWorker import app.aaps.workflow.UpdateWidgetWorker import app.aaps.workflow.iob.IobCobOref1Worker import app.aaps.workflow.iob.IobCobOrefWorker +import dagger.Binds import dagger.Module import dagger.android.ContributesAndroidInjector -@Module @Suppress("unused") +@Module( + includes = [ + WorkflowModule.WorkflowBindings::class + ] +) abstract class WorkflowModule { + @Module + interface WorkflowBindings { + + @Binds fun bindCalculationWorkflow(calculationWorkflow: CalculationWorkflowImpl): CalculationWorkflow + } + @ContributesAndroidInjector abstract fun iobCobWorkerInjector(): IobCobOrefWorker @ContributesAndroidInjector abstract fun iobCobOref1WorkerInjector(): IobCobOref1Worker @ContributesAndroidInjector abstract fun prepareIobAutosensDataWorkerInjector(): PrepareIobAutosensGraphDataWorker