From c16ad7e37dfac80a5d219a2add5d9d7ad9d1c8f2 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Wed, 6 Jul 2016 11:25:27 +0200 Subject: [PATCH] move applyAPSResult out of pump interface --- .../nightscout/androidaps/interfaces/PumpInterface.java | 1 - .../plugins/ConfigBuilder/ConfigBuilderFragment.java | 3 ++- .../nightscout/androidaps/plugins/Loop/LoopFragment.java | 7 ++++--- .../androidaps/plugins/Overview/OverviewFragment.java | 2 +- .../plugins/VirtualPump/VirtualPumpFragment.java | 8 ++------ 5 files changed, 9 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/info/nightscout/androidaps/interfaces/PumpInterface.java b/app/src/main/java/info/nightscout/androidaps/interfaces/PumpInterface.java index 1e5fb85e6d..e241fa47c9 100644 --- a/app/src/main/java/info/nightscout/androidaps/interfaces/PumpInterface.java +++ b/app/src/main/java/info/nightscout/androidaps/interfaces/PumpInterface.java @@ -33,7 +33,6 @@ public interface PumpInterface { PumpEnactResult setExtendedBolus(Double insulin, Integer durationInMinutes); PumpEnactResult cancelTempBasal(); PumpEnactResult cancelExtendedBolus(); - PumpEnactResult applyAPSRequest(APSResult request); // Status to be passed to NS JSONObject getJSONStatus(); diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/ConfigBuilder/ConfigBuilderFragment.java b/app/src/main/java/info/nightscout/androidaps/plugins/ConfigBuilder/ConfigBuilderFragment.java index 1ed20ee47b..b591efa701 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/ConfigBuilder/ConfigBuilderFragment.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/ConfigBuilder/ConfigBuilderFragment.java @@ -144,6 +144,7 @@ public class ConfigBuilderFragment extends Fragment implements PluginBase, PumpI } void setViews() { + // TODO: hide empty categories bgsourceDataAdapter = new PluginCustomAdapter(getContext(), R.layout.configbuilder_simpleitem, MainActivity.getSpecificPluginsList(PluginBase.BGSOURCE)); bgsourceListView.setAdapter(bgsourceDataAdapter); setListViewHeightBasedOnChildren(bgsourceListView); @@ -365,7 +366,7 @@ public class ConfigBuilderFragment extends Fragment implements PluginBase, PumpI * @param request * @return */ - @Override + public PumpEnactResult applyAPSRequest(APSResult request) { request.rate = applyBasalConstraints(request.rate); PumpEnactResult result = null; diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/Loop/LoopFragment.java b/app/src/main/java/info/nightscout/androidaps/plugins/Loop/LoopFragment.java index eb44223bc1..ef6863b9da 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/Loop/LoopFragment.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/Loop/LoopFragment.java @@ -39,6 +39,7 @@ import info.nightscout.androidaps.interfaces.APSInterface; import info.nightscout.androidaps.interfaces.ConstraintsInterface; import info.nightscout.androidaps.interfaces.PluginBase; import info.nightscout.androidaps.interfaces.PumpInterface; +import info.nightscout.androidaps.plugins.ConfigBuilder.ConfigBuilderFragment; public class LoopFragment extends Fragment implements View.OnClickListener, PluginBase { private static Logger log = LoggerFactory.getLogger(LoopFragment.class); @@ -226,10 +227,10 @@ public class LoopFragment extends Fragment implements View.OnClickListener, Plug }); return; } - PumpInterface pumpInterface = MainApp.getConfigBuilder().getActivePump(); + ConfigBuilderFragment configBuilder = MainApp.getConfigBuilder(); APSResult result = null; - if (constraintsInterface == null || pumpInterface == null || !isEnabled()) + if (constraintsInterface == null || configBuilder == null || !isEnabled()) return; APSInterface usedAPS = null; @@ -274,7 +275,7 @@ public class LoopFragment extends Fragment implements View.OnClickListener, Plug if (constraintsInterface.isClosedModeEnabled()) { if (result.changeRequested) { - PumpEnactResult applyResult = pumpInterface.applyAPSRequest(resultAfterConstraints); + PumpEnactResult applyResult = configBuilder.applyAPSRequest(resultAfterConstraints); if (applyResult.enacted) { lastRun.setByPump = applyResult; lastRun.lastEnact = lastRun.lastAPSRun; diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/Overview/OverviewFragment.java b/app/src/main/java/info/nightscout/androidaps/plugins/Overview/OverviewFragment.java index ff773e9401..3867129877 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/Overview/OverviewFragment.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/Overview/OverviewFragment.java @@ -240,7 +240,7 @@ public class OverviewFragment extends Fragment implements PluginBase { builder.setMessage(getContext().getString(R.string.setbasalquestion) + "\n" + finalLastRun.constraintsProcessed); builder.setPositiveButton(getContext().getString(R.string.ok), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { - PumpEnactResult applyResult = MainApp.getConfigBuilder().getActivePump().applyAPSRequest(finalLastRun.constraintsProcessed); + PumpEnactResult applyResult = MainApp.getConfigBuilder().applyAPSRequest(finalLastRun.constraintsProcessed); if (applyResult.enacted) { finalLastRun.setByPump = applyResult; finalLastRun.lastEnact = new Date(); diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/VirtualPump/VirtualPumpFragment.java b/app/src/main/java/info/nightscout/androidaps/plugins/VirtualPump/VirtualPumpFragment.java index a6d76fc44e..fdb88c03d2 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/VirtualPump/VirtualPumpFragment.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/VirtualPump/VirtualPumpFragment.java @@ -51,6 +51,8 @@ public class VirtualPumpFragment extends Fragment implements PluginBase, PumpInt boolean fragmentVisible = true; boolean visibleNow = false; + // TODO: upload pump status without Loop plugin too + @Override public String getName() { return MainApp.instance().getString(R.string.virtualpump); @@ -342,12 +344,6 @@ public class VirtualPumpFragment extends Fragment implements PluginBase, PumpInt return result; } - @Override - public PumpEnactResult applyAPSRequest(APSResult request) { - // This should be implemented only on ConfigBuilder - return null; - } - @Override public JSONObject getJSONStatus() { JSONObject pump = new JSONObject();