refactor: 나머지 Configuration 클래스 코틀린 전환

This commit is contained in:
이상진 2025-07-14 13:57:31 +09:00
parent 241f111d49
commit bf4c5a57f7
2 changed files with 38 additions and 50 deletions

View File

@ -1,23 +1,22 @@
package roomescape.common.config; package roomescape.common.config
import org.springframework.context.annotation.Bean; import io.swagger.v3.oas.models.OpenAPI
import org.springframework.context.annotation.Configuration; import io.swagger.v3.oas.models.info.Info
import org.springframework.context.annotation.Bean
import io.swagger.v3.oas.models.OpenAPI; import org.springframework.context.annotation.Configuration
import io.swagger.v3.oas.models.info.Info;
@Configuration @Configuration
public class SwaggerConfig { class SwaggerConfig {
@Bean @Bean
public OpenAPI openAPI() { fun openAPI(): OpenAPI {
return new OpenAPI().info(apiInfo()); return OpenAPI().info(apiInfo())
} }
private Info apiInfo() { private fun apiInfo(): Info {
return new Info() return Info()
.title("방탈출 예약 API 문서") .title("방탈출 예약 API 문서")
.description(""" .description("""
## API 테스트는 '1. 인증 / 인가 API' '/login' 통해 로그인 사용해주세요. ## API 테스트는 '1. 인증 / 인가 API' '/login' 통해 로그인 사용해주세요.
### 테스트시 로그인 가능한 계정 정보 ### 테스트시 로그인 가능한 계정 정보
@ -70,7 +69,8 @@ public class SwaggerConfig {
- 7: 예약은 승인되었으나, 결제 대기 상태 - 7: 예약은 승인되었으나, 결제 대기 상태
- 8 ~ 10: 예약 대기 상태 - 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.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry
import org.springframework.web.method.support.HandlerMethodArgumentResolver; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer
import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import roomescape.auth.web.support.AdminInterceptor
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import roomescape.auth.web.support.LoginInterceptor
import roomescape.auth.web.support.MemberIdResolver
import roomescape.auth.web.support.AdminInterceptor;
import roomescape.auth.web.support.LoginInterceptor;
import roomescape.auth.web.support.MemberIdResolver;
@Configuration @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; override fun addArgumentResolvers(resolvers: MutableList<HandlerMethodArgumentResolver>) {
private final AdminInterceptor adminInterceptor; resolvers.add(memberIdResolver)
private final LoginInterceptor loginInterceptor; }
public WebMvcConfig(MemberIdResolver memberIdResolver, AdminInterceptor adminInterceptor, override fun addInterceptors(registry: InterceptorRegistry) {
LoginInterceptor loginInterceptor) { registry.addInterceptor(adminInterceptor)
this.memberIdResolver = memberIdResolver; registry.addInterceptor(loginInterceptor)
this.adminInterceptor = adminInterceptor; }
this.loginInterceptor = loginInterceptor;
}
@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> resolvers) {
resolvers.add(memberIdResolver);
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(adminInterceptor);
registry.addInterceptor(loginInterceptor);
}
} }