51 lines
2.1 KiB
Java
51 lines
2.1 KiB
Java
package eu.eudat.configurations;
|
|
|
|
import eu.eudat.logic.handlers.PrincipalArgumentResolver;
|
|
import eu.eudat.logic.services.ApiContext;
|
|
import eu.eudat.logic.services.operations.authentication.AuthenticationService;
|
|
import org.springframework.context.annotation.Configuration;
|
|
import org.springframework.core.env.Environment;
|
|
import org.springframework.scheduling.annotation.EnableAsync;
|
|
import org.springframework.scheduling.annotation.EnableScheduling;
|
|
import org.springframework.web.method.support.HandlerMethodArgumentResolver;
|
|
import org.springframework.web.servlet.config.annotation.CorsRegistry;
|
|
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
|
|
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
|
|
|
import java.util.List;
|
|
|
|
@EnableAsync
|
|
@Configuration
|
|
@EnableScheduling
|
|
public class WebMVCConfiguration implements WebMvcConfigurer {
|
|
|
|
private ApiContext apiContext;
|
|
|
|
private final AuthenticationService verifiedUserAuthenticationService;
|
|
private final AuthenticationService nonVerifiedUserAuthenticationService;
|
|
|
|
private final Environment environment;
|
|
|
|
public WebMVCConfiguration(ApiContext apiContext, AuthenticationService verifiedUserAuthenticationService, AuthenticationService nonVerifiedUserAuthenticationService, Environment environment) {
|
|
this.apiContext = apiContext;
|
|
this.verifiedUserAuthenticationService = verifiedUserAuthenticationService;
|
|
this.nonVerifiedUserAuthenticationService = nonVerifiedUserAuthenticationService;
|
|
this.environment = environment;
|
|
}
|
|
|
|
@Override
|
|
public void addCorsMappings(CorsRegistry registry) {
|
|
registry.addMapping("/api/**").allowedOrigins(this.environment.getProperty("dmp.domain"));
|
|
}
|
|
|
|
@Override
|
|
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
|
|
argumentResolvers.add(new PrincipalArgumentResolver(verifiedUserAuthenticationService, nonVerifiedUserAuthenticationService));
|
|
}
|
|
|
|
@Override
|
|
public void addInterceptors(InterceptorRegistry registry) {
|
|
// registry.addInterceptor(new RequestInterceptor(this.apiContext.getHelpersService().getLoggerService()));
|
|
}
|
|
}
|