From 41b2b447d4c0b14490d49d2db8ca157a774ba296 Mon Sep 17 00:00:00 2001 From: usbharu <64310155+usbharu@users.noreply.github.com> Date: Fri, 26 Jan 2024 12:09:40 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20Timeline=20API=E3=81=AE=E3=83=AD?= =?UTF-8?q?=E3=82=B0=E3=82=A4=E3=83=B3=E3=83=A6=E3=83=BC=E3=82=B6=E3=83=BC?= =?UTF-8?q?=E5=8F=96=E5=BE=97=E9=83=A8=E5=88=86=E3=82=92=E5=85=B1=E9=80=9A?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/timeline/MastodonTimelineApiController.kt | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main/kotlin/dev/usbharu/hideout/mastodon/interfaces/api/timeline/MastodonTimelineApiController.kt b/src/main/kotlin/dev/usbharu/hideout/mastodon/interfaces/api/timeline/MastodonTimelineApiController.kt index 41316f1e..38148ebc 100644 --- a/src/main/kotlin/dev/usbharu/hideout/mastodon/interfaces/api/timeline/MastodonTimelineApiController.kt +++ b/src/main/kotlin/dev/usbharu/hideout/mastodon/interfaces/api/timeline/MastodonTimelineApiController.kt @@ -1,6 +1,7 @@ package dev.usbharu.hideout.mastodon.interfaces.api.timeline import dev.usbharu.hideout.controller.mastodon.generated.TimelineApi +import dev.usbharu.hideout.core.infrastructure.springframework.security.LoginUserContextHolder import dev.usbharu.hideout.domain.mastodon.model.generated.Status import dev.usbharu.hideout.mastodon.service.timeline.TimelineApiService import kotlinx.coroutines.flow.Flow @@ -8,21 +9,22 @@ import kotlinx.coroutines.flow.asFlow import kotlinx.coroutines.runBlocking import org.springframework.http.HttpStatus import org.springframework.http.ResponseEntity -import org.springframework.security.core.context.SecurityContextHolder -import org.springframework.security.oauth2.jwt.Jwt import org.springframework.stereotype.Controller @Controller -class MastodonTimelineApiController(private val timelineApiService: TimelineApiService) : TimelineApi { +class MastodonTimelineApiController( + private val timelineApiService: TimelineApiService, + private val loginUserContextHolder: LoginUserContextHolder +) : TimelineApi { override fun apiV1TimelinesHomeGet( maxId: String?, sinceId: String?, minId: String?, limit: Int? ): ResponseEntity> = runBlocking { - val jwt = SecurityContextHolder.getContext().authentication.principal as Jwt + val homeTimeline = timelineApiService.homeTimeline( - userId = jwt.getClaim("uid").toLong(), + userId = loginUserContextHolder.getLoginUserId(), maxId = maxId?.toLongOrNull(), minId = minId?.toLongOrNull(), sinceId = sinceId?.toLongOrNull(),