OSDN Git Service

Damageに問題があるときのログを詳細にした
[kcd/KCD.git] / KCD / BookmarkDataStore.swift
1 //
2 //  BookmarkDataStore.swift
3 //  KCD
4 //
5 //  Created by Hori,Masaki on 2017/01/06.
6 //  Copyright © 2017年 Hori,Masaki. All rights reserved.
7 //
8
9 import Cocoa
10
11 extension CoreDataIntormation {
12     static let bookmark = CoreDataIntormation("Bookmark")
13 }
14 extension CoreDataCore {
15     static let bookmark = CoreDataCore(.bookmark)
16 }
17
18 class BookmarkDataStore: CoreDataAccessor, CoreDataManager {
19     static var `default` = BookmarkDataStore(type: .reader)
20     class func oneTimeEditor() -> BookmarkDataStore {
21         return BookmarkDataStore(type: .editor)
22     }
23     
24     required init(type: CoreDataManagerType) {
25         managedObjectContext =
26             type == .reader ? core.parentManagedObjectContext
27             : core.editorManagedObjectContext()
28     }
29     deinit {
30         saveActionCore()
31     }
32     
33     let core = CoreDataCore.bookmark
34     var managedObjectContext: NSManagedObjectContext
35 }
36
37 extension BookmarkDataStore {
38     func createBookmark() -> Bookmark? {
39         return insertNewObject(for: Bookmark.entity)
40     }
41 }