Skip to content

Commit

Permalink
Refactor HAAPI for safety
Browse files Browse the repository at this point in the history
  • Loading branch information
robbiet480 committed Apr 23, 2017
1 parent d635a48 commit 25b6070
Show file tree
Hide file tree
Showing 5 changed files with 527 additions and 462 deletions.
25 changes: 11 additions & 14 deletions HomeAssistant/AppDelegate.swift
Expand Up @@ -30,7 +30,6 @@ class AppDelegate: UIResponder, UIApplicationDelegate {

var window: UIWindow?

// swiftlint:disable:next line_length
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
Realm.Configuration.defaultConfiguration = realmConfig
Expand All @@ -39,7 +38,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {

if HomeAssistantAPI.sharedInstance.Configured == false {
if let baseURL = keychain["baseURL"], let apiPass = keychain["apiPassword"] {
HomeAssistantAPI.sharedInstance.Setup(baseURL: baseURL, password: apiPass,
HomeAssistantAPI.sharedInstance.Setup(baseURLString: baseURL, password: apiPass,
deviceID: keychain["deviceID"])
}
}
Expand Down Expand Up @@ -106,16 +105,14 @@ class AppDelegate: UIResponder, UIApplicationDelegate {

print("Registering push with tokenString: \(tokenString)")

HomeAssistantAPI.sharedInstance.deviceToken = tokenString

_ = HomeAssistantAPI.sharedInstance.registerDeviceForPush(deviceToken: tokenString).then { resp -> Void in
_ = HomeAssistantAPI.sharedInstance.RegisterDeviceForPush(deviceToken: tokenString).then { resp -> Void in
if let pushId = resp.PushId {
print("Registered for push. Platform: \(resp.SNSPlatform ?? "MISSING"), PushID: \(pushId)")
CLSLogv("Registered for push:", getVaList([pushId]))
Crashlytics.sharedInstance().setUserIdentifier(pushId)
prefs.setValue(pushId, forKey: "pushID")
HomeAssistantAPI.sharedInstance.pushID = pushId
_ = HomeAssistantAPI.sharedInstance.identifyDevice()
_ = HomeAssistantAPI.sharedInstance.IdentifyDevice()
}
}

Expand All @@ -134,7 +131,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {

if HomeAssistantAPI.sharedInstance.Configured == false {
if let baseURL = keychain["baseURL"], let apiPass = keychain["apiPassword"] {
HomeAssistantAPI.sharedInstance.Setup(baseURL: baseURL, password: apiPass,
HomeAssistantAPI.sharedInstance.Setup(baseURLString: baseURL, password: apiPass,
deviceID: keychain["deviceID"])
}
}
Expand Down Expand Up @@ -178,7 +175,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
print("Background fetch activated at \(timestamp)!")
if HomeAssistantAPI.sharedInstance.Configured == false {
if let baseURL = keychain["baseURL"], let apiPass = keychain["apiPassword"] {
HomeAssistantAPI.sharedInstance.Setup(baseURL: baseURL, password: apiPass,
HomeAssistantAPI.sharedInstance.Setup(baseURLString: baseURL, password: apiPass,
deviceID: keychain["deviceID"])
}
}
Expand All @@ -195,7 +192,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
completionHandler(UIBackgroundFetchResult.failed)
}
} else {
HomeAssistantAPI.sharedInstance.identifyDevice().then { _ -> Void in
HomeAssistantAPI.sharedInstance.IdentifyDevice().then { _ -> Void in
completionHandler(UIBackgroundFetchResult.newData)
}.catch {error in
print("Error when attempting to identify device during background fetch")
Expand All @@ -211,7 +208,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
completionHandler: @escaping () -> Void) {
if HomeAssistantAPI.sharedInstance.Configured == false {
if let baseURL = keychain["baseURL"], let apiPass = keychain["apiPassword"] {
HomeAssistantAPI.sharedInstance.Setup(baseURL: baseURL, password: apiPass,
HomeAssistantAPI.sharedInstance.Setup(baseURLString: baseURL, password: apiPass,
deviceID: keychain["deviceID"])
}
}
Expand All @@ -229,7 +226,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool {
if HomeAssistantAPI.sharedInstance.Configured == false {
if let baseURL = keychain["baseURL"], let apiPass = keychain["apiPassword"] {
HomeAssistantAPI.sharedInstance.Setup(baseURL: baseURL, password: apiPass,
HomeAssistantAPI.sharedInstance.Setup(baseURLString: baseURL, password: apiPass,
deviceID: keychain["deviceID"])
}
}
Expand Down Expand Up @@ -263,7 +260,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {

if HomeAssistantAPI.sharedInstance.Configured == false {
if let baseURL = keychain["baseURL"], let apiPass = keychain["apiPassword"] {
HomeAssistantAPI.sharedInstance.Setup(baseURL: baseURL, password: apiPass,
HomeAssistantAPI.sharedInstance.Setup(baseURLString: baseURL, password: apiPass,
deviceID: keychain["deviceID"])
}
}
Expand All @@ -285,7 +282,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
if HomeAssistantAPI.sharedInstance.locationEnabled {
if HomeAssistantAPI.sharedInstance.Configured == false {
if let baseURL = keychain["baseURL"], let apiPass = keychain["apiPassword"] {
HomeAssistantAPI.sharedInstance.Setup(baseURL: baseURL, password: apiPass,
HomeAssistantAPI.sharedInstance.Setup(baseURLString: baseURL, password: apiPass,
deviceID: keychain["deviceID"])
}
}
Expand All @@ -303,7 +300,7 @@ extension AppDelegate: UNUserNotificationCenterDelegate {
withCompletionHandler completionHandler: @escaping () -> Void) {
if HomeAssistantAPI.sharedInstance.Configured == false {
if let baseURL = keychain["baseURL"], let apiPass = keychain["apiPassword"] {
HomeAssistantAPI.sharedInstance.Setup(baseURL: baseURL, password: apiPass,
HomeAssistantAPI.sharedInstance.Setup(baseURLString: baseURL, password: apiPass,
deviceID: keychain["deviceID"])
}
}
Expand Down

0 comments on commit 25b6070

Please sign in to comment.