From 4c15be67f796a4ff3d9961689cfce07583791871 Mon Sep 17 00:00:00 2001 From: usbharu Date: Sun, 28 Jan 2024 11:42:03 +0900 Subject: [PATCH] Apply suggestions from code review Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .../notification/NotificationRequest.kt | 29 ++++++++++++++----- .../mastodon/domain/model/NotificationType.kt | 1 - .../ExposedMastodonNotificationRepository.kt | 1 - .../MongoMastodonNotificationRepository.kt | 2 -- .../NotificationApiServiceImpl.kt | 10 +++---- 5 files changed, 26 insertions(+), 17 deletions(-) diff --git a/src/main/kotlin/dev/usbharu/hideout/core/service/notification/NotificationRequest.kt b/src/main/kotlin/dev/usbharu/hideout/core/service/notification/NotificationRequest.kt index d089b0b3..3e2b8b5c 100644 --- a/src/main/kotlin/dev/usbharu/hideout/core/service/notification/NotificationRequest.kt +++ b/src/main/kotlin/dev/usbharu/hideout/core/service/notification/NotificationRequest.kt @@ -12,11 +12,15 @@ interface PostId { } data class MentionNotificationRequest( - override val userId: Long, override val sourceActorId: Long, override val postId: Long + override val userId: Long, + override val sourceActorId: Long, + override val postId: Long ) : NotificationRequest( - userId, sourceActorId, + userId, + sourceActorId, "mention" -), PostId { +), + PostId { override fun buildNotification(id: Long, createdAt: Instant): Notification = Notification( id, type, @@ -30,7 +34,9 @@ data class MentionNotificationRequest( } data class PostNotificationRequest( - override val userId: Long, override val sourceActorId: Long, override val postId: Long + override val userId: Long, + override val sourceActorId: Long, + override val postId: Long ) : NotificationRequest(userId, sourceActorId, "post"), PostId { override fun buildNotification(id: Long, createdAt: Instant): Notification = Notification( @@ -46,7 +52,9 @@ data class PostNotificationRequest( } data class RepostNotificationRequest( - override val userId: Long, override val sourceActorId: Long, override val postId: Long + override val userId: Long, + override val sourceActorId: Long, + override val postId: Long ) : NotificationRequest(userId, sourceActorId, "repost"), PostId { override fun buildNotification(id: Long, createdAt: Instant): Notification = Notification( id, @@ -61,7 +69,8 @@ data class RepostNotificationRequest( } data class FollowNotificationRequest( - override val userId: Long, override val sourceActorId: Long + override val userId: Long, + override val sourceActorId: Long ) : NotificationRequest(userId, sourceActorId, "follow") { override fun buildNotification(id: Long, createdAt: Instant): Notification = Notification( id, @@ -76,7 +85,8 @@ data class FollowNotificationRequest( } data class FollowRequestNotificationRequest( - override val userId: Long, override val sourceActorId: Long + override val userId: Long, + override val sourceActorId: Long ) : NotificationRequest(userId, sourceActorId, "follow-request") { override fun buildNotification(id: Long, createdAt: Instant): Notification = Notification( id, @@ -91,7 +101,10 @@ data class FollowRequestNotificationRequest( } data class ReactionNotificationRequest( - override val userId: Long, override val sourceActorId: Long, override val postId: Long, val reactionId: Long + override val userId: Long, + override val sourceActorId: Long, + override val postId: Long, + val reactionId: Long ) : NotificationRequest(userId, sourceActorId, "reaction"), PostId { override fun buildNotification(id: Long, createdAt: Instant): Notification = Notification( diff --git a/src/main/kotlin/dev/usbharu/hideout/mastodon/domain/model/NotificationType.kt b/src/main/kotlin/dev/usbharu/hideout/mastodon/domain/model/NotificationType.kt index fd7caf90..8a1be504 100644 --- a/src/main/kotlin/dev/usbharu/hideout/mastodon/domain/model/NotificationType.kt +++ b/src/main/kotlin/dev/usbharu/hideout/mastodon/domain/model/NotificationType.kt @@ -15,7 +15,6 @@ enum class NotificationType { companion object { fun parse(string: String): NotificationType? = when (string) { - "mention" -> mention "status" -> status "reblog" -> reblog diff --git a/src/main/kotlin/dev/usbharu/hideout/mastodon/infrastructure/exposedrepository/ExposedMastodonNotificationRepository.kt b/src/main/kotlin/dev/usbharu/hideout/mastodon/infrastructure/exposedrepository/ExposedMastodonNotificationRepository.kt index e42bbc9f..520d913a 100644 --- a/src/main/kotlin/dev/usbharu/hideout/mastodon/infrastructure/exposedrepository/ExposedMastodonNotificationRepository.kt +++ b/src/main/kotlin/dev/usbharu/hideout/mastodon/infrastructure/exposedrepository/ExposedMastodonNotificationRepository.kt @@ -72,7 +72,6 @@ class ExposedMastodonNotificationRepository : MastodonNotificationRepository, Ab MastodonNotifications.userId eq loginUser } - if (maxId != null) { query.andWhere { MastodonNotifications.id lessEq maxId } } diff --git a/src/main/kotlin/dev/usbharu/hideout/mastodon/infrastructure/mongorepository/MongoMastodonNotificationRepository.kt b/src/main/kotlin/dev/usbharu/hideout/mastodon/infrastructure/mongorepository/MongoMastodonNotificationRepository.kt index 141a37b2..dcbe2c81 100644 --- a/src/main/kotlin/dev/usbharu/hideout/mastodon/infrastructure/mongorepository/MongoMastodonNotificationRepository.kt +++ b/src/main/kotlin/dev/usbharu/hideout/mastodon/infrastructure/mongorepository/MongoMastodonNotificationRepository.kt @@ -5,9 +5,7 @@ import org.springframework.data.mongodb.repository.MongoRepository interface MongoMastodonNotificationRepository : MongoRepository { - fun deleteByUserId(userId: Long): Long - fun deleteByIdAndUserId(id: Long, userId: Long): Long } diff --git a/src/main/kotlin/dev/usbharu/hideout/mastodon/service/notification/NotificationApiServiceImpl.kt b/src/main/kotlin/dev/usbharu/hideout/mastodon/service/notification/NotificationApiServiceImpl.kt index 709b306e..01b1bfb1 100644 --- a/src/main/kotlin/dev/usbharu/hideout/mastodon/service/notification/NotificationApiServiceImpl.kt +++ b/src/main/kotlin/dev/usbharu/hideout/mastodon/service/notification/NotificationApiServiceImpl.kt @@ -27,7 +27,6 @@ class NotificationApiServiceImpl( excludeTypes: List, accountId: List ): List = transaction.transaction { - val typesTmp = mutableListOf() typesTmp.addAll(types) @@ -44,9 +43,11 @@ class NotificationApiServiceImpl( accountId ) - val accounts = accountService.findByIds(mastodonNotifications.map { - it.accountId - }).associateBy { it.id.toLong() } + val accounts = accountService.findByIds( + mastodonNotifications.map { + it.accountId + } + ).associateBy { it.id.toLong() } val statuses = statusQueryService.findByPostIds(mastodonNotifications.mapNotNull { it.statusId }) .associateBy { it.id.toLong() } @@ -93,7 +94,6 @@ class NotificationApiServiceImpl( mastodonNotificationRepository.deleteByUserIdAndId(loginUser, notificationId) } - private fun convertNotificationType(notificationType: NotificationType): Notification.Type = when (notificationType) { mention -> Notification.Type.mention