Skip to content

Commit 9808a28

Browse files
committed
adding CustomDebugStringConvertible support for the new manager/state, and bumping status extension version up to 1.2.0
1 parent d8ce03f commit 9808a28

File tree

4 files changed

+32
-10
lines changed

4 files changed

+32
-10
lines changed

Loop Status Extension/Info.plist

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<key>CFBundlePackageType</key>
1818
<string>XPC!</string>
1919
<key>CFBundleShortVersionString</key>
20-
<string>1.1.2</string>
20+
<string>1.2.0</string>
2121
<key>CFBundleVersion</key>
2222
<string>$(CURRENT_PROJECT_VERSION)</string>
2323
<key>MainAppBundleIdentifier</key>

Loop Status Extension/StatusExtensionContext.swift

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ struct GlucoseContext {
4040
let sensor: SensorDisplayable?
4141
}
4242

43-
final class StatusExtensionContext: NSObject, RawRepresentable {
43+
final class StatusExtensionContext: RawRepresentable {
4444
typealias RawValue = [String: Any]
4545
private let version = 1
4646

@@ -52,12 +52,9 @@ final class StatusExtensionContext: NSObject, RawRepresentable {
5252
var batteryPercentage: Double?
5353
var eventualGlucose: Double?
5454

55-
override init() {
56-
super.init()
57-
}
55+
init() { }
5856

5957
required init?(rawValue: RawValue) {
60-
super.init()
6158
let raw = rawValue
6259

6360
if let preferredString = raw["preferredUnitDisplayString"] as? String,
@@ -161,3 +158,10 @@ final class StatusExtensionContext: NSObject, RawRepresentable {
161158
return raw
162159
}
163160
}
161+
162+
163+
extension StatusExtensionContext: CustomDebugStringConvertible {
164+
var debugDescription: String {
165+
return String(reflecting: rawValue)
166+
}
167+
}

Loop/Managers/DeviceDataManager.swift

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -975,11 +975,11 @@ final class DeviceDataManager: CarbStoreDelegate, CarbStoreSyncDelegate, DoseSto
975975

976976
// MARK: - WatchKit
977977

978-
private(set) var watchManager: WatchDataManager!
978+
fileprivate var watchManager: WatchDataManager!
979979

980980
// MARK: - Status Extension
981981

982-
private(set) var statusExtensionManager: StatusExtensionDataManager!
982+
fileprivate var statusExtensionManager: StatusExtensionDataManager!
983983

984984
// MARK: - Initialization
985985

@@ -1075,7 +1075,11 @@ extension DeviceDataManager: CustomDebugStringConvertible {
10751075
"workoutModeEnabled: \(workoutModeEnabled)",
10761076
"maximumBasalRatePerHour: \(maximumBasalRatePerHour)",
10771077
"maximumBolus: \(maximumBolus)",
1078-
String(reflecting: rileyLinkManager)
1078+
String(reflecting: rileyLinkManager),
1079+
String(reflecting: statusExtensionManager!),
1080+
"",
1081+
"## NSUserDefaults",
1082+
String(reflecting: UserDefaults.standard.dictionaryRepresentation())
10791083
].joined(separator: "\n")
10801084
}
10811085
}

Loop/Managers/StatusExtensionDataManager.swift

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,17 @@ final class StatusExtensionDataManager {
2020
NotificationCenter.default.addObserver(self, selector: #selector(update(_:)), name: .LoopDataUpdated, object: deviceDataManager.loopManager)
2121
}
2222

23+
fileprivate var defaults: UserDefaults? {
24+
return UserDefaults(suiteName: Bundle.main.appGroupSuiteName)
25+
}
26+
2327
@objc private func update(_ notification: Notification) {
2428

2529
self.dataManager.glucoseStore?.preferredUnit() { (unit, error) in
2630
if error == nil, let unit = unit {
2731
self.createContext(unit) { (context) in
2832
if let context = context {
29-
UserDefaults(suiteName: Bundle.main.appGroupSuiteName)?.statusExtensionContext = context
33+
self.defaults?.statusExtensionContext = context
3034
}
3135
}
3236
}
@@ -98,3 +102,13 @@ final class StatusExtensionDataManager {
98102
}
99103
}
100104
}
105+
106+
107+
extension StatusExtensionDataManager: CustomDebugStringConvertible {
108+
var debugDescription: String {
109+
return [
110+
"## StatusExtensionDataManager",
111+
"statusExtensionContext: \(String(reflecting: defaults?.statusExtensionContext))"
112+
].joined(separator: "\n")
113+
}
114+
}

0 commit comments

Comments
 (0)