Commit 0f2ce3b8 authored by terrymanu's avatar terrymanu
Browse files

for checkstyle

parent 118ed73a
Loading
Loading
Loading
Loading
+12 −4
Original line number Diff line number Diff line
package io.shardingjdbc.spring.boot.util;

import com.google.common.base.Preconditions;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder;
import org.springframework.boot.bind.RelaxedPropertyResolver;
import org.springframework.core.env.Environment;
@@ -12,17 +15,22 @@ import java.util.Map;
 *
 * @author caohao
 */
public class EnvironmentAwareUtil {
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public final class EnvironmentAwareUtil {
    
    /**
     * Set data source map.
     * 
     * @param dataSourceMap data source map
     * @param environment environment for spring boot
     */
    public static void setDataSourceMap(final Map<String, DataSource> dataSourceMap, final Environment environment) {
        RelaxedPropertyResolver propertyResolver = new RelaxedPropertyResolver(environment, "sharding.jdbc.datasource.");
        String dataSources = propertyResolver.getProperty("names");
        for (String each : dataSources.split(",")) {
            try {
                Map<String, Object> dataSourceProps = propertyResolver.getSubProperties(each + ".");
                if (dataSourceProps.isEmpty()) {
                    throw new RuntimeException("Wrong datasource properties!");
                }
                Preconditions.checkState(!dataSourceProps.isEmpty(), "Wrong datasource properties!");
                DataSource dataSource = DataSourceBuilder.create().driverClassName(dataSourceProps.get("driver-class-name").toString())
                        .username(dataSourceProps.get("username").toString()).password(dataSourceProps.get("password").toString())
                        .url(dataSourceProps.get("url").toString()).type((Class<? extends DataSource>) Class.forName(dataSourceProps.get("type").toString())).build();