CLASS
StorageFacade
public class StorageFacade: StorageFacadeProtocol
Storage facade implementation using UserDefaults for persistence
Methods
init(userDefaults:keyPrefix:)
public init(userDefaults: UserDefaults = .standard, keyPrefix: String = "OmniconvertSDK_")
Initialize storage facade - Parameters: - userDefaults: UserDefaults instance to use (defaults to .standard) - keyPrefix: Prefix for all storage keys (defaults to "OmniconvertSDK_")
Parameters
| Name | Description |
|---|---|
| userDefaults | UserDefaults instance to use (defaults to .standard) |
| keyPrefix | Prefix for all storage keys (defaults to “OmniconvertSDK_”) |
getExperiments()
public func getExperiments() -> [String: Experiment]?
saveExperiments(_:)
public func saveExperiments(_ experiments: [String: Experiment]) -> Bool
getLastExperimentsFetchTime()
public func getLastExperimentsFetchTime() -> TimeInterval?
saveLastExperimentsFetchTime(_:)
public func saveLastExperimentsFetchTime(_ timestamp: TimeInterval) -> Bool
getWebsiteId()
public func getWebsiteId() -> String?
saveWebsiteId(_:)
public func saveWebsiteId(_ websiteId: String) -> Bool
getSettings()
public func getSettings() -> [String: Any]?
saveSettings(_:)
public func saveSettings(_ settings: [String: Any]) -> Bool
getUser(_:)
public func getUser(_ userId: String) -> User?
saveUser(_:)
public func saveUser(_ user: User) -> Bool
getUserHash(_:)
public func getUserHash(_ userId: String) -> String?
saveUserHash(_:hash:)
public func saveUserHash(_ userId: String, hash: String) -> Bool
isSessionStarted(_:)
public func isSessionStarted(_ userId: String) -> Bool
startSession(_:timeout:)
public func startSession(_ userId: String, timeout: TimeInterval) -> Bool
getSessionTimeout(_:)
public func getSessionTimeout(_ userId: String) -> TimeInterval?
updateSessionActivity(_:)
public func updateSessionActivity(_ userId: String) -> Bool
getDecisions(_:context:)
public func getDecisions(_ userId: String, context: Context) -> [Decision]?
saveDecisions(_:context:decisions:)
public func saveDecisions(_ userId: String, context: Context, decisions: [Decision]) -> Bool
clear()
public func clear() -> Bool
remove(_:)
public func remove(_ key: String) -> Bool