[#5]: 공통 기능 코틀린 마이그레이션 및 패키지 분리 #6

Merged
pricelees merged 20 commits from refactor/#5 into main 2025-07-14 05:05:48 +00:00
2 changed files with 38 additions and 50 deletions
Showing only changes of commit bf4c5a57f7 - Show all commits

View File

@ -1,21 +1,20 @@
package roomescape.common.config;
package roomescape.common.config
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.OpenAPI
import io.swagger.v3.oas.models.info.Info
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
@Configuration
public class SwaggerConfig {
class SwaggerConfig {
@Bean
public OpenAPI openAPI() {
return new OpenAPI().info(apiInfo());
fun openAPI(): OpenAPI {
return OpenAPI().info(apiInfo())
}
private Info apiInfo() {
return new Info()
private fun apiInfo(): Info {
return Info()
.title("방탈출 예약 API 문서")
.description("""
## API 테스트는 '1. 인증 / 인가 API' '/login' 통해 로그인 사용해주세요.
@ -70,7 +69,8 @@ public class SwaggerConfig {
- 7: 예약은 승인되었으나, 결제 대기 상태
- 8 ~ 10: 예약 대기 상태
""")
.version("1.0.0");
""".trimIndent())
.version("1.0.0")
}
}

View File

@ -1,38 +1,26 @@
package roomescape.common.config;
package roomescape.common.config
import java.util.List;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.method.support.HandlerMethodArgumentResolver;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import roomescape.auth.web.support.AdminInterceptor;
import roomescape.auth.web.support.LoginInterceptor;
import roomescape.auth.web.support.MemberIdResolver;
import org.springframework.context.annotation.Configuration
import org.springframework.web.method.support.HandlerMethodArgumentResolver
import org.springframework.web.servlet.config.annotation.InterceptorRegistry
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer
import roomescape.auth.web.support.AdminInterceptor
import roomescape.auth.web.support.LoginInterceptor
import roomescape.auth.web.support.MemberIdResolver
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
class WebMvcConfig(
private val memberIdResolver: MemberIdResolver,
private val adminInterceptor: AdminInterceptor,
private val loginInterceptor: LoginInterceptor
) : WebMvcConfigurer {
private final MemberIdResolver memberIdResolver;
private final AdminInterceptor adminInterceptor;
private final LoginInterceptor loginInterceptor;
public WebMvcConfig(MemberIdResolver memberIdResolver, AdminInterceptor adminInterceptor,
LoginInterceptor loginInterceptor) {
this.memberIdResolver = memberIdResolver;
this.adminInterceptor = adminInterceptor;
this.loginInterceptor = loginInterceptor;
override fun addArgumentResolvers(resolvers: MutableList<HandlerMethodArgumentResolver>) {
resolvers.add(memberIdResolver)
}
@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> resolvers) {
resolvers.add(memberIdResolver);
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(adminInterceptor);
registry.addInterceptor(loginInterceptor);
override fun addInterceptors(registry: InterceptorRegistry) {
registry.addInterceptor(adminInterceptor)
registry.addInterceptor(loginInterceptor)
}
}