Some Omnipod cleanup after merge
This commit is contained in:
parent
5d3426dc70
commit
100f8fe235
11 changed files with 66 additions and 250 deletions
|
@ -17,16 +17,17 @@ import info.nightscout.androidaps.interfaces.CommandQueueProvider
|
|||
import info.nightscout.androidaps.logging.AAPSLogger
|
||||
import info.nightscout.androidaps.logging.LTag
|
||||
import info.nightscout.androidaps.plugins.bus.RxBusWrapper
|
||||
import info.nightscout.androidaps.plugins.pump.common.events.EventRileyLinkDeviceStatusChange
|
||||
import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.defs.RileyLinkServiceState
|
||||
import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.defs.RileyLinkTargetDevice
|
||||
import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.dialog.RileyLinkStatusActivity
|
||||
import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.service.RileyLinkServiceData
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.OmnipodStatusRequest
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.PodProgressStatus
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.state.PodStateManager
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.dialogs.PodManagementActivity
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.driver.OmnipodPumpStatus
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.events.EventOmnipodAcknowledgeAlertsChanged
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.events.EventOmnipodDeviceStatusChange
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.events.EventOmnipodPumpValuesChanged
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.events.EventOmnipodRefreshButtonState
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.util.OmnipodConst
|
||||
|
@ -78,7 +79,7 @@ class OmnipodFragment : DaggerFragment() {
|
|||
|
||||
init {
|
||||
refreshLoop = Runnable {
|
||||
activity?.runOnUiThread { updateGUI() }
|
||||
activity?.runOnUiThread { updateUi() }
|
||||
loopHandler.postDelayed(refreshLoop, T.mins(1).msecs())
|
||||
}
|
||||
}
|
||||
|
@ -155,27 +156,24 @@ class OmnipodFragment : DaggerFragment() {
|
|||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe({ omnipod_refresh.isEnabled = it.newState }, { fabricPrivacy.logException(it) })
|
||||
disposable += rxBus
|
||||
.toObservable(EventOmnipodDeviceStatusChange::class.java)
|
||||
.toObservable(EventRileyLinkDeviceStatusChange::class.java)
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe({
|
||||
aapsLogger.info(LTag.PUMP, "onStatusEvent(EventOmnipodDeviceStatusChange): {}", it)
|
||||
setDeviceStatus()
|
||||
}, { fabricPrivacy.logException(it) })
|
||||
.subscribe({ updateRileyLinkUiElements() }, { fabricPrivacy.logException(it) })
|
||||
disposable += rxBus
|
||||
.toObservable(EventOmnipodPumpValuesChanged::class.java)
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe({ updateGUI() }, { fabricPrivacy.logException(it) })
|
||||
.subscribe({ updateOmipodUiElements() }, { fabricPrivacy.logException(it) })
|
||||
disposable += rxBus
|
||||
.toObservable(EventOmnipodAcknowledgeAlertsChanged::class.java)
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe({ updateAcknowledgeAlerts() }, { fabricPrivacy.logException(it) })
|
||||
.subscribe({ updateAcknowledgeAlertsUiElements() }, { fabricPrivacy.logException(it) })
|
||||
disposable += rxBus
|
||||
.toObservable(EventPreferenceChange::class.java)
|
||||
.observeOn(Schedulers.io())
|
||||
.subscribe({
|
||||
setVisibilityOfPodDebugButton()
|
||||
}, { fabricPrivacy.logException(it) })
|
||||
updateGUI()
|
||||
updateUi()
|
||||
}
|
||||
|
||||
fun setVisibilityOfPodDebugButton() {
|
||||
|
@ -200,11 +198,14 @@ class OmnipodFragment : DaggerFragment() {
|
|||
loopHandler.removeCallbacks(refreshLoop)
|
||||
}
|
||||
|
||||
@Synchronized
|
||||
private fun setDeviceStatus() {
|
||||
aapsLogger.info(LTag.PUMP, "OmnipodFragment.setDeviceStatus")
|
||||
fun updateUi() {
|
||||
updateRileyLinkUiElements()
|
||||
updateOmipodUiElements()
|
||||
}
|
||||
|
||||
val errors = ArrayList<String>();
|
||||
@Synchronized
|
||||
private fun updateRileyLinkUiElements() {
|
||||
aapsLogger.info(LTag.PUMP, "OmnipodFragment.setDeviceStatus")
|
||||
|
||||
val rileyLinkServiceState = rileyLinkServiceData.rileyLinkServiceState
|
||||
|
||||
|
@ -220,7 +221,14 @@ class OmnipodFragment : DaggerFragment() {
|
|||
else -> "{fa-bluetooth-b} " + resourceHelper.gs(resourceId)
|
||||
}
|
||||
omnipod_rl_status.setTextColor(if (rileyLinkServiceState.isError || rileyLinkError != null) Color.RED else Color.WHITE)
|
||||
}
|
||||
|
||||
fun updateOmipodUiElements() {
|
||||
updateLastConnectionUiElements()
|
||||
updateAcknowledgeAlertsUiElements()
|
||||
setVisibilityOfPodDebugButton()
|
||||
|
||||
val errors = ArrayList<String>();
|
||||
val rileyLinkErrorInfo = omnipodPumpStatus.errorInfo
|
||||
if (rileyLinkErrorInfo != null) {
|
||||
errors.add(rileyLinkErrorInfo)
|
||||
|
@ -236,6 +244,11 @@ class OmnipodFragment : DaggerFragment() {
|
|||
omnipod_pod_tid.text = "-"
|
||||
omnipod_pod_fw_version.text = "-"
|
||||
omnipod_pod_expiry.text = "-"
|
||||
omnipod_basabasalrate.text = "-"
|
||||
omnipod_reservoir.text = "-"
|
||||
omnipod_tempbasal.text = "-"
|
||||
omnipod_lastbolus.text = "-"
|
||||
omnipod_lastconnection.setTextColor(Color.WHITE)
|
||||
if (podStateManager.hasPodState()) {
|
||||
omnipod_pod_status.text = resourceHelper.gs(R.string.omnipod_pod_status_not_initalized)
|
||||
} else {
|
||||
|
@ -249,7 +262,6 @@ class OmnipodFragment : DaggerFragment() {
|
|||
omnipod_pod_expiry.text = podStateManager.expiryDateAsString
|
||||
|
||||
val stateText: String
|
||||
|
||||
when {
|
||||
podStateManager.hasFaultEvent() -> {
|
||||
val faultEventCode = podStateManager.faultEvent.faultEventCode
|
||||
|
@ -265,28 +277,9 @@ class OmnipodFragment : DaggerFragment() {
|
|||
stateText = resourceHelper.gs(R.string.omnipod_pod_setup_in_progress, podStateManager.podProgressStatus.name)
|
||||
}
|
||||
}
|
||||
|
||||
omnipod_pod_status.text = stateText
|
||||
}
|
||||
|
||||
omnipod_pod_status.setTextColor(if (podStateManager.hasFaultEvent()) Color.RED else Color.WHITE)
|
||||
omnipod_errors.text = if (errors.size == 0) "-" else StringUtils.join(errors, System.lineSeparator())
|
||||
|
||||
val status = commandQueue.spannedStatus()
|
||||
if (status.toString() == "") {
|
||||
omnipod_queue.visibility = View.GONE
|
||||
} else {
|
||||
omnipod_queue.visibility = View.VISIBLE
|
||||
omnipod_queue.text = status
|
||||
}
|
||||
}
|
||||
|
||||
// GUI functions
|
||||
fun updateGUI() {
|
||||
setDeviceStatus()
|
||||
|
||||
if (podStateManager.isPodRunning) {
|
||||
updateLastConnection()
|
||||
updateLastConnectionUiElements()
|
||||
|
||||
// last bolus
|
||||
if (podStateManager.lastBolusStartTime != null && podStateManager.lastBolusAmount != null) {
|
||||
|
@ -310,24 +303,24 @@ class OmnipodFragment : DaggerFragment() {
|
|||
omnipod_reservoir.text = resourceHelper.gs(R.string.omnipod_reservoir_left, podStateManager.reservoirLevel)
|
||||
warnColors.setColorInverse(omnipod_reservoir, podStateManager.reservoirLevel, 50.0, 20.0)
|
||||
}
|
||||
}
|
||||
|
||||
omnipod_pod_status.setTextColor(if (podStateManager.hasFaultEvent()) Color.RED else Color.WHITE)
|
||||
omnipod_errors.text = if (errors.size == 0) "-" else StringUtils.join(errors, System.lineSeparator())
|
||||
|
||||
val status = commandQueue.spannedStatus()
|
||||
if (status.toString() == "") {
|
||||
omnipod_queue.visibility = View.GONE
|
||||
} else {
|
||||
updateLastConnection()
|
||||
omnipod_basabasalrate.text = "-"
|
||||
omnipod_reservoir.text = "-"
|
||||
omnipod_tempbasal.text = "-"
|
||||
omnipod_lastbolus.text = "-"
|
||||
omnipod_lastconnection.setTextColor(Color.WHITE)
|
||||
omnipod_queue.visibility = View.VISIBLE
|
||||
omnipod_queue.text = status
|
||||
}
|
||||
|
||||
updateAcknowledgeAlerts()
|
||||
|
||||
setVisibilityOfPodDebugButton()
|
||||
|
||||
omnipod_refresh.isEnabled = podStateManager.isPodInitialized
|
||||
omnipod_refresh.isEnabled = podStateManager.isPodInitialized && podStateManager.podProgressStatus.isAtLeast(PodProgressStatus.PAIRING_COMPLETED)
|
||||
}
|
||||
|
||||
private fun updateLastConnection() {
|
||||
if (podStateManager.isPodRunning && podStateManager.lastSuccessfulCommunication != null) { // Null check for backwards compatibility
|
||||
private fun updateLastConnectionUiElements() {
|
||||
if (podStateManager.isPodInitialized && podStateManager.lastSuccessfulCommunication != null) { // Null check for backwards compatibility
|
||||
omnipod_lastconnection.text = readableDuration(podStateManager.lastSuccessfulCommunication)
|
||||
if (omnipodPumpPlugin.isUnreachableAlertTimeoutExceeded(localAlertUtils.pumpUnreachableThreshold())) {
|
||||
omnipod_lastconnection.setTextColor(Color.RED)
|
||||
|
@ -344,6 +337,16 @@ class OmnipodFragment : DaggerFragment() {
|
|||
}
|
||||
}
|
||||
|
||||
private fun updateAcknowledgeAlertsUiElements() {
|
||||
if (podStateManager.isPodInitialized && podStateManager.hasActiveAlerts()) {
|
||||
omnipod_pod_active_alerts_ack.isEnabled = true
|
||||
omnipod_pod_active_alerts.text = TextUtils.join(System.lineSeparator(), omnipodUtil.getTranslatedActiveAlerts(podStateManager))
|
||||
} else {
|
||||
omnipod_pod_active_alerts_ack.isEnabled = false
|
||||
omnipod_pod_active_alerts.text = "-"
|
||||
}
|
||||
}
|
||||
|
||||
private fun readableDuration(dateTime: DateTime): String {
|
||||
val min = Duration(dateTime, DateTime.now()).standardMinutes
|
||||
when {
|
||||
|
@ -368,14 +371,4 @@ class OmnipodFragment : DaggerFragment() {
|
|||
}
|
||||
}
|
||||
|
||||
private fun updateAcknowledgeAlerts() {
|
||||
if (podStateManager.hasPodState() && podStateManager.hasActiveAlerts()) {
|
||||
omnipod_pod_active_alerts_ack.isEnabled = true
|
||||
omnipod_pod_active_alerts.text = TextUtils.join(System.lineSeparator(), omnipodUtil.getTranslatedActiveAlerts(podStateManager))
|
||||
} else {
|
||||
omnipod_pod_active_alerts_ack.isEnabled = false
|
||||
omnipod_pod_active_alerts.text = "-"
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -354,7 +354,7 @@ public class OmnipodPumpPlugin extends PumpPluginAbstract implements OmnipodPump
|
|||
|
||||
private void doPodCheck() {
|
||||
if (System.currentTimeMillis() > this.nextPodCheck) {
|
||||
if (omnipodUtil.getDriverState() == OmnipodDriverState.Initalized_NoPod) {
|
||||
if (!podStateManager.isPodRunning()) {
|
||||
Notification notification = new Notification(Notification.OMNIPOD_POD_NOT_ATTACHED, resourceHelper.gs(R.string.omnipod_error_pod_not_attached), Notification.NORMAL);
|
||||
rxBus.send(new EventNewNotification(notification));
|
||||
} else {
|
||||
|
@ -498,8 +498,7 @@ public class OmnipodPumpPlugin extends PumpPluginAbstract implements OmnipodPump
|
|||
|
||||
@Override
|
||||
public boolean isSuspended() {
|
||||
return omnipodUtil.getDriverState() == OmnipodDriverState.Initalized_NoPod ||
|
||||
!podStateManager.isPodRunning() || podStateManager.isSuspended();
|
||||
return !podStateManager.isPodRunning() || podStateManager.isSuspended();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -1,40 +0,0 @@
|
|||
package info.nightscout.androidaps.plugins.pump.omnipod.defs;
|
||||
|
||||
import info.nightscout.androidaps.R;
|
||||
|
||||
/**
|
||||
* Created by andy on 4.8.2019
|
||||
*/
|
||||
// TODO remove this class and use PumpDeviceState instead
|
||||
// BS: Actually, don't use PumpDeviceState in Omnipod driver at all; use PodStateManager
|
||||
// If PumpDeviceState is Omnipod specific; also remove that
|
||||
public enum PodDeviceState {
|
||||
|
||||
// FIXME
|
||||
NeverContacted(R.string.medtronic_pump_status_never_contacted), //
|
||||
Sleeping(R.string.medtronic_pump_status_sleeping), //
|
||||
WakingUp(R.string.medtronic_pump_status_waking_up), //
|
||||
Active(R.string.medtronic_pump_status_active), //
|
||||
ErrorWhenCommunicating(R.string.medtronic_pump_status_error_comm), //
|
||||
TimeoutWhenCommunicating(R.string.medtronic_pump_status_timeout_comm), //
|
||||
// ProblemContacting(R.string.medtronic_pump_status_problem_contacting), //
|
||||
PumpUnreachable(R.string.medtronic_pump_status_pump_unreachable), //
|
||||
InvalidConfiguration(R.string.medtronic_pump_status_invalid_config);
|
||||
|
||||
Integer resourceId = null;
|
||||
|
||||
|
||||
PodDeviceState() {
|
||||
|
||||
}
|
||||
|
||||
|
||||
PodDeviceState(int resourceId) {
|
||||
this.resourceId = resourceId;
|
||||
}
|
||||
|
||||
|
||||
public Integer getResourceId() {
|
||||
return resourceId;
|
||||
}
|
||||
}
|
|
@ -14,7 +14,6 @@ import info.nightscout.androidaps.plugins.pump.common.events.EventRileyLinkDevic
|
|||
import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.RileyLinkUtil;
|
||||
import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.data.RLHistoryItem;
|
||||
import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.defs.RileyLinkTargetDevice;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.PodDeviceState;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.util.OmnipodConst;
|
||||
import info.nightscout.androidaps.utils.resources.ResourceHelper;
|
||||
import info.nightscout.androidaps.utils.sharedPreferences.SP;
|
||||
|
@ -23,6 +22,7 @@ import info.nightscout.androidaps.utils.sharedPreferences.SP;
|
|||
* Created by andy on 4.8.2019
|
||||
*/
|
||||
@Singleton
|
||||
@Deprecated
|
||||
public class OmnipodPumpStatus extends PumpStatus {
|
||||
// TODO remove all fields that can also be obtained via PodStateManager
|
||||
// We can probably get rid of this class altogether
|
||||
|
@ -47,7 +47,6 @@ public class OmnipodPumpStatus extends PumpStatus {
|
|||
|
||||
public String regexMac = "([\\da-fA-F]{1,2}(?:\\:|$)){6}";
|
||||
|
||||
public PodDeviceState podDeviceState = PodDeviceState.NeverContacted;
|
||||
public boolean ackAlertsAvailable = false;
|
||||
public String ackAlertsText = null;
|
||||
|
||||
|
@ -146,7 +145,6 @@ public class OmnipodPumpStatus extends PumpStatus {
|
|||
", tempBasalAmount=" + tempBasalAmount +
|
||||
", tempBasalLength=" + tempBasalLength +
|
||||
", regexMac='" + regexMac + '\'' +
|
||||
", podDeviceState=" + podDeviceState +
|
||||
", lastDataTime=" + lastDataTime +
|
||||
", lastConnection=" + lastConnection +
|
||||
", previousConnection=" + previousConnection +
|
||||
|
|
|
@ -25,6 +25,7 @@ import info.nightscout.androidaps.interfaces.TreatmentsInterface;
|
|||
import info.nightscout.androidaps.logging.AAPSLogger;
|
||||
import info.nightscout.androidaps.logging.LTag;
|
||||
import info.nightscout.androidaps.plugins.bus.RxBusWrapper;
|
||||
import info.nightscout.androidaps.plugins.general.overview.events.EventDismissNotification;
|
||||
import info.nightscout.androidaps.plugins.general.overview.events.EventNewNotification;
|
||||
import info.nightscout.androidaps.plugins.general.overview.events.EventOverviewBolusProgress;
|
||||
import info.nightscout.androidaps.plugins.general.overview.notifications.Notification;
|
||||
|
@ -151,6 +152,9 @@ public class AapsOmnipodManager implements IOmnipodManager {
|
|||
}
|
||||
Disposable disposable = delegate.insertCannula(basalSchedule).subscribe(res -> //
|
||||
handleSetupActionResult(podInitActionType, podInitReceiver, res, time, profile));
|
||||
|
||||
rxBus.send(new EventDismissNotification(Notification.OMNIPOD_POD_NOT_ATTACHED));
|
||||
|
||||
return new PumpEnactResult(injector).success(true).enacted(true);
|
||||
} catch (Exception ex) {
|
||||
String comment = handleAndTranslateException(ex);
|
||||
|
|
|
@ -4,9 +4,8 @@ import dagger.android.HasAndroidInjector;
|
|||
import info.nightscout.androidaps.logging.AAPSLogger;
|
||||
import info.nightscout.androidaps.logging.LTag;
|
||||
import info.nightscout.androidaps.plugins.pump.common.defs.DeviceCommandExecutor;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.OmnipodCommandType;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.IOmnipodManager;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.util.OmnipodUtil;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.OmnipodCommandType;
|
||||
|
||||
/**
|
||||
* Created by andy on 4.8.2019
|
||||
|
@ -15,20 +14,17 @@ public class OmnipodUIComm implements DeviceCommandExecutor {
|
|||
|
||||
private final HasAndroidInjector injector;
|
||||
private final AAPSLogger aapsLogger;
|
||||
private final OmnipodUtil omnipodUtil;
|
||||
private final IOmnipodManager omnipodCommunicationManager;
|
||||
private final OmnipodUIPostprocessor omnipodUIPostprocessor;
|
||||
|
||||
public OmnipodUIComm(
|
||||
HasAndroidInjector injector,
|
||||
AAPSLogger aapsLogger,
|
||||
OmnipodUtil omnipodUtil,
|
||||
OmnipodUIPostprocessor omnipodUIPostprocessor,
|
||||
IOmnipodManager omnipodCommunicationManager
|
||||
) {
|
||||
this.injector = injector;
|
||||
this.aapsLogger = aapsLogger;
|
||||
this.omnipodUtil = omnipodUtil;
|
||||
this.omnipodUIPostprocessor = omnipodUIPostprocessor;
|
||||
this.omnipodCommunicationManager = omnipodCommunicationManager;
|
||||
}
|
||||
|
@ -40,8 +36,6 @@ public class OmnipodUIComm implements DeviceCommandExecutor {
|
|||
|
||||
OmnipodUITask task = new OmnipodUITask(injector, commandType, parameters);
|
||||
|
||||
omnipodUtil.setCurrentCommand(commandType);
|
||||
|
||||
// new Thread(() -> {
|
||||
// LOG.warn("@@@ Start Thread");
|
||||
//
|
||||
|
|
|
@ -19,6 +19,7 @@ import info.nightscout.androidaps.plugins.pump.omnipod.driver.OmnipodPumpStatus;
|
|||
/**
|
||||
* Created by andy on 4.8.2019
|
||||
*/
|
||||
// TODO remove once OmnipodPumpStatus has been removed
|
||||
@Singleton
|
||||
public class OmnipodUIPostprocessor {
|
||||
|
||||
|
@ -36,7 +37,6 @@ public class OmnipodUIPostprocessor {
|
|||
this.rxBus = plugin.getRxBus();
|
||||
}
|
||||
|
||||
|
||||
// this is mostly intended for command that return certain statuses (Remaining Insulin, ...), and
|
||||
// where responses won't be directly used
|
||||
public void postProcessData(OmnipodUITask uiTask) {
|
||||
|
|
|
@ -10,15 +10,12 @@ import info.nightscout.androidaps.logging.AAPSLogger;
|
|||
import info.nightscout.androidaps.logging.LTag;
|
||||
import info.nightscout.androidaps.plugins.bus.RxBusWrapper;
|
||||
import info.nightscout.androidaps.plugins.pump.common.data.TempBasalPair;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.OmnipodCommandType;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.IOmnipodManager;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.PodDeviceState;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.OmnipodCommandType;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.PodInitActionType;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.PodInitReceiver;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.PodResponseType;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.driver.OmnipodPumpStatus;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.events.EventOmnipodDeviceStatusChange;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.events.EventOmnipodPumpValuesChanged;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.util.OmnipodUtil;
|
||||
|
||||
/**
|
||||
|
@ -191,11 +188,9 @@ public class OmnipodUITask {
|
|||
}
|
||||
|
||||
|
||||
// FIXME a lot of this is not needed anymore since introducing PodStateManager
|
||||
// FIXME remove once OmnipodPumpStatus has been removed
|
||||
public void postProcess(OmnipodUIPostprocessor postprocessor) {
|
||||
|
||||
EventOmnipodDeviceStatusChange statusChange;
|
||||
|
||||
aapsLogger.debug(LTag.PUMP, "OmnipodUITask: @@@ postProcess. {}", commandType);
|
||||
aapsLogger.debug(LTag.PUMP, "OmnipodUITask: @@@ postProcess. responseType={}", responseType);
|
||||
|
||||
|
@ -206,22 +201,12 @@ public class OmnipodUITask {
|
|||
aapsLogger.debug(LTag.PUMP, "OmnipodUITask: @@@ postProcess. responseType={}", responseType);
|
||||
|
||||
if (responseType == PodResponseType.Invalid) {
|
||||
statusChange = new EventOmnipodDeviceStatusChange(PodDeviceState.ErrorWhenCommunicating,
|
||||
"Unsupported command in OmnipodUITask");
|
||||
omnipodPumpStatus.setLastFailedCommunicationToNow();
|
||||
rxBus.send(statusChange);
|
||||
} else if (responseType == PodResponseType.Error) {
|
||||
statusChange = new EventOmnipodDeviceStatusChange(PodDeviceState.ErrorWhenCommunicating,
|
||||
errorDescription);
|
||||
omnipodPumpStatus.setLastFailedCommunicationToNow();
|
||||
rxBus.send(statusChange);
|
||||
} else {
|
||||
omnipodPumpStatus.setLastCommunicationToNow();
|
||||
rxBus.send(new EventOmnipodPumpValuesChanged());
|
||||
}
|
||||
|
||||
omnipodUtil.setPodDeviceState(PodDeviceState.Sleeping);
|
||||
omnipodUtil.setCurrentCommand(null);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1,56 +0,0 @@
|
|||
package info.nightscout.androidaps.plugins.pump.omnipod.events
|
||||
|
||||
import info.nightscout.androidaps.plugins.pump.common.defs.PumpDeviceState
|
||||
import info.nightscout.androidaps.plugins.pump.common.events.EventRileyLinkDeviceStatusChange
|
||||
import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.defs.RileyLinkError
|
||||
import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.defs.RileyLinkServiceState
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.OmnipodCommandType
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.PodDeviceState
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.state.PodStateManager
|
||||
|
||||
/**
|
||||
* Created by andy on 4.8.2019
|
||||
*/
|
||||
// FIXME Remove in favor of EventRileyLinkDeviceStatusChange and EventOmnipodPumpValuesChanged
|
||||
class EventOmnipodDeviceStatusChange : EventRileyLinkDeviceStatusChange {
|
||||
|
||||
var podStateManager: PodStateManager? = null
|
||||
var podDeviceState: PodDeviceState? = null
|
||||
|
||||
@JvmOverloads
|
||||
constructor(rileyLinkServiceState: RileyLinkServiceState?, rileyLinkError: RileyLinkError? = null) : super(rileyLinkServiceState, rileyLinkError) {
|
||||
}
|
||||
|
||||
constructor(commandType: OmnipodCommandType?) {
|
||||
}
|
||||
|
||||
constructor(podStateManager: PodStateManager?) {
|
||||
this.podStateManager = podStateManager
|
||||
}
|
||||
|
||||
constructor(errorDescription: String?) {
|
||||
this.errorDescription = errorDescription
|
||||
}
|
||||
|
||||
constructor(podDeviceState: PodDeviceState?, errorDescription: String?) {
|
||||
this.podDeviceState = podDeviceState
|
||||
this.errorDescription = errorDescription
|
||||
}
|
||||
|
||||
constructor(pumpDeviceState: PumpDeviceState?) {
|
||||
this.pumpDeviceState = pumpDeviceState
|
||||
}
|
||||
|
||||
constructor(pumpDeviceState: PumpDeviceState?, errorDescription: String?) {
|
||||
this.pumpDeviceState = pumpDeviceState
|
||||
this.errorDescription = errorDescription
|
||||
}
|
||||
|
||||
override fun toString(): String {
|
||||
return ("EventOmnipodDeviceStatusChange [" //
|
||||
+ "rileyLinkServiceState=" + rileyLinkServiceState
|
||||
+ ", rileyLinkError=" + rileyLinkError //
|
||||
+ ", podStateManager=" + podStateManager //
|
||||
+ ", podDeviceState=" + podDeviceState + "]")
|
||||
}
|
||||
}
|
|
@ -27,7 +27,7 @@ import info.nightscout.androidaps.plugins.pump.omnipod.driver.OmnipodPumpStatus;
|
|||
import info.nightscout.androidaps.plugins.pump.omnipod.driver.comm.AapsOmnipodManager;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.driver.ui.OmnipodUIComm;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.driver.ui.OmnipodUIPostprocessor;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.events.EventOmnipodDeviceStatusChange;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.events.EventOmnipodPumpValuesChanged;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.util.OmnipodConst;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.util.OmnipodUtil;
|
||||
|
||||
|
@ -113,12 +113,12 @@ public class RileyLinkOmnipodService extends RileyLinkService {
|
|||
aapsOmnipodManager = new AapsOmnipodManager(omnipodCommunicationService, podStateManager, omnipodPumpStatus,
|
||||
omnipodUtil, aapsLogger, rxBus, sp, resourceHelper, injector, activePlugin, this);
|
||||
|
||||
omnipodUIComm = new OmnipodUIComm(injector, aapsLogger, omnipodUtil, omnipodUIPostprocessor, aapsOmnipodManager);
|
||||
omnipodUIComm = new OmnipodUIComm(injector, aapsLogger, omnipodUIPostprocessor, aapsOmnipodManager);
|
||||
|
||||
} else {
|
||||
aapsOmnipodManager = instance;
|
||||
}
|
||||
rxBus.send(new EventOmnipodDeviceStatusChange(podStateManager));
|
||||
rxBus.send(new EventOmnipodPumpValuesChanged());
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -17,17 +17,10 @@ import javax.inject.Inject;
|
|||
import javax.inject.Singleton;
|
||||
|
||||
import info.nightscout.androidaps.R;
|
||||
import info.nightscout.androidaps.interfaces.ActivePluginProvider;
|
||||
import info.nightscout.androidaps.logging.AAPSLogger;
|
||||
import info.nightscout.androidaps.plugins.bus.RxBusWrapper;
|
||||
import info.nightscout.androidaps.plugins.pump.common.defs.PumpType;
|
||||
import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.RileyLinkUtil;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.data.RLHistoryItemOmnipod;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.AlertSet;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.AlertSlot;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.AlertType;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.OmnipodCommandType;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.PodDeviceState;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.defs.state.PodStateManager;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.driver.OmnipodDriverState;
|
||||
import info.nightscout.androidaps.plugins.pump.omnipod.driver.OmnipodPumpStatus;
|
||||
|
@ -41,53 +34,24 @@ import info.nightscout.androidaps.utils.sharedPreferences.SP;
|
|||
public class OmnipodUtil {
|
||||
|
||||
private final AAPSLogger aapsLogger;
|
||||
private final RxBusWrapper rxBus;
|
||||
private final RileyLinkUtil rileyLinkUtil;
|
||||
private final OmnipodPumpStatus omnipodPumpStatus;
|
||||
private final ResourceHelper resourceHelper;
|
||||
private final ActivePluginProvider activePlugins;
|
||||
private final SP sp;
|
||||
private boolean lowLevelDebug = true;
|
||||
private OmnipodCommandType currentCommand;
|
||||
|
||||
private Gson gsonInstance = createGson();
|
||||
private OmnipodDriverState driverState = OmnipodDriverState.NotInitalized;
|
||||
|
||||
@Inject
|
||||
public OmnipodUtil(
|
||||
AAPSLogger aapsLogger,
|
||||
RxBusWrapper rxBus,
|
||||
RileyLinkUtil rileyLinkUtil,
|
||||
OmnipodPumpStatus omnipodPumpStatus,
|
||||
SP sp,
|
||||
ResourceHelper resourceHelper,
|
||||
ActivePluginProvider activePlugins
|
||||
ResourceHelper resourceHelper
|
||||
) {
|
||||
this.aapsLogger = aapsLogger;
|
||||
this.rxBus = rxBus;
|
||||
this.rileyLinkUtil = rileyLinkUtil;
|
||||
this.omnipodPumpStatus = omnipodPumpStatus;
|
||||
this.sp = sp;
|
||||
this.resourceHelper = resourceHelper;
|
||||
this.activePlugins = activePlugins;
|
||||
}
|
||||
|
||||
public boolean isLowLevelDebug() {
|
||||
return lowLevelDebug;
|
||||
}
|
||||
|
||||
public void setLowLevelDebug(boolean lowLevelDebug) {
|
||||
this.lowLevelDebug = lowLevelDebug;
|
||||
}
|
||||
|
||||
public OmnipodCommandType getCurrentCommand() {
|
||||
return currentCommand;
|
||||
}
|
||||
|
||||
public void setCurrentCommand(OmnipodCommandType currentCommand) {
|
||||
this.currentCommand = currentCommand;
|
||||
|
||||
if (currentCommand != null)
|
||||
rileyLinkUtil.getRileyLinkHistory().add(new RLHistoryItemOmnipod(currentCommand));
|
||||
}
|
||||
|
||||
public OmnipodDriverState getDriverState() {
|
||||
|
@ -100,15 +64,6 @@ public class OmnipodUtil {
|
|||
|
||||
driverState = state;
|
||||
omnipodPumpStatus.driverState = state;
|
||||
|
||||
// TODO maybe remove
|
||||
// if (OmnipodUtil.omnipodPumpStatus != null) {
|
||||
// OmnipodUtil.omnipodPumpStatus.driverState = state;
|
||||
// }
|
||||
//
|
||||
// if (OmnipodUtil.omnipodPumpPlugin != null) {
|
||||
// OmnipodUtil.omnipodPumpPlugin.setDriverState(state);
|
||||
// }
|
||||
}
|
||||
|
||||
private Gson createGson() {
|
||||
|
@ -125,22 +80,6 @@ public class OmnipodUtil {
|
|||
return gsonBuilder.create();
|
||||
}
|
||||
|
||||
public void setPodDeviceState(PodDeviceState podDeviceState) {
|
||||
omnipodPumpStatus.podDeviceState = podDeviceState;
|
||||
}
|
||||
|
||||
public PodDeviceState getPodDeviceState() {
|
||||
return omnipodPumpStatus.podDeviceState;
|
||||
}
|
||||
|
||||
public void setPumpType(PumpType pumpType_) {
|
||||
omnipodPumpStatus.pumpType = pumpType_;
|
||||
}
|
||||
|
||||
public PumpType getPumpType() {
|
||||
return omnipodPumpStatus.pumpType;
|
||||
}
|
||||
|
||||
public Gson getGsonInstance() {
|
||||
return this.gsonInstance;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue