|
//
// UserInfoRepository.swift
// PaiAi
//
// Created by FFIB on 16/4/1.
// Copyright © 2016年 FFIB. All rights reserved.
//
import Foundation
import RxSwift
final class UserInfoRepository {
fileprivate var userInfoStore: UserInfoStore
fileprivate var guestRemoteAPI: UserInfoRemoteAPI
fileprivate var wxRemoteAPI: UserInfoRemoteAPI
init(userInfoStore: UserInfoStore,
guestRemoteAPI: UserInfoRemoteAPI,
wxRemoteAPI: UserInfoRemoteAPI) {
self.userInfoStore = userInfoStore
self.guestRemoteAPI = guestRemoteAPI
self.wxRemoteAPI = wxRemoteAPI
}
func guestLogin() -> Single<UserInfo> {
return guestRemoteAPI.login().do(onSuccess: { (userInfo) in
self.userInfoStore.save(userInfo)
})
}
func wxLogin() -> Single<UserInfo> {
return wxRemoteAPI.login().do(onSuccess: { (userInfo) in
self.userInfoStore.save(userInfo)
})
}
func readUserInfo() -> UserInfo {
return userInfoStore.load()
}
}
|