UNPKG

1.35 kBPlain TextView Raw
1//
2// PinSecretBridge.swift
3// CybavoWalletService
4//
5// Created by Eva Hsu on 2019/10/22.
6//
7
8import Foundation
9import CYBAVOWallet
10@objc(PinSecretBridge)
11class PinSecretBridge: NSObject{
12 private static var pinSecrets = [Int : PinSecret]()
13 public static let PIN_SECRET_KEY = "pinSecret"
14 public static let PLAIN_TEXT = "plainText"
15 public static let RETAIN = "retain"
16 public static let REQUEST_ID = "requestId"
17 public static let LEVEL = "level"
18 public static let IS_SAME = "isSame"
19 public static func get(key: Int) -> PinSecret?{
20
21 return PinSecretBridge.pinSecrets[key]
22 }
23
24 public static func put(pinSecret: PinSecret) -> Int {
25 let key = pinSecret.hashValue()/100000
26 PinSecretBridge.pinSecrets[key] = pinSecret
27 return key
28 }
29
30 public static func fromDictionary(dict: NSDictionary) -> PinSecret?{
31 guard let key = dict[PinSecretBridge.PIN_SECRET_KEY] as! Int? else{
32 return nil
33 }
34 let pinSecret1 = PinSecretBridge.pinSecrets[key]
35 guard let pinSecret = pinSecret1 else{
36 return nil
37 }
38 if let retain = dict[PinSecretBridge.RETAIN] as! Bool?, retain == true{
39 pinSecret.retain()
40 }else{
41 PinSecretBridge.pinSecrets.removeValue(forKey: key)
42 }
43 return pinSecret
44 }
45}