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()); } }