package com.qianwen.core.datascope.config;
|
|
import com.qianwen.core.datascope.handler.BladeDataScopeHandler;
|
import com.qianwen.core.datascope.handler.BladeScopeModelHandler;
|
import com.qianwen.core.datascope.handler.DataScopeHandler;
|
import com.qianwen.core.datascope.handler.ScopeModelHandler;
|
import com.qianwen.core.datascope.interceptor.DataScopeInterceptor;
|
import com.qianwen.core.datascope.props.DataScopeProperties;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Configuration;
|
import org.springframework.jdbc.core.JdbcTemplate;
|
|
@EnableConfigurationProperties({DataScopeProperties.class})
|
@Configuration(proxyBeanMethods = false)
|
/* loaded from: blade-starter-datascope-9.3.0.1-SNAPSHOT.jar:org/springblade/core/datascope/config/DataScopeConfiguration.class */
|
public class DataScopeConfiguration {
|
private final JdbcTemplate jdbcTemplate;
|
|
public DataScopeConfiguration(final JdbcTemplate jdbcTemplate) {
|
this.jdbcTemplate = jdbcTemplate;
|
}
|
|
@ConditionalOnMissingBean({ScopeModelHandler.class})
|
@Bean
|
public ScopeModelHandler scopeModelHandler() {
|
return new BladeScopeModelHandler(this.jdbcTemplate);
|
}
|
|
@ConditionalOnMissingBean({DataScopeHandler.class})
|
@ConditionalOnBean({ScopeModelHandler.class})
|
@Bean
|
public DataScopeHandler dataScopeHandler(ScopeModelHandler scopeModelHandler) {
|
return new BladeDataScopeHandler(scopeModelHandler);
|
}
|
|
@ConditionalOnMissingBean({DataScopeInterceptor.class})
|
@ConditionalOnBean({DataScopeHandler.class})
|
@Bean
|
public DataScopeInterceptor interceptor(DataScopeHandler dataScopeHandler, DataScopeProperties dataScopeProperties) {
|
return new DataScopeInterceptor(dataScopeHandler, dataScopeProperties);
|
}
|
}
|