¶Ô±ÈÐÂÎļþ |
| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill åºéª (smallchill@163.com) |
| | | */ |
| | | package org.springblade.core.datascope.config; |
| | | |
| | | import lombok.AllArgsConstructor; |
| | | import org.springblade.core.datascope.handler.BladeDataScopeHandler; |
| | | import org.springblade.core.datascope.handler.BladeScopeModelHandler; |
| | | import org.springblade.core.datascope.handler.DataScopeHandler; |
| | | import org.springblade.core.datascope.handler.ScopeModelHandler; |
| | | import org.springblade.core.datascope.interceptor.DataScopeInterceptor; |
| | | import org.springblade.core.datascope.props.DataScopeProperties; |
| | | import org.springframework.boot.autoconfigure.AutoConfiguration; |
| | | 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.jdbc.core.JdbcTemplate; |
| | | |
| | | /** |
| | | * æ°æ®æéé
置类 |
| | | * |
| | | * @author Chill |
| | | */ |
| | | @AutoConfiguration |
| | | @AllArgsConstructor |
| | | @EnableConfigurationProperties(DataScopeProperties.class) |
| | | public class DataScopeConfiguration { |
| | | |
| | | private final JdbcTemplate jdbcTemplate; |
| | | |
| | | @Bean |
| | | @ConditionalOnMissingBean(ScopeModelHandler.class) |
| | | public ScopeModelHandler scopeModelHandler() { |
| | | return new BladeScopeModelHandler(jdbcTemplate); |
| | | } |
| | | |
| | | @Bean |
| | | @ConditionalOnBean(ScopeModelHandler.class) |
| | | @ConditionalOnMissingBean(DataScopeHandler.class) |
| | | public DataScopeHandler dataScopeHandler(ScopeModelHandler scopeModelHandler) { |
| | | return new BladeDataScopeHandler(scopeModelHandler); |
| | | } |
| | | |
| | | @Bean |
| | | @ConditionalOnBean(DataScopeHandler.class) |
| | | @ConditionalOnMissingBean(DataScopeInterceptor.class) |
| | | public DataScopeInterceptor interceptor(DataScopeHandler dataScopeHandler, DataScopeProperties dataScopeProperties) { |
| | | return new DataScopeInterceptor(dataScopeHandler, dataScopeProperties); |
| | | } |
| | | |
| | | } |