feat: フォローリクエストが飛んできたときのログを追加

This commit is contained in:
usbharu 2023-10-27 11:16:40 +09:00
parent 98d3234e18
commit cec0c620f6
1 changed files with 8 additions and 2 deletions

View File

@ -13,6 +13,7 @@ import dev.usbharu.hideout.service.job.JobQueueParentService
import dev.usbharu.hideout.service.user.UserService import dev.usbharu.hideout.service.user.UserService
import io.ktor.http.* import io.ktor.http.*
import kjob.core.job.JobProps import kjob.core.job.JobProps
import org.slf4j.LoggerFactory
import org.springframework.beans.factory.annotation.Qualifier import org.springframework.beans.factory.annotation.Qualifier
import org.springframework.stereotype.Service import org.springframework.stereotype.Service
@ -32,7 +33,7 @@ class APReceiveFollowServiceImpl(
private val apRequestService: APRequestService private val apRequestService: APRequestService
) : APReceiveFollowService { ) : APReceiveFollowService {
override suspend fun receiveFollow(follow: Follow): ActivityPubResponse { override suspend fun receiveFollow(follow: Follow): ActivityPubResponse {
// TODO: Verify HTTP Signature logger.info("FOLLOW from: {} to: {}", follow.actor, follow.`object`)
jobQueueParentService.schedule(ReceiveFollowJob) { jobQueueParentService.schedule(ReceiveFollowJob) {
props[ReceiveFollowJob.actor] = follow.actor props[ReceiveFollowJob.actor] = follow.actor
props[ReceiveFollowJob.follow] = objectMapper.writeValueAsString(follow) props[ReceiveFollowJob.follow] = objectMapper.writeValueAsString(follow)
@ -42,12 +43,12 @@ class APReceiveFollowServiceImpl(
} }
override suspend fun receiveFollowJob(props: JobProps<ReceiveFollowJob>) { override suspend fun receiveFollowJob(props: JobProps<ReceiveFollowJob>) {
// throw Exception()
transaction.transaction { transaction.transaction {
val actor = props[ReceiveFollowJob.actor] val actor = props[ReceiveFollowJob.actor]
val targetActor = props[ReceiveFollowJob.targetActor] val targetActor = props[ReceiveFollowJob.targetActor]
val person = apUserService.fetchPerson(actor, targetActor) val person = apUserService.fetchPerson(actor, targetActor)
val follow = objectMapper.readValue<Follow>(props[ReceiveFollowJob.follow]) val follow = objectMapper.readValue<Follow>(props[ReceiveFollowJob.follow])
logger.info("START Follow from: {} to: {}", targetActor, actor)
val signer = userQueryService.findByUrl(targetActor) val signer = userQueryService.findByUrl(targetActor)
@ -68,6 +69,11 @@ class APReceiveFollowServiceImpl(
userQueryService.findByUrl(follow.actor ?: throw java.lang.IllegalArgumentException("Actor is null")) userQueryService.findByUrl(follow.actor ?: throw java.lang.IllegalArgumentException("Actor is null"))
userService.followRequest(targetEntity.id, followActorEntity.id) userService.followRequest(targetEntity.id, followActorEntity.id)
logger.info("SUCCESS Follow from: {} to: {}", targetActor, actor)
} }
} }
companion object {
private val logger = LoggerFactory.getLogger(APReceiveFollowServiceImpl::class.java)
}
} }