2 // KenzoDockMapper.swift
5 // Created by Hori,Masaki on 2017/02/25.
6 // Copyright © 2017年 Hori,Masaki. All rights reserved.
11 final class KenzoDockMapper: JSONMapper {
13 let apiResponse: APIResponse
14 let configuration: MappingConfiguration<KenzoDock>
16 required init(_ apiResponse: APIResponse) {
18 self.apiResponse = apiResponse
19 self.configuration = MappingConfiguration(entity: KenzoDock.entity,
20 dataKeys: KenzoDockMapper.dataKeys(apiResponse),
21 editorStore: ServerDataStore.oneTimeEditor())
25 private enum KenzoDockAPI: String {
27 case getMemberKDock = "/kcsapi/api_get_member/kdock"
28 case kousyouGetShip = "/kcsapi/api_req_kousyou/getship"
29 case getMemberRequireInfo = "/kcsapi/api_get_member/require_info"
32 private class func dataKeys(_ apiResponse: APIResponse) -> [String] {
34 guard let kenzoDockApi = KenzoDockAPI(rawValue: apiResponse.api) else { return ["api_data"] }
37 case .kousyouGetShip: return ["api_data", "api_kdock"]
39 case .getMemberRequireInfo: return ["api_data", "api_kdock"]
41 case .getMemberKDock: return ["api_data"]