@@ -19,16 +19,17 @@ enum RealmStorageError: Error {
1919
2020final class RealmStorage {
2121 static let shared = RealmStorage ( )
22-
22+ private let persistentContainer = try ? Realm ( )
23+
2324 private init ( ) {
2425 // Realm file path
2526 #if DEBUG
26- print ( Realm . Configuration. defaultConfiguration. fileURL!)
27+ print ( Realm . Configuration. defaultConfiguration. fileURL!)
2728 #endif
2829 }
30+ }
2931
30- private let persistentContainer = try ? Realm ( )
31-
32+ extension RealmStorage {
3233 @discardableResult
3334 func createEntity< O: Object > ( entity: O ) throws -> O {
3435 guard let persistentContainer = persistentContainer else {
@@ -39,7 +40,7 @@ final class RealmStorage {
3940 }
4041 return entity
4142 }
42-
43+
4344 func readEntities< O: Object > ( type: O . Type , filter: NSPredicate ? = nil ) throws -> [ O ] {
4445 guard let persistentContainer = persistentContainer else {
4546 throw RealmStorageError . realmObjectError
@@ -50,7 +51,7 @@ final class RealmStorage {
5051 return Array ( persistentContainer. objects ( type) )
5152 }
5253 }
53-
54+
5455 @discardableResult
5556 func updateEntity< O: Object > ( entity: O ) throws -> O {
5657 guard let persistentContainer = persistentContainer else {
@@ -61,7 +62,7 @@ final class RealmStorage {
6162 }
6263 return entity
6364 }
64-
65+
6566 @discardableResult
6667 func deleteEntity< O: Object > ( entity: O ) throws -> O {
6768 guard let persistentContainer = persistentContainer else {
@@ -70,10 +71,10 @@ final class RealmStorage {
7071 try persistentContainer. write {
7172 persistentContainer. delete ( entity)
7273 }
73-
74+
7475 return entity
7576 }
76-
77+
7778 @discardableResult
7879 func deleteAllEntity< O: Object > ( type: O . Type ) throws -> [ O ] {
7980 guard let persistentContainer = persistentContainer else {
@@ -86,12 +87,4 @@ final class RealmStorage {
8687 }
8788 return Array ( persistentContainer. objects ( type) )
8889 }
89-
90- func findEntities< O: Object > ( type: O . Type , filter: NSPredicate ) throws -> [ O ] {
91- guard let persistentContainer = persistentContainer else {
92- throw RealmStorageError . realmObjectError
93- }
94- return Array ( persistentContainer. objects ( type) . filter ( filter) )
95- }
96-
9790}
0 commit comments