Skip to content

Commit 757a871

Browse files
committed
tweak naming and other stuffs
1 parent f31fca6 commit 757a871

9 files changed

+27
-25
lines changed

Example/IceCream_Example/AppDelegate.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
2424
SyncObject(type: Cat.self),
2525
SyncObject(type: Person.self, uObjectClassType: Cat.self)
2626
])
27-
27+
2828
/// If you wanna test public Database, comment the above syncEngine code and uncomment the following one
2929
/// Besides, uncomment Line 26 to 28 in Person.swift file
3030
// syncEngine = SyncEngine(objects: [SyncObject<Person>()], databaseScope: .public)

Example/IceCream_Example/CatsViewController.swift

-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ final class CatsViewController: UIViewController {
3737

3838
view.addSubview(tableView)
3939
navigationItem.rightBarButtonItem = addBarItem
40-
title = "Cats"
4140

4241
bind()
4342
}

Example/IceCream_Example/Dog.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class Dog: Object {
2121
@objc dynamic var avatar: CreamAsset?
2222

2323
// Relationships usage in Realm: https://realm.io/docs/swift/latest/#relationships
24-
// @objc dynamic var owner: Person? // to-one relationships must be optional
24+
@objc dynamic var owner: Person? // to-one relationships must be optional
2525

2626
override class func primaryKey() -> String? {
2727
return "id"

Example/IceCream_Example/DogsViewController.swift

+2-3
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ final class DogsViewController: UIViewController {
3838

3939
view.addSubview(tableView)
4040
navigationItem.rightBarButtonItem = addBarItem
41-
title = "Dogs"
4241

4342
bind()
4443
}
@@ -67,7 +66,7 @@ final class DogsViewController: UIViewController {
6766
let dog = Dog()
6867
dog.name = "Dog Number " + "\(dogs.count)"
6968
dog.age = dogs.count + 1
70-
// dog.owner = jim
69+
dog.owner = jim
7170

7271
let data = UIImage(named: dog.age % 2 == 1 ? "smile_dog" : "tongue_dog")!.jpegData(compressionQuality: 1.0)
7372
dog.avatar = CreamAsset.create(object: dog, propName: Dog.AVATAR_KEY, data: data!)
@@ -133,7 +132,7 @@ extension DogsViewController: UITableViewDataSource {
133132

134133
public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
135134
let cell = tableView.dequeueReusableCell(withIdentifier: "cell")
136-
cell?.textLabel?.text = dogs[indexPath.row].name + " Age: \(dogs[indexPath.row].age)"
135+
cell?.textLabel?.text = dogs[indexPath.row].name + "\(dogs[indexPath.row].age)" + "owner: \(dogs[indexPath.row].owner?.name)"
137136
if let data = dogs[indexPath.row].avatar?.storedData() {
138137
cell?.imageView?.image = UIImage(data: data)
139138
} else {

Example/IceCream_Example/OwnersViewController.swift

-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ final class OwnersViewController: UIViewController {
3636

3737
view.addSubview(tableView)
3838
navigationItem.rightBarButtonItem = addBarItem
39-
title = "Owners"
4039

4140
bind()
4241
}

Example/IceCream_Example/TabBarViewController.swift

+12-4
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,18 @@ final class TabBarViewController: UITabBarController {
1212

1313
override func viewDidLoad() {
1414
super.viewDidLoad()
15-
viewControllers = [
16-
UINavigationController(rootViewController: DogsViewController()),
17-
UINavigationController(rootViewController: CatsViewController()),
18-
UINavigationController(rootViewController: OwnersViewController())
15+
16+
let dogsViewController = DogsViewController()
17+
dogsViewController.title = "Dogs"
18+
let catsViewController = CatsViewController()
19+
catsViewController.title = "Cats"
20+
let ownersViewController = OwnersViewController()
21+
ownersViewController.title = "Owners"
22+
23+
viewControllers = [
24+
UINavigationController(rootViewController: dogsViewController),
25+
UINavigationController(rootViewController: catsViewController),
26+
UINavigationController(rootViewController: ownersViewController)
1927
]
2028
}
2129

IceCream/Classes/PendingRelationshipsWorker.swift

+7-10
Original file line numberDiff line numberDiff line change
@@ -8,29 +8,26 @@
88
import Foundation
99
import RealmSwift
1010

11-
final class PendingRelationshipsWorker<ListElement: Object> {
12-
13-
private let listElementType: ListElement.Type
11+
final class PendingRelationshipsWorker<Element: Object> {
1412

1513
var realm: Realm?
1614
var owner: Object?
1715

1816
private var pendingListElementPrimaryKeyValue: [String: Any] = [:]
1917

20-
init(listElementType: ListElement.Type) {
21-
self.listElementType = listElementType
22-
}
23-
2418
func addToPendingListElement(propertyName: String, primaryKeyValue: Any) {
2519
pendingListElementPrimaryKeyValue[propertyName] = primaryKeyValue
2620
}
2721

2822
func resolvePendingListElements() {
29-
guard let owner = owner, let realm = realm, pendingListElementPrimaryKeyValue.count > 0 else { return }
23+
guard let owner = owner, let realm = realm, pendingListElementPrimaryKeyValue.count > 0 else {
24+
// Maybe we could add one log here
25+
return
26+
}
3027
BackgroundWorker.shared.start {
3128
for (propName, primaryKeyValue) in self.pendingListElementPrimaryKeyValue {
32-
guard let list = owner.value(forKey: propName) as? List<ListElement> else { return }
33-
if let existListElementObject = realm.object(ofType: self.listElementType, forPrimaryKey: primaryKeyValue) {
29+
guard let list = owner.value(forKey: propName) as? List<Element> else { return }
30+
if let existListElementObject = realm.object(ofType: Element.self, forPrimaryKey: primaryKeyValue) {
3431
try! realm.write {
3532
list.append(existListElementObject)
3633
}

IceCream/Classes/SyncEngine.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public final class SyncEngine {
2626
let publicDatabaseManager = PublicDatabaseManager(objects: objects, container: container)
2727
self.init(databaseManager: publicDatabaseManager)
2828
default:
29-
fatalError("Not supported yet")
29+
fatalError("Shared database scope is not supported yet")
3030
}
3131
}
3232

IceCream/Classes/SyncObject.swift

+3-3
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ public final class SyncObject<T, U, V, W> where T: Object & CKRecordConvertible
2525

2626
public let realmConfiguration: Realm.Configuration
2727

28-
private let pendingUTypeRelationshipsWorker = PendingRelationshipsWorker(listElementType: U.self)
29-
private let pendingVTypeRelationshipsWorker = PendingRelationshipsWorker(listElementType: V.self)
30-
private let pendingWTypeRelationshipsWorker = PendingRelationshipsWorker(listElementType: W.self)
28+
private let pendingUTypeRelationshipsWorker = PendingRelationshipsWorker<U>()
29+
private let pendingVTypeRelationshipsWorker = PendingRelationshipsWorker<V>()
30+
private let pendingWTypeRelationshipsWorker = PendingRelationshipsWorker<W>()
3131

3232
public init(
3333
realmConfiguration: Realm.Configuration = .defaultConfiguration,

0 commit comments

Comments
 (0)