Skip to content

Instantly share code, notes, and snippets.

@alexpersian
Created December 12, 2015 21:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save alexpersian/4b4590bee3cf3f81c049 to your computer and use it in GitHub Desktop.
Save alexpersian/4b4590bee3cf3f81c049 to your computer and use it in GitHub Desktop.
Example of a previous manager class I've made
//
// HandleUserDefaults.swift
// Student
//
// Created by Alex Persian on 6/9/15.
// Copyright (c) 2015 Geo-Comm Inc. All rights reserved.
//
import Foundation
class UserDefaultsManager {
class var standardUserDefaults: NSUserDefaults {
return NSUserDefaults.standardUserDefaults()
}
// MARK: User login credentials
class func setUserDefaults(name: String, starId: String) {
standardUserDefaults.setObject(name, forKey: "nameKey")
standardUserDefaults.setObject(starId, forKey: "starIdKey")
}
class func getUserDefaultsName() -> String {
if let name = standardUserDefaults.stringForKey("nameKey") {
return name
} else {
return "USER DEFAULTS: No name available"
}
}
// MARK: User Star ID
class func setUserDefaultsStarId(starId: String) {
standardUserDefaults.setObject(starId, forKey: "starIdKey")
}
class func getUserDefaultsStarId() -> String {
if let name = standardUserDefaults.stringForKey("starIdKey") {
return name
} else {
return "USER DEFAULTS: No Star ID available"
}
}
// MARK: Authentication
class func setAuthenticateUser() {
standardUserDefaults.setBool(true, forKey: "authenticated")
}
class func getWelcomeScreenSeen() -> Bool {
let authenticated = standardUserDefaults.boolForKey("authenticated")
return authenticated
}
// MARK: Device tokens
class func getDeviceToken() -> String {
if let token = standardUserDefaults.stringForKey("apnsToken") {
return token
} else {
return "USER DEFAULTS: No token available"
}
}
// MARK: Clearing all defaults
class func clearUserDefaults() {
for key in standardUserDefaults.dictionaryRepresentation().keys {
standardUserDefaults.removeObjectForKey(key.description)
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment