This is an automated email from the ASF dual-hosted git repository.
zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new a2369e1e3bc Refactor DistSQL converter (#33456)
a2369e1e3bc is described below
commit a2369e1e3bc7f6cf1f97ba78556d096d4ff2a4d9
Author: Raigor <[email protected]>
AuthorDate: Tue Oct 29 22:25:05 2024 +0800
Refactor DistSQL converter (#33456)
---
.../constant/BroadcastDistSQLConstants.java} | 20 +++------------
...oadcastRuleConfigurationToDistSQLConverter.java | 5 ++--
.../handler/constant/EncryptDistSQLConstants.java | 4 +--
...EncryptRuleConfigurationToDistSQLConverter.java | 4 +--
.../handler/constant/MaskDistSQLConstants.java} | 18 ++++++--------
.../MaskRuleConfigurationToDistSQLConverter.java | 29 ++++++++--------------
...askRuleConfigurationToDistSQLConverterTest.java | 2 +-
.../ReadwriteSplittingDistSQLConstants.java | 4 +--
...littingRuleConfigurationToDistSQLConverter.java | 10 ++++----
.../handler/constant/ShadowDistSQLConstants.java | 4 +--
.../ShadowRuleConfigurationToDistSQLConverter.java | 4 +--
.../handler/constant/ShardingDistSQLConstants.java | 6 ++---
...hardingRuleConfigurationToDistSQLConverter.java | 6 ++---
.../handler/constant/SingleDistSQLConstants.java | 20 ++++-----------
.../SingleRuleConfigurationToDistSQLConverter.java | 9 +++----
...gleRuleConfigurationToDistSQLConverterTest.java | 6 -----
16 files changed, 55 insertions(+), 96 deletions(-)
diff --git
a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
b/features/broadcast/distsql/handler/src/main/java/org/apache/shardingsphere/broadcast/distsql/handler/constant/BroadcastDistSQLConstants.java
similarity index 62%
copy from
features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
copy to
features/broadcast/distsql/handler/src/main/java/org/apache/shardingsphere/broadcast/distsql/handler/constant/BroadcastDistSQLConstants.java
index 5fa04ea9f6a..3d8ef78c726 100644
---
a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
+++
b/features/broadcast/distsql/handler/src/main/java/org/apache/shardingsphere/broadcast/distsql/handler/constant/BroadcastDistSQLConstants.java
@@ -15,28 +15,16 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.shadow.distsql.handler.constant;
+package org.apache.shardingsphere.broadcast.distsql.handler.constant;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
/**
- * Shadow DistSQL constants.
+ * Broadcast DistSQL constants.
*/
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class ShadowDistSQLConstants {
+public final class BroadcastDistSQLConstants {
- public static final String CREATE_SHADOW = "CREATE SHADOW RULE";
-
- public static final String SHADOW = " %s("
- + System.lineSeparator()
- + "SOURCE=%s,"
- + System.lineSeparator()
- + "SHADOW=%s,"
- + System.lineSeparator()
- + "%s"
- + System.lineSeparator()
- + ")";
-
- public static final String SHADOW_TABLE = "%s(%s)";
+ public static final String CREATE_BROADCAST_TABLE_RULE = "CREATE BROADCAST
TABLE RULE %s;";
}
diff --git
a/features/broadcast/distsql/handler/src/main/java/org/apache/shardingsphere/broadcast/distsql/handler/converter/BroadcastRuleConfigurationToDistSQLConverter.java
b/features/broadcast/distsql/handler/src/main/java/org/apache/shardingsphere/broadcast/distsql/handler/converter/BroadcastRuleConfigurationToDistSQLConverter.java
index cdd1be58a39..6306eac6062 100644
---
a/features/broadcast/distsql/handler/src/main/java/org/apache/shardingsphere/broadcast/distsql/handler/converter/BroadcastRuleConfigurationToDistSQLConverter.java
+++
b/features/broadcast/distsql/handler/src/main/java/org/apache/shardingsphere/broadcast/distsql/handler/converter/BroadcastRuleConfigurationToDistSQLConverter.java
@@ -19,6 +19,7 @@ package
org.apache.shardingsphere.broadcast.distsql.handler.converter;
import com.google.common.base.Joiner;
import org.apache.shardingsphere.broadcast.config.BroadcastRuleConfiguration;
+import
org.apache.shardingsphere.broadcast.distsql.handler.constant.BroadcastDistSQLConstants;
import
org.apache.shardingsphere.distsql.handler.engine.query.ral.convert.RuleConfigurationToDistSQLConverter;
/**
@@ -26,14 +27,12 @@ import
org.apache.shardingsphere.distsql.handler.engine.query.ral.convert.RuleCo
*/
public final class BroadcastRuleConfigurationToDistSQLConverter implements
RuleConfigurationToDistSQLConverter<BroadcastRuleConfiguration> {
- public static final String CREATE_BROADCAST_TABLE_RULE = "CREATE BROADCAST
TABLE RULE %s;";
-
@Override
public String convert(final BroadcastRuleConfiguration ruleConfig) {
if (ruleConfig.getTables().isEmpty()) {
return "";
}
- return String.format(CREATE_BROADCAST_TABLE_RULE,
Joiner.on(",").join(ruleConfig.getTables()));
+ return
String.format(BroadcastDistSQLConstants.CREATE_BROADCAST_TABLE_RULE,
Joiner.on(",").join(ruleConfig.getTables()));
}
@Override
diff --git
a/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/constant/EncryptDistSQLConstants.java
b/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/constant/EncryptDistSQLConstants.java
index fdf7f15c0ed..58233bf6e0a 100644
---
a/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/constant/EncryptDistSQLConstants.java
+++
b/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/constant/EncryptDistSQLConstants.java
@@ -26,9 +26,9 @@ import lombok.NoArgsConstructor;
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public final class EncryptDistSQLConstants {
- public static final String CREATE_ENCRYPT = "CREATE ENCRYPT RULE";
+ public static final String CREATE_ENCRYPT_RULE = "CREATE ENCRYPT RULE";
- public static final String ENCRYPT = " %s ("
+ public static final String ENCRYPT_RULE = " %s ("
+ System.lineSeparator()
+ "COLUMNS("
+ System.lineSeparator()
diff --git
a/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/converter/EncryptRuleConfigurationToDistSQLConverter.java
b/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/converter/EncryptRuleConfigurationToDistSQLConverter.java
index d0347b63171..52e534e13c9 100644
---
a/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/converter/EncryptRuleConfigurationToDistSQLConverter.java
+++
b/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/converter/EncryptRuleConfigurationToDistSQLConverter.java
@@ -42,11 +42,11 @@ public final class
EncryptRuleConfigurationToDistSQLConverter implements RuleCon
if (ruleConfig.getTables().isEmpty()) {
return "";
}
- StringBuilder result = new
StringBuilder(EncryptDistSQLConstants.CREATE_ENCRYPT);
+ StringBuilder result = new
StringBuilder(EncryptDistSQLConstants.CREATE_ENCRYPT_RULE);
Iterator<EncryptTableRuleConfiguration> iterator =
ruleConfig.getTables().iterator();
while (iterator.hasNext()) {
EncryptTableRuleConfiguration tableRuleConfig = iterator.next();
- result.append(String.format(EncryptDistSQLConstants.ENCRYPT,
tableRuleConfig.getName(), getEncryptColumns(tableRuleConfig.getColumns(),
ruleConfig.getEncryptors())));
+ result.append(String.format(EncryptDistSQLConstants.ENCRYPT_RULE,
tableRuleConfig.getName(), getEncryptColumns(tableRuleConfig.getColumns(),
ruleConfig.getEncryptors())));
if (iterator.hasNext()) {
result.append(DistSQLConstants.COMMA).append(System.lineSeparator());
}
diff --git
a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
b/features/mask/distsql/handler/src/main/java/org/apache/shardingsphere/mask/distsql/handler/constant/MaskDistSQLConstants.java
similarity index 71%
copy from
features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
copy to
features/mask/distsql/handler/src/main/java/org/apache/shardingsphere/mask/distsql/handler/constant/MaskDistSQLConstants.java
index 5fa04ea9f6a..542932e225a 100644
---
a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
+++
b/features/mask/distsql/handler/src/main/java/org/apache/shardingsphere/mask/distsql/handler/constant/MaskDistSQLConstants.java
@@ -15,28 +15,26 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.shadow.distsql.handler.constant;
+package org.apache.shardingsphere.mask.distsql.handler.constant;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
/**
- * Shadow DistSQL constants.
+ * Mask DistSQL constants.
*/
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class ShadowDistSQLConstants {
+public final class MaskDistSQLConstants {
- public static final String CREATE_SHADOW = "CREATE SHADOW RULE";
+ public static final String CREATE_MASK_RULE = "CREATE MASK RULE";
- public static final String SHADOW = " %s("
+ public static final String MASK_RULE = " %s ("
+ System.lineSeparator()
- + "SOURCE=%s,"
- + System.lineSeparator()
- + "SHADOW=%s,"
+ + "COLUMNS("
+ System.lineSeparator()
+ "%s"
+ System.lineSeparator()
- + ")";
+ + "))";
- public static final String SHADOW_TABLE = "%s(%s)";
+ public static final String MASK_COLUMN = "(NAME=%s, %s)";
}
diff --git
a/features/mask/distsql/handler/src/main/java/org/apache/shardingsphere/mask/distsql/handler/converter/MaskRuleConfigurationToDistSQLConverter.java
b/features/mask/distsql/handler/src/main/java/org/apache/shardingsphere/mask/distsql/handler/converter/MaskRuleConfigurationToDistSQLConverter.java
index 1426c919514..65e7ec83861 100644
---
a/features/mask/distsql/handler/src/main/java/org/apache/shardingsphere/mask/distsql/handler/converter/MaskRuleConfigurationToDistSQLConverter.java
+++
b/features/mask/distsql/handler/src/main/java/org/apache/shardingsphere/mask/distsql/handler/converter/MaskRuleConfigurationToDistSQLConverter.java
@@ -17,12 +17,14 @@
package org.apache.shardingsphere.mask.distsql.handler.converter;
+import org.apache.shardingsphere.distsql.handler.constant.DistSQLConstants;
import
org.apache.shardingsphere.distsql.handler.engine.query.ral.convert.AlgorithmDistSQLConverter;
import
org.apache.shardingsphere.distsql.handler.engine.query.ral.convert.RuleConfigurationToDistSQLConverter;
import
org.apache.shardingsphere.infra.algorithm.core.config.AlgorithmConfiguration;
import org.apache.shardingsphere.mask.config.MaskRuleConfiguration;
import org.apache.shardingsphere.mask.config.rule.MaskColumnRuleConfiguration;
import org.apache.shardingsphere.mask.config.rule.MaskTableRuleConfiguration;
+import
org.apache.shardingsphere.mask.distsql.handler.constant.MaskDistSQLConstants;
import java.util.Collection;
import java.util.Iterator;
@@ -33,42 +35,33 @@ import java.util.Map;
*/
public final class MaskRuleConfigurationToDistSQLConverter implements
RuleConfigurationToDistSQLConverter<MaskRuleConfiguration> {
- private static final String CREATE_MASK = "CREATE MASK RULE";
-
- private static final String MASK = " %s ("
- + System.lineSeparator()
- + "COLUMNS("
- + System.lineSeparator()
- + "%s"
- + System.lineSeparator()
- + "),";
-
- private static final String MASK_COLUMN = "(NAME=%s, %s)";
-
@Override
public String convert(final MaskRuleConfiguration ruleConfig) {
if (ruleConfig.getTables().isEmpty()) {
return "";
}
- StringBuilder result = new StringBuilder(CREATE_MASK);
+ StringBuilder result = new
StringBuilder(MaskDistSQLConstants.CREATE_MASK_RULE);
Iterator<MaskTableRuleConfiguration> iterator =
ruleConfig.getTables().iterator();
while (iterator.hasNext()) {
MaskTableRuleConfiguration tableRuleConfig = iterator.next();
- result.append(String.format(MASK, tableRuleConfig.getName(),
getMaskColumns(tableRuleConfig.getColumns(), ruleConfig.getMaskAlgorithms())));
+ result.append(String.format(MaskDistSQLConstants.MASK_RULE,
tableRuleConfig.getName(), getMaskColumns(tableRuleConfig.getColumns(),
ruleConfig.getMaskAlgorithms())));
if (iterator.hasNext()) {
- result.append(",").append(System.lineSeparator());
+
result.append(DistSQLConstants.COMMA).append(System.lineSeparator());
}
}
- result.append(";");
+ result.append(DistSQLConstants.SEMI);
return result.toString();
}
private String getMaskColumns(final
Collection<MaskColumnRuleConfiguration> columnRuleConfig, final Map<String,
AlgorithmConfiguration> maskAlgorithms) {
StringBuilder result = new StringBuilder();
Iterator<MaskColumnRuleConfiguration> iterator =
columnRuleConfig.iterator();
- if (iterator.hasNext()) {
+ while (iterator.hasNext()) {
MaskColumnRuleConfiguration column = iterator.next();
- result.append(String.format(MASK_COLUMN, column.getLogicColumn(),
getMaskAlgorithms(column, maskAlgorithms)));
+ result.append(String.format(MaskDistSQLConstants.MASK_COLUMN,
column.getLogicColumn(), getMaskAlgorithms(column, maskAlgorithms)));
+ if (iterator.hasNext()) {
+
result.append(DistSQLConstants.COMMA).append(System.lineSeparator());
+ }
}
return result.toString();
}
diff --git
a/features/mask/distsql/handler/src/test/java/org/apache/shardingsphere/mask/distsql/handler/converter/MaskRuleConfigurationToDistSQLConverterTest.java
b/features/mask/distsql/handler/src/test/java/org/apache/shardingsphere/mask/distsql/handler/converter/MaskRuleConfigurationToDistSQLConverterTest.java
index 92ec312b127..48cb5730575 100644
---
a/features/mask/distsql/handler/src/test/java/org/apache/shardingsphere/mask/distsql/handler/converter/MaskRuleConfigurationToDistSQLConverterTest.java
+++
b/features/mask/distsql/handler/src/test/java/org/apache/shardingsphere/mask/distsql/handler/converter/MaskRuleConfigurationToDistSQLConverterTest.java
@@ -49,7 +49,7 @@ class MaskRuleConfigurationToDistSQLConverterTest {
void assertConvert() {
MaskRuleConfiguration maskRuleConfig = getMaskRuleConfiguration();
assertThat(converter.convert(maskRuleConfig),
- is("CREATE MASK RULE foo_tbl (" + System.lineSeparator() +
"COLUMNS(" + System.lineSeparator() + "(NAME=foo_col, TYPE(NAME='md5'))" +
System.lineSeparator() + "),;"));
+ is("CREATE MASK RULE foo_tbl (" + System.lineSeparator() +
"COLUMNS(" + System.lineSeparator() + "(NAME=foo_col, TYPE(NAME='md5'))" +
System.lineSeparator() + "));"));
}
private MaskRuleConfiguration getMaskRuleConfiguration() {
diff --git
a/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/constant/ReadwriteSplittingDistSQLConstants.java
b/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/constant/ReadwriteSplittingDistSQLConstants.java
index 26330f7494b..8e0a747ef47 100644
---
a/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/constant/ReadwriteSplittingDistSQLConstants.java
+++
b/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/constant/ReadwriteSplittingDistSQLConstants.java
@@ -28,7 +28,7 @@ public final class ReadwriteSplittingDistSQLConstants {
public static final String CREATE_READWRITE_SPLITTING_RULE = "CREATE
READWRITE_SPLITTING RULE";
- public static final String READWRITE_SPLITTING_FOR_STATIC = " %s ("
+ public static final String READWRITE_SPLITTING_RULE = " %s ("
+ System.lineSeparator()
+ "WRITE_STORAGE_UNIT=%s,"
+ System.lineSeparator()
@@ -38,5 +38,5 @@ public final class ReadwriteSplittingDistSQLConstants {
+ System.lineSeparator()
+ ")";
- public static final String READ_RESOURCE = "%s";
+ public static final String READ_DATA_SOURCE = "%s";
}
diff --git
a/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/converter/ReadwriteSplittingRuleConfigurationToDistSQLConverter.java
b/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/converter/ReadwriteSplittingRuleConfigurationToDistSQLConverter.java
index aaf14a0eeb3..fe0fa228604 100644
---
a/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/converter/ReadwriteSplittingRuleConfigurationToDistSQLConverter.java
+++
b/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/converter/ReadwriteSplittingRuleConfigurationToDistSQLConverter.java
@@ -43,7 +43,7 @@ public final class
ReadwriteSplittingRuleConfigurationToDistSQLConverter impleme
StringBuilder result = new
StringBuilder(ReadwriteSplittingDistSQLConstants.CREATE_READWRITE_SPLITTING_RULE);
Iterator<ReadwriteSplittingDataSourceGroupRuleConfiguration> iterator
= ruleConfig.getDataSourceGroups().iterator();
while (iterator.hasNext()) {
- appendStaticReadWriteSplittingRule(ruleConfig.getLoadBalancers(),
iterator.next(), result);
+ appendReadWriteSplittingRule(ruleConfig.getLoadBalancers(),
iterator.next(), result);
if (iterator.hasNext()) {
result.append(DistSQLConstants.COMMA);
}
@@ -52,12 +52,12 @@ public final class
ReadwriteSplittingRuleConfigurationToDistSQLConverter impleme
return result.toString();
}
- private void appendStaticReadWriteSplittingRule(final Map<String,
AlgorithmConfiguration> loadBalancers,
- final
ReadwriteSplittingDataSourceGroupRuleConfiguration dataSourceGroupRuleConfig,
final StringBuilder stringBuilder) {
+ private void appendReadWriteSplittingRule(final Map<String,
AlgorithmConfiguration> loadBalancers,
+ final
ReadwriteSplittingDataSourceGroupRuleConfiguration dataSourceGroupRuleConfig,
final StringBuilder stringBuilder) {
String readDataSourceNames =
getReadDataSourceNames(dataSourceGroupRuleConfig.getReadDataSourceNames());
String transactionalReadQueryStrategy =
dataSourceGroupRuleConfig.getTransactionalReadQueryStrategy().name();
String loadBalancerType =
getLoadBalancerType(loadBalancers.get(dataSourceGroupRuleConfig.getLoadBalancerName()));
-
stringBuilder.append(String.format(ReadwriteSplittingDistSQLConstants.READWRITE_SPLITTING_FOR_STATIC,
+
stringBuilder.append(String.format(ReadwriteSplittingDistSQLConstants.READWRITE_SPLITTING_RULE,
dataSourceGroupRuleConfig.getName(),
dataSourceGroupRuleConfig.getWriteDataSourceName(), readDataSourceNames,
transactionalReadQueryStrategy, loadBalancerType));
}
@@ -65,7 +65,7 @@ public final class
ReadwriteSplittingRuleConfigurationToDistSQLConverter impleme
StringBuilder result = new StringBuilder();
Iterator<String> iterator = readDataSourceNames.iterator();
while (iterator.hasNext()) {
-
result.append(String.format(ReadwriteSplittingDistSQLConstants.READ_RESOURCE,
iterator.next()));
+
result.append(String.format(ReadwriteSplittingDistSQLConstants.READ_DATA_SOURCE,
iterator.next()));
if (iterator.hasNext()) {
result.append(DistSQLConstants.COMMA);
}
diff --git
a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
b/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
index 5fa04ea9f6a..ed9721d1f9f 100644
---
a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
+++
b/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
@@ -26,9 +26,9 @@ import lombok.NoArgsConstructor;
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public final class ShadowDistSQLConstants {
- public static final String CREATE_SHADOW = "CREATE SHADOW RULE";
+ public static final String CREATE_SHADOW_RULE = "CREATE SHADOW RULE";
- public static final String SHADOW = " %s("
+ public static final String SHADOW_RULE = " %s("
+ System.lineSeparator()
+ "SOURCE=%s,"
+ System.lineSeparator()
diff --git
a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/converter/ShadowRuleConfigurationToDistSQLConverter.java
b/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/converter/ShadowRuleConfigurationToDistSQLConverter.java
index 3174e49784f..ddcd6406e81 100644
---
a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/converter/ShadowRuleConfigurationToDistSQLConverter.java
+++
b/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/converter/ShadowRuleConfigurationToDistSQLConverter.java
@@ -41,13 +41,13 @@ public final class
ShadowRuleConfigurationToDistSQLConverter implements RuleConf
if (ruleConfig.getDataSources().isEmpty()) {
return "";
}
- StringBuilder result = new
StringBuilder(ShadowDistSQLConstants.CREATE_SHADOW);
+ StringBuilder result = new
StringBuilder(ShadowDistSQLConstants.CREATE_SHADOW_RULE);
Iterator<ShadowDataSourceConfiguration> iterator =
ruleConfig.getDataSources().iterator();
while (iterator.hasNext()) {
ShadowDataSourceConfiguration dataSourceConfig = iterator.next();
String shadowRuleName = dataSourceConfig.getName();
String shadowTables = getShadowTables(shadowRuleName,
ruleConfig.getTables(), ruleConfig.getShadowAlgorithms());
- result.append(String.format(ShadowDistSQLConstants.SHADOW,
shadowRuleName, dataSourceConfig.getProductionDataSourceName(),
dataSourceConfig.getShadowDataSourceName(), shadowTables));
+ result.append(String.format(ShadowDistSQLConstants.SHADOW_RULE,
shadowRuleName, dataSourceConfig.getProductionDataSourceName(),
dataSourceConfig.getShadowDataSourceName(), shadowTables));
if (iterator.hasNext()) {
result.append(DistSQLConstants.COMMA);
}
diff --git
a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/constant/ShardingDistSQLConstants.java
b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/constant/ShardingDistSQLConstants.java
index 14e581a6c3b..4cac2ec62c2 100644
---
a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/constant/ShardingDistSQLConstants.java
+++
b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/constant/ShardingDistSQLConstants.java
@@ -34,15 +34,15 @@ public final class ShardingDistSQLConstants {
public static final String NONE = "";
- public static final String CREATE_SHARDING_TABLE = "CREATE SHARDING TABLE
RULE";
+ public static final String CREATE_SHARDING_TABLE_RULE = "CREATE SHARDING
TABLE RULE";
- public static final String SHARDING_TABLE = " %s ("
+ public static final String SHARDING_TABLE_RULE = " %s ("
+ System.lineSeparator()
+ "DATANODES('%s')%s"
+ System.lineSeparator()
+ ")";
- public static final String SHARDING_AUTO_TABLE = " %s ("
+ public static final String SHARDING_AUTO_TABLE_RULE = " %s ("
+ System.lineSeparator()
+ "STORAGE_UNITS(%s),"
+ System.lineSeparator()
diff --git
a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/converter/ShardingRuleConfigurationToDistSQLConverter.java
b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/converter/ShardingRuleConfigurationToDistSQLConverter.java
index 93ec95fc2e1..ed6c331a917 100644
---
a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/converter/ShardingRuleConfigurationToDistSQLConverter.java
+++
b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/converter/ShardingRuleConfigurationToDistSQLConverter.java
@@ -64,7 +64,7 @@ public final class
ShardingRuleConfigurationToDistSQLConverter implements RuleCo
private void appendShardingTableRules(final ShardingRuleConfiguration
ruleConfig, final StringBuilder stringBuilder) {
String tableRules = getTableRules(ruleConfig);
String autoTableRules = getAutoTableRules(ruleConfig);
-
stringBuilder.append(ShardingDistSQLConstants.CREATE_SHARDING_TABLE).append(tableRules);
+
stringBuilder.append(ShardingDistSQLConstants.CREATE_SHARDING_TABLE_RULE).append(tableRules);
if (!Strings.isNullOrEmpty(tableRules) &&
!Strings.isNullOrEmpty(autoTableRules)) {
stringBuilder.append(DistSQLConstants.COMMA);
}
@@ -104,7 +104,7 @@ public final class
ShardingRuleConfigurationToDistSQLConverter implements RuleCo
Iterator<ShardingTableRuleConfiguration> iterator =
ruleConfig.getTables().iterator();
while (iterator.hasNext()) {
ShardingTableRuleConfiguration tableRuleConfig =
iterator.next();
-
result.append(String.format(ShardingDistSQLConstants.SHARDING_TABLE,
tableRuleConfig.getLogicTable(), tableRuleConfig.getActualDataNodes(),
+
result.append(String.format(ShardingDistSQLConstants.SHARDING_TABLE_RULE,
tableRuleConfig.getLogicTable(), tableRuleConfig.getActualDataNodes(),
appendTableStrategy(tableRuleConfig, ruleConfig)));
if (iterator.hasNext()) {
result.append(DistSQLConstants.COMMA);
@@ -120,7 +120,7 @@ public final class
ShardingRuleConfigurationToDistSQLConverter implements RuleCo
Iterator<ShardingAutoTableRuleConfiguration> iterator =
ruleConfig.getAutoTables().iterator();
while (iterator.hasNext()) {
ShardingAutoTableRuleConfiguration autoTableRuleConfig =
iterator.next();
-
result.append(String.format(ShardingDistSQLConstants.SHARDING_AUTO_TABLE,
autoTableRuleConfig.getLogicTable(), autoTableRuleConfig.getActualDataSources(),
+
result.append(String.format(ShardingDistSQLConstants.SHARDING_AUTO_TABLE_RULE,
autoTableRuleConfig.getLogicTable(), autoTableRuleConfig.getActualDataSources(),
appendAutoTableStrategy(autoTableRuleConfig,
ruleConfig)));
if (iterator.hasNext()) {
result.append(DistSQLConstants.COMMA);
diff --git
a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
b/kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/constant/SingleDistSQLConstants.java
similarity index 62%
copy from
features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
copy to
kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/constant/SingleDistSQLConstants.java
index 5fa04ea9f6a..55a13e175bd 100644
---
a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/constant/ShadowDistSQLConstants.java
+++
b/kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/constant/SingleDistSQLConstants.java
@@ -15,28 +15,18 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.shadow.distsql.handler.constant;
+package org.apache.shardingsphere.single.distsql.handler.constant;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
/**
- * Shadow DistSQL constants.
+ * Single DistSQL constants.
*/
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class ShadowDistSQLConstants {
+public final class SingleDistSQLConstants {
- public static final String CREATE_SHADOW = "CREATE SHADOW RULE";
+ public static final String LOAD_SINGLE_TABLE = "LOAD SINGLE TABLE %s;";
- public static final String SHADOW = " %s("
- + System.lineSeparator()
- + "SOURCE=%s,"
- + System.lineSeparator()
- + "SHADOW=%s,"
- + System.lineSeparator()
- + "%s"
- + System.lineSeparator()
- + ")";
-
- public static final String SHADOW_TABLE = "%s(%s)";
+ public static final String SET_DEFAULT_SINGLE_TABLE_STORAGE_UNIT = "SET
DEFAULT SINGLE TABLE STORAGE UNIT = %s;";
}
diff --git
a/kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/converter/SingleRuleConfigurationToDistSQLConverter.java
b/kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/converter/SingleRuleConfigurationToDistSQLConverter.java
index e675057e334..d882992490d 100644
---
a/kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/converter/SingleRuleConfigurationToDistSQLConverter.java
+++
b/kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/converter/SingleRuleConfigurationToDistSQLConverter.java
@@ -20,16 +20,13 @@ package
org.apache.shardingsphere.single.distsql.handler.converter;
import com.google.common.base.Joiner;
import
org.apache.shardingsphere.distsql.handler.engine.query.ral.convert.RuleConfigurationToDistSQLConverter;
import org.apache.shardingsphere.single.config.SingleRuleConfiguration;
+import
org.apache.shardingsphere.single.distsql.handler.constant.SingleDistSQLConstants;
/**
* Single rule configuration to DistSQL converter.
*/
public final class SingleRuleConfigurationToDistSQLConverter implements
RuleConfigurationToDistSQLConverter<SingleRuleConfiguration> {
- public static final String LOAD_SINGLE_TABLE = "LOAD SINGLE TABLE %s;";
-
- public static final String SET_DEFAULT_SINGLE_TABLE_STORAGE_UNIT = "SET
DEFAULT SINGLE TABLE STORAGE UNIT = %s;";
-
@Override
public String convert(final SingleRuleConfiguration ruleConfig) {
if (ruleConfig.getTables().isEmpty() &&
!ruleConfig.getDefaultDataSource().isPresent()) {
@@ -49,11 +46,11 @@ public final class
SingleRuleConfigurationToDistSQLConverter implements RuleConf
}
private String convertLoadTable(final SingleRuleConfiguration ruleConfig) {
- return String.format(LOAD_SINGLE_TABLE,
Joiner.on(",").join(ruleConfig.getTables()));
+ return String.format(SingleDistSQLConstants.LOAD_SINGLE_TABLE,
Joiner.on(",").join(ruleConfig.getTables()));
}
private String convertSetDefaultSingleTableStorageUnit(final String
defaultStorageUnitName) {
- return String.format(SET_DEFAULT_SINGLE_TABLE_STORAGE_UNIT,
defaultStorageUnitName);
+ return
String.format(SingleDistSQLConstants.SET_DEFAULT_SINGLE_TABLE_STORAGE_UNIT,
defaultStorageUnitName);
}
@Override
diff --git
a/kernel/single/distsql/handler/src/test/java/org/apache/shardingsphere/single/distsql/handler/converter/SingleRuleConfigurationToDistSQLConverterTest.java
b/kernel/single/distsql/handler/src/test/java/org/apache/shardingsphere/single/distsql/handler/converter/SingleRuleConfigurationToDistSQLConverterTest.java
index 0b8c06a5daf..f6d2eabf84d 100644
---
a/kernel/single/distsql/handler/src/test/java/org/apache/shardingsphere/single/distsql/handler/converter/SingleRuleConfigurationToDistSQLConverterTest.java
+++
b/kernel/single/distsql/handler/src/test/java/org/apache/shardingsphere/single/distsql/handler/converter/SingleRuleConfigurationToDistSQLConverterTest.java
@@ -48,10 +48,4 @@ class SingleRuleConfigurationToDistSQLConverterTest {
SingleRuleConfigurationToDistSQLConverter
singleRuleConfigurationToDistSQLConverter = new
SingleRuleConfigurationToDistSQLConverter();
assertThat(singleRuleConfigurationToDistSQLConverter.convert(singleRuleConfig),
is(""));
}
-
- @Test
- void assertGetType() {
- SingleRuleConfigurationToDistSQLConverter
singleRuleConfigurationToDistSQLConverter = new
SingleRuleConfigurationToDistSQLConverter();
-
assertThat(singleRuleConfigurationToDistSQLConverter.getType().getName(),
is("org.apache.shardingsphere.single.config.SingleRuleConfiguration"));
- }
}