From c73e2b11c86e08b87f1e30d621182c2295c31b8e Mon Sep 17 00:00:00 2001 From: Gauthier Roebroeck Date: Mon, 9 Aug 2021 14:54:42 +0800 Subject: [PATCH] refactor: replace deleteEmpty by delete(ids) for readlist and collections --- .../domain/persistence/ReadListRepository.kt | 2 +- .../persistence/SeriesCollectionRepository.kt | 2 +- .../komga/domain/service/ReadListLifecycle.kt | 2 +- .../service/SeriesCollectionLifecycle.kt | 2 +- .../komga/infrastructure/jooq/ReadListDao.kt | 19 ++++++------------- .../jooq/SeriesCollectionDao.kt | 19 ++++++------------- 6 files changed, 16 insertions(+), 30 deletions(-) diff --git a/komga/src/main/kotlin/org/gotson/komga/domain/persistence/ReadListRepository.kt b/komga/src/main/kotlin/org/gotson/komga/domain/persistence/ReadListRepository.kt index 424218724..6f321673c 100644 --- a/komga/src/main/kotlin/org/gotson/komga/domain/persistence/ReadListRepository.kt +++ b/komga/src/main/kotlin/org/gotson/komga/domain/persistence/ReadListRepository.kt @@ -38,8 +38,8 @@ interface ReadListRepository { fun removeBooksFromAll(bookIds: Collection) fun delete(readListId: String) + fun delete(readListIds: Collection) fun deleteAll() - fun deleteEmpty() fun existsByName(name: String): Boolean } diff --git a/komga/src/main/kotlin/org/gotson/komga/domain/persistence/SeriesCollectionRepository.kt b/komga/src/main/kotlin/org/gotson/komga/domain/persistence/SeriesCollectionRepository.kt index b261faa18..c74dfccac 100644 --- a/komga/src/main/kotlin/org/gotson/komga/domain/persistence/SeriesCollectionRepository.kt +++ b/komga/src/main/kotlin/org/gotson/komga/domain/persistence/SeriesCollectionRepository.kt @@ -38,8 +38,8 @@ interface SeriesCollectionRepository { fun removeSeriesFromAll(seriesIds: Collection) fun delete(collectionId: String) + fun delete(collectionIds: Collection) fun deleteAll() - fun deleteEmpty() fun existsByName(name: String): Boolean } diff --git a/komga/src/main/kotlin/org/gotson/komga/domain/service/ReadListLifecycle.kt b/komga/src/main/kotlin/org/gotson/komga/domain/service/ReadListLifecycle.kt index f13806fc0..1a9c1631a 100644 --- a/komga/src/main/kotlin/org/gotson/komga/domain/service/ReadListLifecycle.kt +++ b/komga/src/main/kotlin/org/gotson/komga/domain/service/ReadListLifecycle.kt @@ -61,7 +61,7 @@ class ReadListLifecycle( fun deleteEmptyReadLists() { logger.info { "Deleting empty read lists" } val toDelete = readListRepository.findAllEmpty() - readListRepository.deleteEmpty() + readListRepository.delete(toDelete.map { it.id }) toDelete.forEach { eventPublisher.publishEvent(DomainEvent.ReadListDeleted(it)) } } diff --git a/komga/src/main/kotlin/org/gotson/komga/domain/service/SeriesCollectionLifecycle.kt b/komga/src/main/kotlin/org/gotson/komga/domain/service/SeriesCollectionLifecycle.kt index 02c85ceb7..aa2eb2dde 100644 --- a/komga/src/main/kotlin/org/gotson/komga/domain/service/SeriesCollectionLifecycle.kt +++ b/komga/src/main/kotlin/org/gotson/komga/domain/service/SeriesCollectionLifecycle.kt @@ -57,7 +57,7 @@ class SeriesCollectionLifecycle( fun deleteEmptyCollections() { logger.info { "Deleting empty collections" } val toDelete = collectionRepository.findAllEmpty() - collectionRepository.deleteEmpty() + collectionRepository.delete(toDelete.map { it.id }) toDelete.forEach { eventPublisher.publishEvent(DomainEvent.CollectionDeleted(it)) } } diff --git a/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/ReadListDao.kt b/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/ReadListDao.kt index 36c6069fb..505c6ddba 100644 --- a/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/ReadListDao.kt +++ b/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/ReadListDao.kt @@ -238,22 +238,15 @@ class ReadListDao( } @Transactional - override fun deleteAll() { - dsl.deleteFrom(rlb).execute() - dsl.deleteFrom(rl).execute() + override fun delete(readListIds: Collection) { + dsl.deleteFrom(rlb).where(rlb.READLIST_ID.`in`(readListIds)).execute() + dsl.deleteFrom(rl).where(rl.ID.`in`(readListIds)).execute() } @Transactional - override fun deleteEmpty() { - dsl.deleteFrom(rl) - .where( - rl.ID.`in`( - dsl.select(rl.ID) - .from(rl) - .leftJoin(rlb).on(rl.ID.eq(rlb.READLIST_ID)) - .where(rlb.READLIST_ID.isNull) - ) - ).execute() + override fun deleteAll() { + dsl.deleteFrom(rlb).execute() + dsl.deleteFrom(rl).execute() } override fun existsByName(name: String): Boolean = diff --git a/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/SeriesCollectionDao.kt b/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/SeriesCollectionDao.kt index bd05075ad..9bd1ec70e 100644 --- a/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/SeriesCollectionDao.kt +++ b/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/SeriesCollectionDao.kt @@ -237,22 +237,15 @@ class SeriesCollectionDao( } @Transactional - override fun deleteAll() { - dsl.deleteFrom(cs).execute() - dsl.deleteFrom(c).execute() + override fun delete(collectionIds: Collection) { + dsl.deleteFrom(cs).where(cs.COLLECTION_ID.`in`(collectionIds)).execute() + dsl.deleteFrom(c).where(c.ID.`in`(collectionIds)).execute() } @Transactional - override fun deleteEmpty() { - dsl.deleteFrom(c) - .where( - c.ID.`in`( - dsl.select(c.ID) - .from(c) - .leftJoin(cs).on(c.ID.eq(cs.COLLECTION_ID)) - .where(cs.COLLECTION_ID.isNull) - ) - ).execute() + override fun deleteAll() { + dsl.deleteFrom(cs).execute() + dsl.deleteFrom(c).execute() } override fun existsByName(name: String): Boolean =