OSDN Git Service

staticプロパティをインスタンスプロパティに変更
[kcd/KCD.git] / KCD / NyukyoDockMapper.swift
index 7782a0a..1ee4a0d 100644 (file)
@@ -16,26 +16,25 @@ final class NyukyoDockMapper: JSONMapper {
     required init(_ apiResponse: APIResponse) {
         
         self.apiResponse = apiResponse
-        self.configuration = MappingConfiguration(entity: NyukyoDock.entity,
+        self.configuration = MappingConfiguration(entity: NyukyoDock.self,
                                                   dataKeys: NyukyoDockMapper.dataKeys(apiResponse),
-                                                  editorStore: ServerDataStore.oneTimeEditor())
-    }
-    
-    
-    private enum DeckAPI: String {
-        
-        case getMemberNDock = "/kcsapi/api_get_member/ndock"
-        case port = "/kcsapi/api_port/port"
+                                                  editorStore: ServerDataStore.oneTimeEditor(),
+                                                  ignoreKeys: ["api_member_id"])
     }
     
     private class func dataKeys(_ apiResponse: APIResponse) -> [String] {
         
-        guard let deckApi = DeckAPI(rawValue: apiResponse.api) else { return ["api_data"] }
-        
-        switch deckApi {
+        switch apiResponse.api.endpoint {
+            
         case .port: return ["api_data", "api_ndock"]
             
-        case .getMemberNDock: return ["api_data"]
+        case .ndock: return ["api_data"]
+            
+        default:
+            
+            Logger.shared.log("Missing API: \(apiResponse.api)")
+            
+            return ["api_data"]
         }
     }
 }