mirror of
https://github.com/AU-COVIDSafe/mobile-ios.git
synced 2025-04-19 21:15:21 +00:00
COVIDSafe code from version 1.8 (#15)
This commit is contained in:
parent
6f92ff8fb8
commit
2257c542ed
45 changed files with 3547 additions and 839 deletions
63
CovidSafe/BLELogDB.swift
Normal file
63
CovidSafe/BLELogDB.swift
Normal file
|
@ -0,0 +1,63 @@
|
|||
//
|
||||
// BLELogDB.swift
|
||||
// CovidSafe
|
||||
//
|
||||
// Copyright © 2020 Australian Government. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
import CoreData
|
||||
|
||||
class BLELogDB {
|
||||
static let shared = BLELogDB()
|
||||
private let modelName = "debug"
|
||||
private var localStoreUrl: URL?
|
||||
private var _persistentContainer: CovidPersistentContainer?
|
||||
var migrationDelegate: EncounterDBMigrationProgress?
|
||||
var backgroundTask: UIBackgroundTaskIdentifier = .invalid
|
||||
|
||||
|
||||
private lazy var managedObjectModel: NSManagedObjectModel = {
|
||||
guard let modelURL = Bundle.main.url(forResource: self.modelName, withExtension: "momd") else {
|
||||
fatalError("Unable to Find Data Model")
|
||||
}
|
||||
|
||||
guard let managedObjectModel = NSManagedObjectModel(contentsOf: modelURL) else {
|
||||
fatalError("Unable to Load Data Model")
|
||||
}
|
||||
|
||||
return managedObjectModel
|
||||
}()
|
||||
|
||||
public var persistentContainer: CovidPersistentContainer? {
|
||||
get {
|
||||
if let container = _persistentContainer {
|
||||
return container
|
||||
}
|
||||
|
||||
let container = CovidPersistentContainer(name: self.modelName)
|
||||
container.loadPersistentStores(completionHandler: { (storeDescription, error) in
|
||||
if let error = error as NSError? {
|
||||
fatalError("Unresolved error \(error), \(error.userInfo)")
|
||||
}
|
||||
})
|
||||
_persistentContainer = container
|
||||
return _persistentContainer
|
||||
}
|
||||
}
|
||||
|
||||
func registerBackgroundTask() {
|
||||
backgroundTask = UIApplication.shared.beginBackgroundTask { [weak self] in
|
||||
self?.endBackgroundTask()
|
||||
}
|
||||
assert(backgroundTask != .invalid)
|
||||
}
|
||||
|
||||
func endBackgroundTask() {
|
||||
if(backgroundTask != .invalid){
|
||||
UIApplication.shared.endBackgroundTask(backgroundTask)
|
||||
backgroundTask = .invalid
|
||||
}
|
||||
}
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue