|
|
|
|
@ -8,26 +8,27 @@ import PromiseKit
|
|
|
|
|
// TODO define actual type, and validate length
|
|
|
|
|
public typealias IdentityKey = Data
|
|
|
|
|
|
|
|
|
|
@objc(SSKAccountManager)
|
|
|
|
|
public class AccountManager: NSObject {
|
|
|
|
|
/// based on libsignal-service-java's AccountManager class
|
|
|
|
|
@objc(SSKAccountServiceClient)
|
|
|
|
|
public class AccountServiceClient: NSObject {
|
|
|
|
|
|
|
|
|
|
static var shared = AccountManager()
|
|
|
|
|
static var shared = AccountServiceClient()
|
|
|
|
|
|
|
|
|
|
private let serviceSocket: ServiceSocket
|
|
|
|
|
private let serviceClient: SignalServiceClient
|
|
|
|
|
|
|
|
|
|
override init() {
|
|
|
|
|
self.serviceSocket = ServiceRestSocket()
|
|
|
|
|
self.serviceClient = SignalServiceRestClient()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public func getPreKeysCount() -> Promise<Int> {
|
|
|
|
|
return serviceSocket.getAvailablePreKeys()
|
|
|
|
|
return serviceClient.getAvailablePreKeys()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public func setPreKeys(identityKey: IdentityKey, signedPreKeyRecord: SignedPreKeyRecord, preKeyRecords: [PreKeyRecord]) -> Promise<Void> {
|
|
|
|
|
return serviceSocket.registerPreKeys(identityKey: identityKey, signedPreKeyRecord: signedPreKeyRecord, preKeyRecords: preKeyRecords)
|
|
|
|
|
return serviceClient.registerPreKeys(identityKey: identityKey, signedPreKeyRecord: signedPreKeyRecord, preKeyRecords: preKeyRecords)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public func setSignedPreKey(_ signedPreKey: SignedPreKeyRecord) -> Promise<Void> {
|
|
|
|
|
return serviceSocket.setCurrentSignedPreKey(signedPreKey)
|
|
|
|
|
return serviceClient.setCurrentSignedPreKey(signedPreKey)
|
|
|
|
|
}
|
|
|
|
|
}
|