You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by du...@apache.org on 2021/10/15 03:36:51 UTC

[shardingsphere] branch master updated: Refactor for ShardingTableRuleQueryResultSet (#13055)

This is an automated email from the ASF dual-hosted git repository.

duanzhengqiang 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 b1c25f4  Refactor for ShardingTableRuleQueryResultSet (#13055)
b1c25f4 is described below

commit b1c25f4285d970998fd2b846530896f33893df0e
Author: Liang Zhang <te...@163.com>
AuthorDate: Fri Oct 15 11:36:08 2021 +0800

    Refactor for ShardingTableRuleQueryResultSet (#13055)
    
    * Refactor for ShardingTableRuleQueryResultSet
    
    * Refactor for ShardingTableRuleQueryResultSet
---
 .../query/ShardingTableRuleQueryResultSet.java     | 26 ++++++++++++----------
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRuleQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRuleQueryResultSet.java
index b819c28..ffd4fad 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRuleQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRuleQueryResultSet.java
@@ -93,12 +93,14 @@ public final class ShardingTableRuleQueryResultSet implements DistSQLResultSet {
         result.add("");
         result.add(getDatabaseStrategyType(shardingTableRuleConfig));
         result.add(getDatabaseShardingColumn(shardingTableRuleConfig));
-        result.add(getAlgorithmType(getDatabaseShardingStrategy(shardingTableRuleConfig)));
-        result.add(getAlgorithmProps(getDatabaseShardingStrategy(shardingTableRuleConfig)));
+        Optional<ShardingStrategyConfiguration> databaseShardingStrategyConfig = getDatabaseShardingStrategy(shardingTableRuleConfig);
+        result.add(databaseShardingStrategyConfig.map(this::getAlgorithmType).orElse(""));
+        result.add(databaseShardingStrategyConfig.map(this::getAlgorithmProperties).orElse(""));
         result.add(getTableStrategyType(shardingTableRuleConfig.getTableShardingStrategy()));
         result.add(getTableShardingColumn(shardingTableRuleConfig.getTableShardingStrategy()));
-        result.add(getAlgorithmType(getTableShardingStrategy(shardingTableRuleConfig.getTableShardingStrategy())));
-        result.add(getAlgorithmProps(getTableShardingStrategy(shardingTableRuleConfig.getTableShardingStrategy())));
+        Optional<ShardingStrategyConfiguration> tableShardingStrategyConfig = getTableShardingStrategy(shardingTableRuleConfig.getTableShardingStrategy());
+        result.add(tableShardingStrategyConfig.map(this::getAlgorithmType).orElse(""));
+        result.add(tableShardingStrategyConfig.map(this::getAlgorithmProperties).orElse(""));
         result.add(getKeyGenerateColumn(shardingTableRuleConfig.getKeyGenerateStrategy()));
         result.add(getKeyGeneratorType(shardingTableRuleConfig.getKeyGenerateStrategy()));
         result.add(getKeyGeneratorProps(shardingTableRuleConfig.getKeyGenerateStrategy()));
@@ -116,8 +118,9 @@ public final class ShardingTableRuleQueryResultSet implements DistSQLResultSet {
         result.add("");
         result.add(getTableStrategyType(shardingAutoTableRuleConfig.getShardingStrategy()));
         result.add(getTableShardingColumn(shardingAutoTableRuleConfig.getShardingStrategy()));
-        result.add(getAlgorithmType(getTableShardingStrategy(shardingAutoTableRuleConfig.getShardingStrategy())));
-        result.add(getAlgorithmProps(getTableShardingStrategy(shardingAutoTableRuleConfig.getShardingStrategy())));
+        Optional<ShardingStrategyConfiguration> tableShardingStrategyConfig = getTableShardingStrategy(shardingAutoTableRuleConfig.getShardingStrategy());
+        result.add(tableShardingStrategyConfig.map(this::getAlgorithmType).orElse(""));
+        result.add(tableShardingStrategyConfig.map(this::getAlgorithmProperties).orElse(""));
         result.add(getKeyGenerateColumn(shardingAutoTableRuleConfig.getKeyGenerateStrategy()));
         result.add(getKeyGeneratorType(shardingAutoTableRuleConfig.getKeyGenerateStrategy()));
         result.add(getKeyGeneratorProps(shardingAutoTableRuleConfig.getKeyGenerateStrategy()));
@@ -145,14 +148,13 @@ public final class ShardingTableRuleQueryResultSet implements DistSQLResultSet {
         return "";
     }
     
-    private String getAlgorithmType(final Optional<ShardingStrategyConfiguration> databaseShardingStrategy) {
-        return databaseShardingStrategy.isPresent() && !(databaseShardingStrategy.get() instanceof NoneShardingStrategyConfiguration)
-                ? getAlgorithmConfiguration(databaseShardingStrategy.get().getShardingAlgorithmName()).getType() : "";
+    private String getAlgorithmType(final ShardingStrategyConfiguration databaseShardingStrategy) {
+        return databaseShardingStrategy instanceof NoneShardingStrategyConfiguration ? "" : getAlgorithmConfiguration(databaseShardingStrategy.getShardingAlgorithmName()).getType();
     }
     
-    private String getAlgorithmProps(final Optional<ShardingStrategyConfiguration> databaseShardingStrategy) {
-        return databaseShardingStrategy.isPresent() && !(databaseShardingStrategy.get() instanceof NoneShardingStrategyConfiguration)
-                ? PropertiesConverter.convert(getAlgorithmConfiguration(databaseShardingStrategy.get().getShardingAlgorithmName()).getProps()) : "";
+    private String getAlgorithmProperties(final ShardingStrategyConfiguration databaseShardingStrategy) {
+        return databaseShardingStrategy instanceof NoneShardingStrategyConfiguration
+                ? "" : PropertiesConverter.convert(getAlgorithmConfiguration(databaseShardingStrategy.getShardingAlgorithmName()).getProps());
     }
     
     private Optional<ShardingStrategyConfiguration> getDatabaseShardingStrategy(final ShardingTableRuleConfiguration shardingTableRuleConfig) {