콘텐츠 메인 캐싱전략 수정

AS IS - 각 섹션별로 캐싱
TO BE - getMain 함수 전체 캐싱
This commit is contained in:
Klaus 2023-11-06 18:04:08 +09:00
parent 976a504233
commit 5c228af14b
4 changed files with 28 additions and 24 deletions

View File

@ -1,13 +1,14 @@
package kr.co.vividnext.sodalive.content.main
import com.fasterxml.jackson.annotation.JsonProperty
import com.querydsl.core.annotations.QueryProjection
data class GetAudioContentMainItem @QueryProjection constructor(
val contentId: Long,
val coverImageUrl: String,
val title: String,
val isAdult: Boolean,
val creatorId: Long,
val creatorProfileImageUrl: String,
val creatorNickname: String
@JsonProperty("contentId") val contentId: Long,
@JsonProperty("coverImageUrl") val coverImageUrl: String,
@JsonProperty("title") val title: String,
@JsonProperty("isAdult") val isAdult: Boolean,
@JsonProperty("creatorId") val creatorId: Long,
@JsonProperty("creatorProfileImageUrl") val creatorProfileImageUrl: String,
@JsonProperty("creatorNickname") val creatorNickname: String
)

View File

@ -1,15 +1,16 @@
package kr.co.vividnext.sodalive.content.main
import com.fasterxml.jackson.annotation.JsonProperty
import kr.co.vividnext.sodalive.content.main.banner.GetAudioContentBannerResponse
import kr.co.vividnext.sodalive.content.main.curation.GetAudioContentCurationResponse
data class GetAudioContentMainResponse(
val newContentUploadCreatorList: List<GetNewContentUploadCreator>,
val bannerList: List<GetAudioContentBannerResponse>,
val orderList: List<GetAudioContentMainItem>,
val themeList: List<String>,
val newContentList: List<GetAudioContentMainItem>,
val curationList: List<GetAudioContentCurationResponse>,
val contentRankingSortTypeList: List<String>,
val contentRanking: GetAudioContentRanking
@JsonProperty("newContentUploadCreatorList") val newContentUploadCreatorList: List<GetNewContentUploadCreator>,
@JsonProperty("bannerList") val bannerList: List<GetAudioContentBannerResponse>,
@JsonProperty("orderList") val orderList: List<GetAudioContentMainItem>,
@JsonProperty("themeList") val themeList: List<String>,
@JsonProperty("newContentList") val newContentList: List<GetAudioContentMainItem>,
@JsonProperty("curationList") val curationList: List<GetAudioContentCurationResponse>,
@JsonProperty("contentRankingSortTypeList") val contentRankingSortTypeList: List<String>,
@JsonProperty("contentRanking") val contentRanking: GetAudioContentRanking
)

View File

@ -1,11 +1,12 @@
package kr.co.vividnext.sodalive.content.main.banner
import com.fasterxml.jackson.annotation.JsonProperty
import kr.co.vividnext.sodalive.event.EventItem
data class GetAudioContentBannerResponse(
val type: AudioContentBannerType,
val thumbnailImageUrl: String,
val eventItem: EventItem?,
val creatorId: Long?,
val link: String?
@JsonProperty("type") val type: AudioContentBannerType,
@JsonProperty("thumbnailImageUrl") val thumbnailImageUrl: String,
@JsonProperty("eventItem") val eventItem: EventItem?,
@JsonProperty("creatorId") val creatorId: Long?,
@JsonProperty("link") val link: String?
)

View File

@ -1,10 +1,11 @@
package kr.co.vividnext.sodalive.content.main.curation
import com.fasterxml.jackson.annotation.JsonProperty
import kr.co.vividnext.sodalive.content.main.GetAudioContentMainItem
data class GetAudioContentCurationResponse(
val curationId: Long,
val title: String,
val description: String,
val contents: List<GetAudioContentMainItem>
@JsonProperty("curationId") val curationId: Long,
@JsonProperty("title") val title: String,
@JsonProperty("description") val description: String,
@JsonProperty("contents") val contents: List<GetAudioContentMainItem>
)