Skip to content

Commit 3980be5

Browse files
committed
Re-arrange SqBaseConditionalSyncAdapter method order
Improves readability and creates a better basesline for the next migrations.
1 parent 4c85bde commit 3980be5

File tree

5 files changed

+66
-62
lines changed

5 files changed

+66
-62
lines changed

libpretixsync/src/main/java/eu/pretix/libpretixsync/sync/CashierSyncAdapter.kt

+21-20
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,17 @@ class CashierSyncAdapter(
2121
syncCycleId = syncCycleId,
2222
feedback = feedback,
2323
) {
24+
25+
override fun getResourceName(): String = "cashiers"
26+
27+
override fun getUrl(): String = api.organizerResourceUrl("pos/" + getResourceName())
28+
29+
override fun getId(obj: Cashier): Long = obj.server_id!!
30+
31+
override fun getId(obj: JSONObject): Long = obj.getLong("id")
32+
33+
override fun getJSON(obj: Cashier): JSONObject = JSONObject(obj.json_data)
34+
2435
override fun queryKnownIDs(): MutableSet<Long> {
2536
val res = mutableSetOf<Long>()
2637
db.cashierQueries.selectServerIds().execute { cursor ->
@@ -34,14 +45,6 @@ class CashierSyncAdapter(
3445
return res
3546
}
3647

37-
override fun getResourceName(): String = "cashiers"
38-
39-
override fun getId(obj: JSONObject): Long = obj.getLong("id")
40-
41-
override fun runInTransaction(body: TransactionWithoutReturn.() -> Unit) {
42-
db.cashierQueries.transaction(false, body)
43-
}
44-
4548
override fun insert(jsonobj: JSONObject) {
4649
db.cashierQueries.insert(
4750
active = jsonobj.getBoolean("active"),
@@ -51,16 +54,6 @@ class CashierSyncAdapter(
5154
server_id = jsonobj.getLong("id"),
5255
userid = jsonobj.getString("userid"),
5356
)
54-
55-
}
56-
57-
override fun runBatch(parameterBatch: List<Long>): List<Cashier> =
58-
db.cashierQueries.selectByServerIdList(parameterBatch).executeAsList()
59-
60-
override fun getJSON(obj: Cashier): JSONObject = JSONObject(obj.json_data)
61-
62-
override fun delete(key: Long) {
63-
db.cashierQueries.deleteByServerId(key)
6457
}
6558

6659
override fun update(obj: Cashier, jsonobj: JSONObject) {
@@ -74,7 +67,15 @@ class CashierSyncAdapter(
7467
)
7568
}
7669

77-
override fun getId(obj: Cashier): Long = obj.server_id!!
70+
override fun delete(key: Long) {
71+
db.cashierQueries.deleteByServerId(key)
72+
}
73+
74+
override fun runInTransaction(body: TransactionWithoutReturn.() -> Unit) {
75+
db.cashierQueries.transaction(false, body)
76+
}
77+
78+
override fun runBatch(parameterBatch: List<Long>): List<Cashier> =
79+
db.cashierQueries.selectByServerIdList(parameterBatch).executeAsList()
7880

79-
override fun getUrl(): String = api.organizerResourceUrl("pos/" + getResourceName())
8081
}

libpretixsync/src/main/java/eu/pretix/libpretixsync/sync/ItemCategorySyncAdapter.kt

+9-8
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,15 @@ class ItemCategorySyncAdapter(
2323
syncCycleId = syncCycleId,
2424
feedback = feedback,
2525
) {
26+
27+
override fun getResourceName(): String = "categories"
28+
29+
override fun getId(obj: ItemCategory): Long = obj.server_id!!
30+
31+
override fun getId(obj: JSONObject): Long = obj.getLong("id")
32+
33+
override fun getJSON(obj: ItemCategory): JSONObject = JSONObject(obj.json_data)
34+
2635
override fun queryKnownIDs(): MutableSet<Long>? {
2736
val res = mutableSetOf<Long>()
2837
db.itemCategoryQueries.selectServerIdsByEventSlug(event_slug = eventSlug)
@@ -38,14 +47,6 @@ class ItemCategorySyncAdapter(
3847
return res
3948
}
4049

41-
override fun getResourceName(): String = "categories"
42-
43-
override fun getId(obj: JSONObject): Long = obj.getLong("id")
44-
45-
override fun getId(obj: ItemCategory): Long = obj.server_id!!
46-
47-
override fun getJSON(obj: ItemCategory): JSONObject = JSONObject(obj.json_data)
48-
4950
override fun insert(jsonobj: JSONObject) {
5051
db.itemCategoryQueries.insert(
5152
event_slug = eventSlug,

libpretixsync/src/main/java/eu/pretix/libpretixsync/sync/ItemSyncAdapter.kt

+13-12
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,15 @@ class ItemSyncAdapter(
3030
syncCycleId = syncCycleId,
3131
feedback = feedback,
3232
) {
33+
34+
override fun getResourceName(): String = "items"
35+
36+
override fun getId(obj: Item): Long = obj.server_id!!
37+
38+
override fun getId(obj: JSONObject): Long = obj.getLong("id")
39+
40+
override fun getJSON(obj: Item): JSONObject = JSONObject(obj.json_data)
41+
3342
override fun queryKnownIDs(): MutableSet<Long> {
3443
val res = mutableSetOf<Long>()
3544
db.itemQueries.selectServerIdsByEventSlug(event_slug = eventSlug).execute { cursor ->
@@ -44,16 +53,6 @@ class ItemSyncAdapter(
4453
return res
4554
}
4655

47-
override fun getResourceName(): String = "items"
48-
49-
override fun getId(obj: JSONObject): Long = obj.getLong("id")
50-
51-
override fun getId(obj: Item): Long = obj.server_id!!
52-
53-
override fun runInTransaction(body: TransactionWithoutReturn.() -> Unit) {
54-
db.itemQueries.transaction(false, body)
55-
}
56-
5756
override fun insert(jsonobj: JSONObject) {
5857
val pictureFilename = processPicture(jsonobj, null)
5958

@@ -88,8 +87,6 @@ class ItemSyncAdapter(
8887
)
8988
}
9089

91-
override fun getJSON(obj: Item): JSONObject = JSONObject(obj.json_data)
92-
9390
override fun delete(key: Long) {
9491
db.itemQueries.deleteByServerId(key)
9592
}
@@ -149,6 +146,10 @@ class ItemSyncAdapter(
149146
return result
150147
}
151148

149+
override fun runInTransaction(body: TransactionWithoutReturn.() -> Unit) {
150+
db.itemQueries.transaction(false, body)
151+
}
152+
152153
override fun runBatch(parameterBatch: List<Long>): List<Item> =
153154
db.itemQueries.selectByServerIdListAndEventSlug(
154155
server_id = parameterBatch,

libpretixsync/src/main/java/eu/pretix/libpretixsync/sync/SqBaseDownloadSyncAdapter.kt

+6-6
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,6 @@ abstract class SqBaseDownloadSyncAdapter<T, K>(
7676
return it.size.toLong()
7777
}
7878

79-
abstract fun queryKnownIDs(): MutableSet<K>?
80-
8179
protected open fun queryKnownObjects(ids: Set<K>): MutableMap<K, T> {
8280
if (ids.isEmpty()) {
8381
return mutableMapOf()
@@ -231,19 +229,21 @@ abstract class SqBaseDownloadSyncAdapter<T, K>(
231229

232230
abstract fun getResourceName(): String
233231

232+
abstract fun getId(obj: T): K
233+
234234
@Throws(JSONException::class)
235235
abstract fun getId(obj: JSONObject): K
236236

237-
abstract fun getId(obj: T): K
237+
@Throws(JSONException::class)
238+
abstract fun getJSON(obj: T): JSONObject
238239

239-
abstract fun runInTransaction(body: TransactionWithoutReturn.() -> Unit)
240+
abstract fun queryKnownIDs(): MutableSet<K>?
240241

241242
abstract fun insert(jsonobj: JSONObject)
242243

243244
abstract fun update(obj: T, jsonobj: JSONObject)
244245

245246
abstract fun delete(key: K)
246247

247-
@Throws(JSONException::class)
248-
abstract fun getJSON(obj: T): JSONObject
248+
abstract fun runInTransaction(body: TransactionWithoutReturn.() -> Unit)
249249
}

libpretixsync/src/main/java/eu/pretix/libpretixsync/sync/TaxRuleSyncAdapter.kt

+17-16
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,15 @@ class TaxRuleSyncAdapter(
2323
syncCycleId = syncCycleId,
2424
feedback = feedback,
2525
) {
26+
27+
override fun getResourceName(): String = "taxrules"
28+
29+
override fun getId(obj: TaxRule): Long = obj.server_id!!
30+
31+
override fun getId(obj: JSONObject): Long = obj.getLong("id")
32+
33+
override fun getJSON(obj: TaxRule): JSONObject = JSONObject(obj.json_data!!)
34+
2635
override fun queryKnownIDs(): MutableSet<Long>? {
2736
val res = mutableSetOf<Long>()
2837
db.taxRuleQueries.selectServerIdsByEventSlug(eventSlug).execute { cursor ->
@@ -36,14 +45,6 @@ class TaxRuleSyncAdapter(
3645
return res
3746
}
3847

39-
override fun getResourceName(): String = "taxrules"
40-
41-
override fun getId(obj: JSONObject): Long = obj.getLong("id")
42-
43-
override fun runInTransaction(body: TransactionWithoutReturn.() -> Unit) {
44-
db.taxRuleQueries.transaction(false, body)
45-
}
46-
4748
override fun insert(jsonobj: JSONObject) {
4849
db.taxRuleQueries.insert(
4950
event_slug = eventSlug,
@@ -60,18 +61,18 @@ class TaxRuleSyncAdapter(
6061
)
6162
}
6263

64+
override fun delete(key: Long) {
65+
db.taxRuleQueries.deleteByServerId(key)
66+
}
67+
68+
override fun runInTransaction(body: TransactionWithoutReturn.() -> Unit) {
69+
db.taxRuleQueries.transaction(false, body)
70+
}
71+
6372
override fun runBatch(parameterBatch: List<Long>): List<TaxRule> =
6473
db.taxRuleQueries.selectByServerIdListAndEventSlug(
6574
server_id = parameterBatch,
6675
event_slug = eventSlug,
6776
).executeAsList()
6877

69-
override fun getJSON(obj: TaxRule): JSONObject = JSONObject(obj.json_data!!)
70-
71-
override fun delete(key: Long) {
72-
db.taxRuleQueries.deleteByServerId(key)
73-
}
74-
75-
override fun getId(obj: TaxRule): Long = obj.server_id!!
76-
7778
}

0 commit comments

Comments
 (0)