From 8e217c16ec43b53c116bfa0b5ecdffece10f49e1 Mon Sep 17 00:00:00 2001 From: usbharu <64310155+usbharu@users.noreply.github.com> Date: Tue, 3 Oct 2023 11:43:51 +0900 Subject: [PATCH] =?UTF-8?q?Revert=20"refactor:=20ID=E7=94=9F=E6=88=90?= =?UTF-8?q?=E3=82=92=E5=85=A8=E3=81=A6IdGenerateService=E3=81=A7=E8=A1=8C?= =?UTF-8?q?=E3=81=86=E3=82=88=E3=81=86=E3=81=AB"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 4be4603f --- .../kotlin/dev/usbharu/hideout/config/SpringConfig.kt | 11 ----------- .../repository/MongoTimelineRepositoryWrapper.kt | 1 + .../dev/usbharu/hideout/repository/PostRepository.kt | 1 + .../usbharu/hideout/repository/PostRepositoryImpl.kt | 2 ++ .../usbharu/hideout/repository/ReactionRepository.kt | 1 + .../hideout/repository/ReactionRepositoryImpl.kt | 3 +++ .../usbharu/hideout/repository/TimelineRepository.kt | 1 + .../dev/usbharu/hideout/service/ap/APNoteService.kt | 6 ++---- .../usbharu/hideout/service/post/PostServiceImpl.kt | 6 ++---- .../usbharu/hideout/service/post/TimelineService.kt | 8 +++----- .../hideout/service/reaction/ReactionServiceImpl.kt | 8 +++----- .../hideout/service/ap/APNoteServiceImplTest.kt | 2 -- 12 files changed, 19 insertions(+), 31 deletions(-) diff --git a/src/main/kotlin/dev/usbharu/hideout/config/SpringConfig.kt b/src/main/kotlin/dev/usbharu/hideout/config/SpringConfig.kt index 50ae6f03..05d0c019 100644 --- a/src/main/kotlin/dev/usbharu/hideout/config/SpringConfig.kt +++ b/src/main/kotlin/dev/usbharu/hideout/config/SpringConfig.kt @@ -8,9 +8,6 @@ import java.net.URL @Configuration class SpringConfig { - @Autowired - lateinit var dbConfig: DatabaseConnectConfig - @Autowired lateinit var config: ApplicationConfig } @@ -19,11 +16,3 @@ class SpringConfig { data class ApplicationConfig( val url: URL ) - -@ConfigurationProperties("hideout.database") -data class DatabaseConnectConfig( - val url: String, - val driver: String, - val user: String, - val password: String -) diff --git a/src/main/kotlin/dev/usbharu/hideout/repository/MongoTimelineRepositoryWrapper.kt b/src/main/kotlin/dev/usbharu/hideout/repository/MongoTimelineRepositoryWrapper.kt index b103dda0..a3e31b6f 100644 --- a/src/main/kotlin/dev/usbharu/hideout/repository/MongoTimelineRepositoryWrapper.kt +++ b/src/main/kotlin/dev/usbharu/hideout/repository/MongoTimelineRepositoryWrapper.kt @@ -13,6 +13,7 @@ class MongoTimelineRepositoryWrapper( private val idGenerateService: IdGenerateService ) : TimelineRepository { + override suspend fun generateId(): Long = idGenerateService.generateId() override suspend fun save(timeline: Timeline): Timeline { return withContext(Dispatchers.IO) { diff --git a/src/main/kotlin/dev/usbharu/hideout/repository/PostRepository.kt b/src/main/kotlin/dev/usbharu/hideout/repository/PostRepository.kt index dc8c2dc8..8011f282 100644 --- a/src/main/kotlin/dev/usbharu/hideout/repository/PostRepository.kt +++ b/src/main/kotlin/dev/usbharu/hideout/repository/PostRepository.kt @@ -6,6 +6,7 @@ import org.springframework.stereotype.Repository @Suppress("LongParameterList") @Repository interface PostRepository { + suspend fun generateId(): Long suspend fun save(post: Post): Post suspend fun delete(id: Long) suspend fun findById(id: Long): Post diff --git a/src/main/kotlin/dev/usbharu/hideout/repository/PostRepositoryImpl.kt b/src/main/kotlin/dev/usbharu/hideout/repository/PostRepositoryImpl.kt index 2b72cec8..e4aad089 100644 --- a/src/main/kotlin/dev/usbharu/hideout/repository/PostRepositoryImpl.kt +++ b/src/main/kotlin/dev/usbharu/hideout/repository/PostRepositoryImpl.kt @@ -11,6 +11,8 @@ import org.springframework.stereotype.Repository @Repository class PostRepositoryImpl(private val idGenerateService: IdGenerateService) : PostRepository { + override suspend fun generateId(): Long = idGenerateService.generateId() + override suspend fun save(post: Post): Post { val singleOrNull = Posts.select { Posts.id eq post.id }.singleOrNull() if (singleOrNull == null) { diff --git a/src/main/kotlin/dev/usbharu/hideout/repository/ReactionRepository.kt b/src/main/kotlin/dev/usbharu/hideout/repository/ReactionRepository.kt index 1e1ef389..d98a0c84 100644 --- a/src/main/kotlin/dev/usbharu/hideout/repository/ReactionRepository.kt +++ b/src/main/kotlin/dev/usbharu/hideout/repository/ReactionRepository.kt @@ -5,6 +5,7 @@ import org.springframework.stereotype.Repository @Repository interface ReactionRepository { + suspend fun generateId(): Long suspend fun save(reaction: Reaction): Reaction suspend fun delete(reaction: Reaction): Reaction } diff --git a/src/main/kotlin/dev/usbharu/hideout/repository/ReactionRepositoryImpl.kt b/src/main/kotlin/dev/usbharu/hideout/repository/ReactionRepositoryImpl.kt index 34c25d82..866feaf3 100644 --- a/src/main/kotlin/dev/usbharu/hideout/repository/ReactionRepositoryImpl.kt +++ b/src/main/kotlin/dev/usbharu/hideout/repository/ReactionRepositoryImpl.kt @@ -12,6 +12,9 @@ class ReactionRepositoryImpl( private val idGenerateService: IdGenerateService ) : ReactionRepository { + + override suspend fun generateId(): Long = idGenerateService.generateId() + override suspend fun save(reaction: Reaction): Reaction { if (Reactions.select { Reactions.id eq reaction.id }.empty()) { Reactions.insert { diff --git a/src/main/kotlin/dev/usbharu/hideout/repository/TimelineRepository.kt b/src/main/kotlin/dev/usbharu/hideout/repository/TimelineRepository.kt index 54f2c68e..76e9755c 100644 --- a/src/main/kotlin/dev/usbharu/hideout/repository/TimelineRepository.kt +++ b/src/main/kotlin/dev/usbharu/hideout/repository/TimelineRepository.kt @@ -3,6 +3,7 @@ package dev.usbharu.hideout.repository import dev.usbharu.hideout.domain.model.hideout.entity.Timeline interface TimelineRepository { + suspend fun generateId(): Long suspend fun save(timeline: Timeline): Timeline suspend fun saveAll(timelines: List): List suspend fun findByUserId(id: Long): List diff --git a/src/main/kotlin/dev/usbharu/hideout/service/ap/APNoteService.kt b/src/main/kotlin/dev/usbharu/hideout/service/ap/APNoteService.kt index 6eaf154b..2b6ce229 100644 --- a/src/main/kotlin/dev/usbharu/hideout/service/ap/APNoteService.kt +++ b/src/main/kotlin/dev/usbharu/hideout/service/ap/APNoteService.kt @@ -16,7 +16,6 @@ import dev.usbharu.hideout.query.FollowerQueryService import dev.usbharu.hideout.query.PostQueryService import dev.usbharu.hideout.query.UserQueryService import dev.usbharu.hideout.repository.PostRepository -import dev.usbharu.hideout.service.core.IdGenerateService import dev.usbharu.hideout.service.job.JobQueueParentService import dev.usbharu.hideout.service.post.PostCreateInterceptor import dev.usbharu.hideout.service.post.PostService @@ -50,8 +49,7 @@ class APNoteServiceImpl( private val postQueryService: PostQueryService, @Qualifier("activitypub") private val objectMapper: ObjectMapper, private val applicationConfig: ApplicationConfig, - private val postService: PostService, - private val idGenerateService: IdGenerateService + private val postService: PostService ) : APNoteService, PostCreateInterceptor { @@ -173,7 +171,7 @@ class APNoteServiceImpl( postService.createRemote( Post.of( - id = idGenerateService.generateId(), + id = postRepository.generateId(), userId = person.second.id, overview = null, text = note.content.orEmpty(), diff --git a/src/main/kotlin/dev/usbharu/hideout/service/post/PostServiceImpl.kt b/src/main/kotlin/dev/usbharu/hideout/service/post/PostServiceImpl.kt index 99f9e784..a86c2227 100644 --- a/src/main/kotlin/dev/usbharu/hideout/service/post/PostServiceImpl.kt +++ b/src/main/kotlin/dev/usbharu/hideout/service/post/PostServiceImpl.kt @@ -5,7 +5,6 @@ import dev.usbharu.hideout.domain.model.hideout.entity.Post import dev.usbharu.hideout.exception.UserNotFoundException import dev.usbharu.hideout.repository.PostRepository import dev.usbharu.hideout.repository.UserRepository -import dev.usbharu.hideout.service.core.IdGenerateService import org.springframework.stereotype.Service import java.time.Instant import java.util.* @@ -14,8 +13,7 @@ import java.util.* class PostServiceImpl( private val postRepository: PostRepository, private val userRepository: UserRepository, - private val timelineService: TimelineService, - private val idGenerateService: IdGenerateService + private val timelineService: TimelineService ) : PostService { private val interceptors = Collections.synchronizedList(mutableListOf()) @@ -38,7 +36,7 @@ class PostServiceImpl( private suspend fun internalCreate(post: PostCreateDto, isLocal: Boolean): Post { val user = userRepository.findById(post.userId) ?: throw UserNotFoundException("${post.userId} was not found") - val id = idGenerateService.generateId() + val id = postRepository.generateId() val createPost = Post.of( id = id, userId = post.userId, diff --git a/src/main/kotlin/dev/usbharu/hideout/service/post/TimelineService.kt b/src/main/kotlin/dev/usbharu/hideout/service/post/TimelineService.kt index 08ee2dc4..97f83a08 100644 --- a/src/main/kotlin/dev/usbharu/hideout/service/post/TimelineService.kt +++ b/src/main/kotlin/dev/usbharu/hideout/service/post/TimelineService.kt @@ -6,15 +6,13 @@ import dev.usbharu.hideout.domain.model.hideout.entity.Visibility import dev.usbharu.hideout.query.FollowerQueryService import dev.usbharu.hideout.query.UserQueryService import dev.usbharu.hideout.repository.TimelineRepository -import dev.usbharu.hideout.service.core.IdGenerateService import org.springframework.stereotype.Service @Service class TimelineService( private val followerQueryService: FollowerQueryService, private val userQueryService: UserQueryService, - private val timelineRepository: TimelineRepository, - private val idGenerateService: IdGenerateService + private val timelineRepository: TimelineRepository ) { suspend fun publishTimeline(post: Post, isLocal: Boolean) { val findFollowersById = followerQueryService.findFollowersById(post.userId).toMutableList() @@ -25,7 +23,7 @@ class TimelineService( } val timelines = findFollowersById.map { Timeline( - id = idGenerateService.generateId(), + id = timelineRepository.generateId(), userId = it.id, timelineId = 0, postId = post.id, @@ -41,7 +39,7 @@ class TimelineService( if (post.visibility == Visibility.PUBLIC) { timelines.add( Timeline( - id = idGenerateService.generateId(), + id = timelineRepository.generateId(), userId = 0, timelineId = 0, postId = post.id, diff --git a/src/main/kotlin/dev/usbharu/hideout/service/reaction/ReactionServiceImpl.kt b/src/main/kotlin/dev/usbharu/hideout/service/reaction/ReactionServiceImpl.kt index ce3fece1..312c182b 100644 --- a/src/main/kotlin/dev/usbharu/hideout/service/reaction/ReactionServiceImpl.kt +++ b/src/main/kotlin/dev/usbharu/hideout/service/reaction/ReactionServiceImpl.kt @@ -4,20 +4,18 @@ import dev.usbharu.hideout.domain.model.hideout.entity.Reaction import dev.usbharu.hideout.query.ReactionQueryService import dev.usbharu.hideout.repository.ReactionRepository import dev.usbharu.hideout.service.ap.APReactionService -import dev.usbharu.hideout.service.core.IdGenerateService import org.springframework.stereotype.Service @Service class ReactionServiceImpl( private val reactionRepository: ReactionRepository, private val apReactionService: APReactionService, - private val reactionQueryService: ReactionQueryService, - private val idGenerateService: IdGenerateService + private val reactionQueryService: ReactionQueryService ) : ReactionService { override suspend fun receiveReaction(name: String, domain: String, userId: Long, postId: Long) { if (reactionQueryService.reactionAlreadyExist(postId, userId, 0).not()) { reactionRepository.save( - Reaction(idGenerateService.generateId(), 0, postId, userId) + Reaction(reactionRepository.generateId(), 0, postId, userId) ) } } @@ -27,7 +25,7 @@ class ReactionServiceImpl( // delete reactionQueryService.deleteByPostIdAndUserId(postId, userId) } else { - val reaction = Reaction(idGenerateService.generateId(), 0, postId, userId) + val reaction = Reaction(reactionRepository.generateId(), 0, postId, userId) reactionRepository.save(reaction) apReactionService.reaction(reaction) } diff --git a/src/test/kotlin/dev/usbharu/hideout/service/ap/APNoteServiceImplTest.kt b/src/test/kotlin/dev/usbharu/hideout/service/ap/APNoteServiceImplTest.kt index 69605b35..45f567d3 100644 --- a/src/test/kotlin/dev/usbharu/hideout/service/ap/APNoteServiceImplTest.kt +++ b/src/test/kotlin/dev/usbharu/hideout/service/ap/APNoteServiceImplTest.kt @@ -90,7 +90,6 @@ class APNoteServiceImplTest { objectMapper = objectMapper, applicationConfig = testApplicationConfig, postService = mock(), - idGenerateService = mock() ) val postEntity = Post.of( 1L, @@ -125,7 +124,6 @@ class APNoteServiceImplTest { objectMapper = objectMapper, applicationConfig = testApplicationConfig, postService = mock(), - idGenerateService = mock() ) activityPubNoteService.createNoteJob( JobProps(