Loading sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/masterslave/MasterSlaveRuleBuilder.javadeleted 100644 → 0 +0 −53 Original line number Diff line number Diff line /* * Copyright 1999-2015 dangdang.com. * <p> * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * </p> */ package io.shardingjdbc.core.yaml.masterslave; import io.shardingjdbc.core.api.config.MasterSlaveRuleConfiguration; import io.shardingjdbc.core.rule.MasterSlaveRule; import lombok.RequiredArgsConstructor; import javax.sql.DataSource; import java.util.Map; /** * Master-slave rule builder from yaml. * * @author caohao */ @RequiredArgsConstructor public final class MasterSlaveRuleBuilder { private final Map<String, DataSource> dataSourceMap; private final YamlMasterSlaveConfig yamlMasterSlaveConfig; /** * Build master-slave rule from yaml. * * @return master-slave rule from yaml */ public MasterSlaveRule build() { MasterSlaveRuleConfiguration result = new MasterSlaveRuleConfiguration(); result.setName(yamlMasterSlaveConfig.getName()); result.setMasterDataSourceName(yamlMasterSlaveConfig.getMasterDataSourceName()); result.setSlaveDataSourceNames(yamlMasterSlaveConfig.getSlaveDataSourceNames()); result.setLoadBalanceAlgorithmType(yamlMasterSlaveConfig.getLoadBalanceAlgorithmType()); result.setLoadBalanceAlgorithmClassName(yamlMasterSlaveConfig.getLoadBalanceAlgorithmClassName()); return result.build(dataSourceMap.isEmpty() ? yamlMasterSlaveConfig.getDataSources() : dataSourceMap); } } sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/masterslave/YamlMasterSlaveConfig.java→sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/masterslave/YamMasterSlaveRuleConfiguration.java +19 −1 Original line number Diff line number Diff line Loading @@ -18,10 +18,13 @@ package io.shardingjdbc.core.yaml.masterslave; import io.shardingjdbc.core.api.algorithm.masterslave.MasterSlaveLoadBalanceAlgorithmType; import io.shardingjdbc.core.api.config.MasterSlaveRuleConfiguration; import io.shardingjdbc.core.rule.MasterSlaveRule; import lombok.Getter; import lombok.Setter; import javax.sql.DataSource; import java.sql.SQLException; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; Loading @@ -35,7 +38,7 @@ import java.util.Properties; */ @Getter @Setter public class YamlMasterSlaveConfig { public class YamMasterSlaveRuleConfiguration { private Map<String, DataSource> dataSources = new HashMap<>(); Loading @@ -50,4 +53,19 @@ public class YamlMasterSlaveConfig { private String loadBalanceAlgorithmClassName; private Properties props = new Properties(); /** * Build master-slave rule from yaml. * * @return master-slave rule from yaml */ public MasterSlaveRule build(final Map<String, DataSource> dataSourceMap) throws SQLException { MasterSlaveRuleConfiguration result = new MasterSlaveRuleConfiguration(); result.setName(name); result.setMasterDataSourceName(masterDataSourceName); result.setSlaveDataSourceNames(slaveDataSourceNames); result.setLoadBalanceAlgorithmType(loadBalanceAlgorithmType); result.setLoadBalanceAlgorithmClassName(loadBalanceAlgorithmClassName); return result.build(dataSourceMap.isEmpty() ? dataSources : dataSourceMap); } } sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/masterslave/YamlMasterSlaveDataSource.java +8 −8 Original line number Diff line number Diff line Loading @@ -39,31 +39,31 @@ import java.util.Map; public class YamlMasterSlaveDataSource extends MasterSlaveDataSource { public YamlMasterSlaveDataSource(final File yamlFile) throws IOException, SQLException { super(new MasterSlaveRuleBuilder(Collections.<String, DataSource>emptyMap(), unmarshal(yamlFile)).build()); super(unmarshal(yamlFile).build(Collections.<String, DataSource>emptyMap())); } public YamlMasterSlaveDataSource(final Map<String, DataSource> dataSourceMap, final File yamlFile) throws IOException, SQLException { super(new MasterSlaveRuleBuilder(dataSourceMap, unmarshal(yamlFile)).build()); super(unmarshal(yamlFile).build(dataSourceMap)); } public YamlMasterSlaveDataSource(final byte[] yamlByteArray) throws IOException, SQLException { super(new MasterSlaveRuleBuilder(Collections.<String, DataSource>emptyMap(), unmarshal(yamlByteArray)).build()); super(unmarshal(yamlByteArray).build(Collections.<String, DataSource>emptyMap())); } public YamlMasterSlaveDataSource(final Map<String, DataSource> dataSourceMap, final byte[] yamlByteArray) throws IOException, SQLException { super(new MasterSlaveRuleBuilder(dataSourceMap, unmarshal(yamlByteArray)).build()); super(unmarshal(yamlByteArray).build(dataSourceMap)); } private static YamlMasterSlaveConfig unmarshal(final File yamlFile) throws IOException { private static YamMasterSlaveRuleConfiguration unmarshal(final File yamlFile) throws IOException { try ( FileInputStream fileInputStream = new FileInputStream(yamlFile); InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8") ) { return new Yaml(new Constructor(YamlMasterSlaveConfig.class)).loadAs(inputStreamReader, YamlMasterSlaveConfig.class); return new Yaml(new Constructor(YamMasterSlaveRuleConfiguration.class)).loadAs(inputStreamReader, YamMasterSlaveRuleConfiguration.class); } } private static YamlMasterSlaveConfig unmarshal(final byte[] yamlByteArray) throws IOException { return new Yaml(new Constructor(YamlMasterSlaveConfig.class)).loadAs(new ByteArrayInputStream(yamlByteArray), YamlMasterSlaveConfig.class); private static YamMasterSlaveRuleConfiguration unmarshal(final byte[] yamlByteArray) throws IOException { return new Yaml(new Constructor(YamMasterSlaveRuleConfiguration.class)).loadAs(new ByteArrayInputStream(yamlByteArray), YamMasterSlaveRuleConfiguration.class); } } sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/sharding/YamlShardingDataSource.java +4 −4 Original line number Diff line number Diff line Loading @@ -54,16 +54,16 @@ public class YamlShardingDataSource extends ShardingDataSource { super(unmarshal(yamlByteArray).build(dataSourceMap), unmarshal(yamlByteArray).getProps()); } private static YamlShardingConfiguration unmarshal(final File yamlFile) throws IOException { private static YamlShardingRuleConfiguration unmarshal(final File yamlFile) throws IOException { try ( FileInputStream fileInputStream = new FileInputStream(yamlFile); InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8") ) { return new Yaml(new Constructor(YamlShardingConfiguration.class)).loadAs(inputStreamReader, YamlShardingConfiguration.class); return new Yaml(new Constructor(YamlShardingRuleConfiguration.class)).loadAs(inputStreamReader, YamlShardingRuleConfiguration.class); } } private static YamlShardingConfiguration unmarshal(final byte[] yamlByteArray) throws IOException { return new Yaml(new Constructor(YamlShardingConfiguration.class)).loadAs(new ByteArrayInputStream(yamlByteArray), YamlShardingConfiguration.class); private static YamlShardingRuleConfiguration unmarshal(final byte[] yamlByteArray) throws IOException { return new Yaml(new Constructor(YamlShardingRuleConfiguration.class)).loadAs(new ByteArrayInputStream(yamlByteArray), YamlShardingRuleConfiguration.class); } } sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/sharding/YamlShardingConfiguration.java→sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/sharding/YamlShardingRuleConfiguration.java +4 −4 Original line number Diff line number Diff line Loading @@ -20,7 +20,7 @@ package io.shardingjdbc.core.yaml.sharding; import io.shardingjdbc.core.api.config.MasterSlaveRuleConfiguration; import io.shardingjdbc.core.api.config.ShardingRuleConfiguration; import io.shardingjdbc.core.rule.ShardingRule; import io.shardingjdbc.core.yaml.masterslave.YamlMasterSlaveConfig; import io.shardingjdbc.core.yaml.masterslave.YamMasterSlaveRuleConfiguration; import lombok.Getter; import lombok.Setter; Loading @@ -41,7 +41,7 @@ import java.util.Properties; */ @Getter @Setter public class YamlShardingConfiguration { public class YamlShardingRuleConfiguration { private Map<String, DataSource> dataSources = new HashMap<>(); Loading @@ -57,7 +57,7 @@ public class YamlShardingConfiguration { private String defaultKeyGeneratorClass; private Map<String, YamlMasterSlaveConfig> masterSlaveRules = new HashMap<>(); private Map<String, YamMasterSlaveRuleConfiguration> masterSlaveRules = new HashMap<>(); private Properties props = new Properties(); Loading Loading @@ -85,7 +85,7 @@ public class YamlShardingConfiguration { } result.setDefaultKeyGeneratorClass(defaultKeyGeneratorClass); Collection<MasterSlaveRuleConfiguration> masterSlaveRuleConfigs = new LinkedList<>(); for (Map.Entry<String, YamlMasterSlaveConfig> each : masterSlaveRules.entrySet()) { for (Map.Entry<String, YamMasterSlaveRuleConfiguration> each : masterSlaveRules.entrySet()) { MasterSlaveRuleConfiguration config = new MasterSlaveRuleConfiguration(); config.setName(each.getKey()); config.setMasterDataSourceName(each.getValue().getMasterDataSourceName()); Loading Loading
sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/masterslave/MasterSlaveRuleBuilder.javadeleted 100644 → 0 +0 −53 Original line number Diff line number Diff line /* * Copyright 1999-2015 dangdang.com. * <p> * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * </p> */ package io.shardingjdbc.core.yaml.masterslave; import io.shardingjdbc.core.api.config.MasterSlaveRuleConfiguration; import io.shardingjdbc.core.rule.MasterSlaveRule; import lombok.RequiredArgsConstructor; import javax.sql.DataSource; import java.util.Map; /** * Master-slave rule builder from yaml. * * @author caohao */ @RequiredArgsConstructor public final class MasterSlaveRuleBuilder { private final Map<String, DataSource> dataSourceMap; private final YamlMasterSlaveConfig yamlMasterSlaveConfig; /** * Build master-slave rule from yaml. * * @return master-slave rule from yaml */ public MasterSlaveRule build() { MasterSlaveRuleConfiguration result = new MasterSlaveRuleConfiguration(); result.setName(yamlMasterSlaveConfig.getName()); result.setMasterDataSourceName(yamlMasterSlaveConfig.getMasterDataSourceName()); result.setSlaveDataSourceNames(yamlMasterSlaveConfig.getSlaveDataSourceNames()); result.setLoadBalanceAlgorithmType(yamlMasterSlaveConfig.getLoadBalanceAlgorithmType()); result.setLoadBalanceAlgorithmClassName(yamlMasterSlaveConfig.getLoadBalanceAlgorithmClassName()); return result.build(dataSourceMap.isEmpty() ? yamlMasterSlaveConfig.getDataSources() : dataSourceMap); } }
sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/masterslave/YamlMasterSlaveConfig.java→sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/masterslave/YamMasterSlaveRuleConfiguration.java +19 −1 Original line number Diff line number Diff line Loading @@ -18,10 +18,13 @@ package io.shardingjdbc.core.yaml.masterslave; import io.shardingjdbc.core.api.algorithm.masterslave.MasterSlaveLoadBalanceAlgorithmType; import io.shardingjdbc.core.api.config.MasterSlaveRuleConfiguration; import io.shardingjdbc.core.rule.MasterSlaveRule; import lombok.Getter; import lombok.Setter; import javax.sql.DataSource; import java.sql.SQLException; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; Loading @@ -35,7 +38,7 @@ import java.util.Properties; */ @Getter @Setter public class YamlMasterSlaveConfig { public class YamMasterSlaveRuleConfiguration { private Map<String, DataSource> dataSources = new HashMap<>(); Loading @@ -50,4 +53,19 @@ public class YamlMasterSlaveConfig { private String loadBalanceAlgorithmClassName; private Properties props = new Properties(); /** * Build master-slave rule from yaml. * * @return master-slave rule from yaml */ public MasterSlaveRule build(final Map<String, DataSource> dataSourceMap) throws SQLException { MasterSlaveRuleConfiguration result = new MasterSlaveRuleConfiguration(); result.setName(name); result.setMasterDataSourceName(masterDataSourceName); result.setSlaveDataSourceNames(slaveDataSourceNames); result.setLoadBalanceAlgorithmType(loadBalanceAlgorithmType); result.setLoadBalanceAlgorithmClassName(loadBalanceAlgorithmClassName); return result.build(dataSourceMap.isEmpty() ? dataSources : dataSourceMap); } }
sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/masterslave/YamlMasterSlaveDataSource.java +8 −8 Original line number Diff line number Diff line Loading @@ -39,31 +39,31 @@ import java.util.Map; public class YamlMasterSlaveDataSource extends MasterSlaveDataSource { public YamlMasterSlaveDataSource(final File yamlFile) throws IOException, SQLException { super(new MasterSlaveRuleBuilder(Collections.<String, DataSource>emptyMap(), unmarshal(yamlFile)).build()); super(unmarshal(yamlFile).build(Collections.<String, DataSource>emptyMap())); } public YamlMasterSlaveDataSource(final Map<String, DataSource> dataSourceMap, final File yamlFile) throws IOException, SQLException { super(new MasterSlaveRuleBuilder(dataSourceMap, unmarshal(yamlFile)).build()); super(unmarshal(yamlFile).build(dataSourceMap)); } public YamlMasterSlaveDataSource(final byte[] yamlByteArray) throws IOException, SQLException { super(new MasterSlaveRuleBuilder(Collections.<String, DataSource>emptyMap(), unmarshal(yamlByteArray)).build()); super(unmarshal(yamlByteArray).build(Collections.<String, DataSource>emptyMap())); } public YamlMasterSlaveDataSource(final Map<String, DataSource> dataSourceMap, final byte[] yamlByteArray) throws IOException, SQLException { super(new MasterSlaveRuleBuilder(dataSourceMap, unmarshal(yamlByteArray)).build()); super(unmarshal(yamlByteArray).build(dataSourceMap)); } private static YamlMasterSlaveConfig unmarshal(final File yamlFile) throws IOException { private static YamMasterSlaveRuleConfiguration unmarshal(final File yamlFile) throws IOException { try ( FileInputStream fileInputStream = new FileInputStream(yamlFile); InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8") ) { return new Yaml(new Constructor(YamlMasterSlaveConfig.class)).loadAs(inputStreamReader, YamlMasterSlaveConfig.class); return new Yaml(new Constructor(YamMasterSlaveRuleConfiguration.class)).loadAs(inputStreamReader, YamMasterSlaveRuleConfiguration.class); } } private static YamlMasterSlaveConfig unmarshal(final byte[] yamlByteArray) throws IOException { return new Yaml(new Constructor(YamlMasterSlaveConfig.class)).loadAs(new ByteArrayInputStream(yamlByteArray), YamlMasterSlaveConfig.class); private static YamMasterSlaveRuleConfiguration unmarshal(final byte[] yamlByteArray) throws IOException { return new Yaml(new Constructor(YamMasterSlaveRuleConfiguration.class)).loadAs(new ByteArrayInputStream(yamlByteArray), YamMasterSlaveRuleConfiguration.class); } }
sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/sharding/YamlShardingDataSource.java +4 −4 Original line number Diff line number Diff line Loading @@ -54,16 +54,16 @@ public class YamlShardingDataSource extends ShardingDataSource { super(unmarshal(yamlByteArray).build(dataSourceMap), unmarshal(yamlByteArray).getProps()); } private static YamlShardingConfiguration unmarshal(final File yamlFile) throws IOException { private static YamlShardingRuleConfiguration unmarshal(final File yamlFile) throws IOException { try ( FileInputStream fileInputStream = new FileInputStream(yamlFile); InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8") ) { return new Yaml(new Constructor(YamlShardingConfiguration.class)).loadAs(inputStreamReader, YamlShardingConfiguration.class); return new Yaml(new Constructor(YamlShardingRuleConfiguration.class)).loadAs(inputStreamReader, YamlShardingRuleConfiguration.class); } } private static YamlShardingConfiguration unmarshal(final byte[] yamlByteArray) throws IOException { return new Yaml(new Constructor(YamlShardingConfiguration.class)).loadAs(new ByteArrayInputStream(yamlByteArray), YamlShardingConfiguration.class); private static YamlShardingRuleConfiguration unmarshal(final byte[] yamlByteArray) throws IOException { return new Yaml(new Constructor(YamlShardingRuleConfiguration.class)).loadAs(new ByteArrayInputStream(yamlByteArray), YamlShardingRuleConfiguration.class); } }
sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/sharding/YamlShardingConfiguration.java→sharding-jdbc-core/src/main/java/io/shardingjdbc/core/yaml/sharding/YamlShardingRuleConfiguration.java +4 −4 Original line number Diff line number Diff line Loading @@ -20,7 +20,7 @@ package io.shardingjdbc.core.yaml.sharding; import io.shardingjdbc.core.api.config.MasterSlaveRuleConfiguration; import io.shardingjdbc.core.api.config.ShardingRuleConfiguration; import io.shardingjdbc.core.rule.ShardingRule; import io.shardingjdbc.core.yaml.masterslave.YamlMasterSlaveConfig; import io.shardingjdbc.core.yaml.masterslave.YamMasterSlaveRuleConfiguration; import lombok.Getter; import lombok.Setter; Loading @@ -41,7 +41,7 @@ import java.util.Properties; */ @Getter @Setter public class YamlShardingConfiguration { public class YamlShardingRuleConfiguration { private Map<String, DataSource> dataSources = new HashMap<>(); Loading @@ -57,7 +57,7 @@ public class YamlShardingConfiguration { private String defaultKeyGeneratorClass; private Map<String, YamlMasterSlaveConfig> masterSlaveRules = new HashMap<>(); private Map<String, YamMasterSlaveRuleConfiguration> masterSlaveRules = new HashMap<>(); private Properties props = new Properties(); Loading Loading @@ -85,7 +85,7 @@ public class YamlShardingConfiguration { } result.setDefaultKeyGeneratorClass(defaultKeyGeneratorClass); Collection<MasterSlaveRuleConfiguration> masterSlaveRuleConfigs = new LinkedList<>(); for (Map.Entry<String, YamlMasterSlaveConfig> each : masterSlaveRules.entrySet()) { for (Map.Entry<String, YamMasterSlaveRuleConfiguration> each : masterSlaveRules.entrySet()) { MasterSlaveRuleConfiguration config = new MasterSlaveRuleConfiguration(); config.setName(each.getKey()); config.setMasterDataSourceName(each.getValue().getMasterDataSourceName()); Loading