Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Resolve LoopKit deprecation warnings by using new APIs.
  • Loading branch information
Bharat Mediratta committed Mar 30, 2017
commit 5dd7b3e8bc82388d9f347b9b4547ff51fdc85eb8
18 changes: 10 additions & 8 deletions Loop/Managers/LoopDataManager.swift
Original file line number Diff line number Diff line change
Expand Up @@ -198,12 +198,13 @@ final class LoopDataManager {

if insulinEffect == nil {
updateGroup.enter()
deviceDataManager.doseStore.getGlucoseEffects(startDate: effectStartDate) { (effects, error) -> Void in
if let error = error {
deviceDataManager.doseStore.getGlucoseEffects(start: effectStartDate) { result -> Void in
switch result {
case .success(let effects):
self.insulinEffect = effects
case .failure(let error):
self.deviceDataManager.logger.addError(error, fromSource: "DoseStore")
self.insulinEffect = nil
} else {
self.insulinEffect = effects
}

updateGroup.leave()
Expand All @@ -212,12 +213,13 @@ final class LoopDataManager {

if insulinOnBoard == nil {
updateGroup.enter()
deviceDataManager.doseStore.insulinOnBoardAtDate(Date()) { (value, error) in
if let error = error {
deviceDataManager.doseStore.insulinOnBoard(at: Date()) { result in
switch result {
case .success(let values):
self.insulinOnBoard = values
case .failure(let error):
self.deviceDataManager.logger.addError(error, fromSource: "DoseStore")
self.insulinOnBoard = nil
} else {
self.insulinOnBoard = value
}
updateGroup.leave()
}
Expand Down
15 changes: 8 additions & 7 deletions Loop/Managers/StatusExtensionDataManager.swift
Original file line number Diff line number Diff line change
Expand Up @@ -92,14 +92,11 @@ final class StatusExtensionDataManager {
let chartEndDate = Date().addingTimeInterval(TimeInterval(hours: 3))

updateGroup.enter()
glucoseStore.getRecentGlucoseValues(startDate: chartStartDate, endDate: Date()) {
(values, error) in
glucoseStore.getGlucoseValues(start: chartStartDate, end: Date()) {
(result) in

if let error = error {
self.dataManager.logger.addError(error, fromSource: "GlucoseStore")
context.glucose = nil
context.predictedGlucose = nil
} else {
switch result {
case .success(let values):
context.glucose = values.map({
return GlucoseContext(
value: $0.quantity.doubleValue(for: glucoseUnit),
Expand All @@ -117,6 +114,10 @@ final class StatusExtensionDataManager {
startDate: predictedGlucose[0].startDate,
interval: predictedGlucose[1].startDate.timeIntervalSince(predictedGlucose[0].startDate))
}
case .failure(let error):
self.dataManager.logger.addError(error, fromSource: "GlucoseStore")
context.glucose = nil
context.predictedGlucose = nil
}
updateGroup.leave()
}
Expand Down
9 changes: 5 additions & 4 deletions Loop/View Controllers/PredictionTableViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -138,13 +138,14 @@ class PredictionTableViewController: UITableViewController, IdentifiableClass, U
}

reloadGroup.enter()
glucoseStore.getRecentGlucoseValues(startDate: self.charts.startDate) { (values, error) -> Void in
if let error = error {
glucoseStore.getGlucoseValues(start: self.charts.startDate) { result -> Void in
switch result {
case .success(let values):
self.charts.setGlucoseValues(values)
case .failure(let error):
self.dataManager.logger.addError(error, fromSource: "GlucoseStore")
self.needsRefresh = true
self.charts.setGlucoseValues([])
} else {
self.charts.setGlucoseValues(values)
}

reloadGroup.leave()
Expand Down
34 changes: 19 additions & 15 deletions Loop/View Controllers/StatusTableViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -206,13 +206,14 @@ final class StatusTableViewController: UITableViewController, UIGestureRecognize

if self.refreshContext.remove(.glucose) != nil {
reloadGroup.enter()
glucoseStore.getRecentGlucoseValues(startDate: self.chartStartDate) { (values, error) -> Void in
if let error = error {
glucoseStore.getGlucoseValues(start: self.chartStartDate) { result -> Void in
switch result {
case .success(let values):
self.charts.setGlucoseValues(values)
case .failure(let error):
self.dataManager.logger.addError(error, fromSource: "GlucoseStore")
self.refreshContext.update(with: .glucose)
self.charts.setGlucoseValues([])
} else {
self.charts.setGlucoseValues(values)
}

reloadGroup.leave()
Expand Down Expand Up @@ -249,36 +250,39 @@ final class StatusTableViewController: UITableViewController, UIGestureRecognize

if refreshContext.remove(.insulin) != nil {
reloadGroup.enter()
dataManager.doseStore.getInsulinOnBoardValues(startDate: chartStartDate) { (values, error) -> Void in
if let error = error {
dataManager.doseStore.getInsulinOnBoardValues(start: chartStartDate) { result -> Void in
switch result {
case .success(let values):
self.charts.setIOBValues(values)
case .failure(let error):
self.dataManager.logger.addError(error, fromSource: "DoseStore")
self.refreshContext.update(with: .insulin)
self.charts.setIOBValues([])
} else {
self.charts.setIOBValues(values)
}
reloadGroup.leave()
}

reloadGroup.enter()
dataManager.doseStore.getRecentNormalizedDoseEntries(startDate: chartStartDate) { (doses, error) -> Void in
if let error = error {
dataManager.doseStore.getNormalizedDoseEntries(start: chartStartDate) { result -> Void in
switch result {
case .failure(let error):
self.dataManager.logger.addError(error, fromSource: "DoseStore")
self.refreshContext.update(with: .insulin)
self.charts.setDoseEntries([])
} else {
case .success(let doses):
self.charts.setDoseEntries(doses)
}
reloadGroup.leave()
}

reloadGroup.enter()
dataManager.doseStore.getTotalRecentUnitsDelivered { (units, _, error) in
if error != nil {
dataManager.doseStore.getTotalUnitsDelivered(since: Calendar.current.startOfDay(for: Date())) { result in
switch result {
case .success(let units):
self.totalDelivery = units.value
case .failure:
self.refreshContext.update(with: .insulin)
self.totalDelivery = nil
} else {
self.totalDelivery = units
}

reloadGroup.leave()
Expand Down