package com.qianwen.core.log.config;
|
|
import javax.servlet.Servlet;
|
import com.qianwen.core.log.error.BladeErrorAttributes;
|
import com.qianwen.core.log.error.BladeErrorController;
|
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
|
import org.springframework.boot.autoconfigure.condition.SearchStrategy;
|
import org.springframework.boot.autoconfigure.web.ServerProperties;
|
import org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController;
|
import org.springframework.boot.autoconfigure.web.servlet.error.ErrorMvcAutoConfiguration;
|
import org.springframework.boot.web.servlet.error.DefaultErrorAttributes;
|
import org.springframework.boot.web.servlet.error.ErrorAttributes;
|
import org.springframework.boot.web.servlet.error.ErrorController;
|
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Configuration;
|
import org.springframework.web.servlet.DispatcherServlet;
|
|
@AutoConfigureBefore({ErrorMvcAutoConfiguration.class})
|
@Configuration(proxyBeanMethods = false)
|
@ConditionalOnClass({Servlet.class, DispatcherServlet.class})
|
@ConditionalOnWebApplication
|
/* loaded from: blade-starter-log-9.3.0.0-SNAPSHOT.jar:org/springblade/core/log/config/BladeErrorMvcAutoConfiguration.class */
|
public class BladeErrorMvcAutoConfiguration {
|
private final ServerProperties serverProperties;
|
|
public BladeErrorMvcAutoConfiguration(final ServerProperties serverProperties) {
|
this.serverProperties = serverProperties;
|
}
|
|
@ConditionalOnMissingBean(value = {ErrorAttributes.class}, search = SearchStrategy.CURRENT)
|
@Bean
|
public DefaultErrorAttributes errorAttributes() {
|
return new BladeErrorAttributes();
|
}
|
|
@ConditionalOnMissingBean(value = {ErrorController.class}, search = SearchStrategy.CURRENT)
|
@Bean
|
public BasicErrorController basicErrorController(ErrorAttributes errorAttributes) {
|
return new BladeErrorController(errorAttributes, this.serverProperties.getError());
|
}
|
}
|