From 86af14d6c833263761903c13b50f21d548a12a8f Mon Sep 17 00:00:00 2001 From: Ricki Hirner Date: Thu, 1 Aug 2024 11:20:24 +0200 Subject: [PATCH] Collections: unified delete() return value --- .../kotlin/at/bitfire/ical4android/AndroidCalendar.kt | 9 +++++++-- .../main/kotlin/at/bitfire/ical4android/DmfsTaskList.kt | 9 +++++++-- .../main/kotlin/at/bitfire/ical4android/JtxCollection.kt | 6 +++--- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/lib/src/main/kotlin/at/bitfire/ical4android/AndroidCalendar.kt b/lib/src/main/kotlin/at/bitfire/ical4android/AndroidCalendar.kt index b68dcbea..f7ec09ed 100644 --- a/lib/src/main/kotlin/at/bitfire/ical4android/AndroidCalendar.kt +++ b/lib/src/main/kotlin/at/bitfire/ical4android/AndroidCalendar.kt @@ -194,9 +194,14 @@ abstract class AndroidCalendar( return provider.update(calendarSyncURI(), info, null, null) } - fun delete(): Int { + /** + * Deletes this calendar from the local calendar provider. + * + * @return `true` if the calendar was deleted, `false` otherwise (like it was not there before the call) + */ + fun delete(): Boolean { logger.log(Level.FINE, "Deleting local calendar (#$id)") - return provider.delete(calendarSyncURI(), null, null) + return provider.delete(calendarSyncURI(), null, null) > 0 } diff --git a/lib/src/main/kotlin/at/bitfire/ical4android/DmfsTaskList.kt b/lib/src/main/kotlin/at/bitfire/ical4android/DmfsTaskList.kt index bd13f96c..8d42347c 100644 --- a/lib/src/main/kotlin/at/bitfire/ical4android/DmfsTaskList.kt +++ b/lib/src/main/kotlin/at/bitfire/ical4android/DmfsTaskList.kt @@ -126,9 +126,14 @@ abstract class DmfsTaskList( return provider.client.update(taskListSyncUri(), info, null, null) } - fun delete(): Int { + /** + * Deletes this calendar from the local calendar provider. + * + * @return `true` if the calendar was deleted, `false` otherwise (like it was not there before the call) + */ + fun delete(): Boolean { logger.log(Level.FINE, "Deleting ${provider.name.authority} task list (#$id)") - return provider.client.delete(taskListSyncUri(), null, null) + return provider.client.delete(taskListSyncUri(), null, null) > 0 } /** diff --git a/lib/src/main/kotlin/at/bitfire/ical4android/JtxCollection.kt b/lib/src/main/kotlin/at/bitfire/ical4android/JtxCollection.kt index 75a839e9..7e926d7a 100644 --- a/lib/src/main/kotlin/at/bitfire/ical4android/JtxCollection.kt +++ b/lib/src/main/kotlin/at/bitfire/ical4android/JtxCollection.kt @@ -29,7 +29,7 @@ open class JtxCollection(val account: Account, companion object { private val logger - get() = Logger.getLogger(javaClass.name) + get() = Logger.getLogger(JtxCollection::class.java.name) fun create(account: Account, client: ContentProviderClient, values: ContentValues): Uri { logger.log(Level.FINE, "Creating jtx Board collection", values) @@ -63,9 +63,9 @@ open class JtxCollection(val account: Account, var context: Context? = null - fun delete() { + fun delete(): Boolean { logger.log(Level.FINE, "Deleting jtx Board collection (#$id)") - client.delete(ContentUris.withAppendedId(JtxContract.JtxCollection.CONTENT_URI.asSyncAdapter(account), id), null, null) + return client.delete(ContentUris.withAppendedId(JtxContract.JtxCollection.CONTENT_URI.asSyncAdapter(account), id), null, null) > 0 } fun update(values: ContentValues) {