Skip to content

Commit e364525

Browse files
sunkupArnyminerZ
andauthored
Stop subclassing AndroidEvent (#786)
* Update synctools version * Refactor LocalEvent to remove subclassing of AndroidEvent - Update LocalEvent to use composition over inheritance. - Modify LocalCalendar to not use AndroidEventFactory. - Adjust ProcessEventsTask to instantiate LocalEvent with AndroidEvent. * Downgrade androidx test rules and runner Signed-off-by: Arnau Mora <[email protected]> --------- Signed-off-by: Arnau Mora <[email protected]> Co-authored-by: Arnau Mora <[email protected]>
1 parent 5be0bac commit e364525

File tree

4 files changed

+11
-26
lines changed

4 files changed

+11
-26
lines changed

app/src/main/java/at/bitfire/icsdroid/ProcessEventsTask.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import android.content.Intent
1010
import android.net.Uri
1111
import android.util.Log
1212
import androidx.core.app.NotificationCompat
13+
import at.bitfire.ical4android.AndroidEvent
1314
import at.bitfire.ical4android.Event
1415
import at.bitfire.ical4android.util.DateUtils
1516
import at.bitfire.icsdroid.calendar.LocalCalendar
@@ -232,7 +233,7 @@ class ProcessEventsTask(
232233
val localEvents = calendar.queryByUID(uid)
233234
if (localEvents.isEmpty()) {
234235
Log.d(Constants.TAG, "$uid not in local calendar, adding")
235-
LocalEvent(calendar, event).add()
236+
LocalEvent(AndroidEvent(calendar, event, null, null, null, 0)).add()
236237
} else {
237238
val localEvent = localEvents.first()
238239

app/src/main/java/at/bitfire/icsdroid/calendar/LocalCalendar.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ class LocalCalendar private constructor(
2020
account: Account,
2121
provider: ContentProviderClient,
2222
id: Long
23-
) : AndroidCalendar<LocalEvent>(account, provider, LocalEvent.Factory, id) {
23+
) : AndroidCalendar(account, provider, id) {
2424

2525
companion object {
2626

app/src/main/java/at/bitfire/icsdroid/calendar/LocalEvent.kt

Lines changed: 5 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,26 +4,10 @@
44

55
package at.bitfire.icsdroid.calendar
66

7-
import android.content.ContentValues
8-
import at.bitfire.ical4android.AndroidCalendar
97
import at.bitfire.ical4android.AndroidEvent
10-
import at.bitfire.ical4android.AndroidEventFactory
11-
import at.bitfire.ical4android.Event
128

13-
class LocalEvent: AndroidEvent {
14-
15-
constructor(calendar: AndroidCalendar<*>, event: Event)
16-
: super(calendar, event, null, null, null, 0)
17-
18-
private constructor(calendar: AndroidCalendar<*>, values: ContentValues)
19-
: super(calendar, values)
20-
21-
22-
object Factory: AndroidEventFactory<LocalEvent> {
23-
24-
override fun fromProvider(calendar: AndroidCalendar<AndroidEvent>, values: ContentValues) =
25-
LocalEvent(calendar, values)
26-
27-
}
28-
29-
}
9+
class LocalEvent(
10+
val androidEvent: AndroidEvent
11+
) {
12+
fun add() = androidEvent.add()
13+
}

gradle/libs.versions.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ androidx-hilt = "1.3.0"
99
androidx-lifecycle = "2.10.0"
1010
androidx-nav3 = "1.0.0"
1111
androidx-test-junit = "1.3.0"
12-
androidx-test-rules = "1.7.0"
13-
androidx-test-runner = "1.7.0"
12+
androidx-test-rules = "1.6.1"
13+
androidx-test-runner = "1.6.1"
1414
androidx-work = "2.11.0"
1515
bitfire-cert4android = "b6b7ef3f10"
16-
bitfire-synctools = "d10d516883"
16+
bitfire-synctools = "9db5cb5dc6"
1717
compose-dialogs = "1.3.0"
1818
compose-material = "1.7.8"
1919
compose-material3 = "1.4.0"

0 commit comments

Comments
 (0)