You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by ji...@apache.org on 2023/03/17 03:58:47 UTC

[shardingsphere] branch master updated: Refactor algorithm spi (#24661)

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

jianglongtao 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 4d0ffdf3955 Refactor algorithm spi (#24661)
4d0ffdf3955 is described below

commit 4d0ffdf39552bb70ac7757148ac603c6303655a8
Author: ChenJiaHao <Pa...@163.com>
AuthorDate: Fri Mar 17 11:58:36 2023 +0800

    Refactor algorithm spi (#24661)
---
 .../org/apache/shardingsphere/encrypt/spi/EncryptAlgorithm.java     | 4 ++--
 .../main/java/org/apache/shardingsphere/mask/spi/MaskAlgorithm.java | 4 ++--
 .../readwritesplitting/spi/ReadQueryLoadBalanceAlgorithm.java       | 4 ++--
 .../java/org/apache/shardingsphere/shadow/spi/ShadowAlgorithm.java  | 4 ++--
 .../apache/shardingsphere/sharding/spi/KeyGenerateAlgorithm.java    | 4 ++--
 .../org/apache/shardingsphere/sharding/spi/ShardingAlgorithm.java   | 4 ++--
 .../apache/shardingsphere/sharding/spi/ShardingAuditAlgorithm.java  | 4 ++--
 .../util/spi/type/typed/algorithm/ShardingSphereAlgorithm.java      | 6 +++---
 .../data/pipeline/spi/ratelimit/JobRateLimitAlgorithm.java          | 4 ++--
 .../spi/check/consistency/DataConsistencyCalculateAlgorithm.java    | 4 ++--
 .../org/apache/shardingsphere/traffic/spi/TrafficAlgorithm.java     | 4 ++--
 .../shardingsphere/traffic/spi/TrafficLoadBalanceAlgorithm.java     | 4 ++--
 12 files changed, 25 insertions(+), 25 deletions(-)

diff --git a/features/encrypt/api/src/main/java/org/apache/shardingsphere/encrypt/spi/EncryptAlgorithm.java b/features/encrypt/api/src/main/java/org/apache/shardingsphere/encrypt/spi/EncryptAlgorithm.java
index df035bfe336..058511bf3d7 100644
--- a/features/encrypt/api/src/main/java/org/apache/shardingsphere/encrypt/spi/EncryptAlgorithm.java
+++ b/features/encrypt/api/src/main/java/org/apache/shardingsphere/encrypt/spi/EncryptAlgorithm.java
@@ -17,10 +17,10 @@
 
 package org.apache.shardingsphere.encrypt.spi;
 
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 /**
  * Encrypt algorithm.
  */
-public interface EncryptAlgorithm extends TypedSPI {
+public interface EncryptAlgorithm extends ShardingSphereAlgorithm {
 }
diff --git a/features/mask/api/src/main/java/org/apache/shardingsphere/mask/spi/MaskAlgorithm.java b/features/mask/api/src/main/java/org/apache/shardingsphere/mask/spi/MaskAlgorithm.java
index f9265be0eed..608c709b7d4 100644
--- a/features/mask/api/src/main/java/org/apache/shardingsphere/mask/spi/MaskAlgorithm.java
+++ b/features/mask/api/src/main/java/org/apache/shardingsphere/mask/spi/MaskAlgorithm.java
@@ -17,7 +17,7 @@
 
 package org.apache.shardingsphere.mask.spi;
 
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 /**
  * Mask algorithm.
@@ -25,7 +25,7 @@ import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
  * @param <I> type of plain value
  * @param <O> type of masked value
  */
-public interface MaskAlgorithm<I, O> extends TypedSPI {
+public interface MaskAlgorithm<I, O> extends ShardingSphereAlgorithm {
     
     /**
      * Mask.
diff --git a/features/readwrite-splitting/api/src/main/java/org/apache/shardingsphere/readwritesplitting/spi/ReadQueryLoadBalanceAlgorithm.java b/features/readwrite-splitting/api/src/main/java/org/apache/shardingsphere/readwritesplitting/spi/ReadQueryLoadBalanceAlgorithm.java
index 6ef4e1d1867..92040daf39c 100644
--- a/features/readwrite-splitting/api/src/main/java/org/apache/shardingsphere/readwritesplitting/spi/ReadQueryLoadBalanceAlgorithm.java
+++ b/features/readwrite-splitting/api/src/main/java/org/apache/shardingsphere/readwritesplitting/spi/ReadQueryLoadBalanceAlgorithm.java
@@ -18,14 +18,14 @@
 package org.apache.shardingsphere.readwritesplitting.spi;
 
 import org.apache.shardingsphere.infra.context.transaction.TransactionConnectionContext;
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 import java.util.List;
 
 /**
  * Read query load-balance algorithm.
  */
-public interface ReadQueryLoadBalanceAlgorithm extends TypedSPI {
+public interface ReadQueryLoadBalanceAlgorithm extends ShardingSphereAlgorithm {
     
     /**
      * Get data source.
diff --git a/features/shadow/api/src/main/java/org/apache/shardingsphere/shadow/spi/ShadowAlgorithm.java b/features/shadow/api/src/main/java/org/apache/shardingsphere/shadow/spi/ShadowAlgorithm.java
index d0d59bd89a0..a9f6ac785d8 100644
--- a/features/shadow/api/src/main/java/org/apache/shardingsphere/shadow/spi/ShadowAlgorithm.java
+++ b/features/shadow/api/src/main/java/org/apache/shardingsphere/shadow/spi/ShadowAlgorithm.java
@@ -17,10 +17,10 @@
 
 package org.apache.shardingsphere.shadow.spi;
 
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 /**
  * Shadow algorithm.
  */
-public interface ShadowAlgorithm extends TypedSPI {
+public interface ShadowAlgorithm extends ShardingSphereAlgorithm {
 }
diff --git a/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/KeyGenerateAlgorithm.java b/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/KeyGenerateAlgorithm.java
index c44daa14afa..bb6aedde594 100644
--- a/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/KeyGenerateAlgorithm.java
+++ b/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/KeyGenerateAlgorithm.java
@@ -17,12 +17,12 @@
 
 package org.apache.shardingsphere.sharding.spi;
 
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 /**
  * Key generate algorithm.
  */
-public interface KeyGenerateAlgorithm extends TypedSPI {
+public interface KeyGenerateAlgorithm extends ShardingSphereAlgorithm {
     
     /**
      * Generate key.
diff --git a/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/ShardingAlgorithm.java b/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/ShardingAlgorithm.java
index 8cbbea330da..b4d91c59b02 100644
--- a/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/ShardingAlgorithm.java
+++ b/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/ShardingAlgorithm.java
@@ -17,14 +17,14 @@
 
 package org.apache.shardingsphere.sharding.spi;
 
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 import java.util.Optional;
 
 /**
  * Sharding algorithm.
  */
-public interface ShardingAlgorithm extends TypedSPI {
+public interface ShardingAlgorithm extends ShardingSphereAlgorithm {
     
     /**
      * Get algorithm structure.
diff --git a/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/ShardingAuditAlgorithm.java b/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/ShardingAuditAlgorithm.java
index 3705688a39b..740cc752c49 100644
--- a/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/ShardingAuditAlgorithm.java
+++ b/features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/ShardingAuditAlgorithm.java
@@ -21,14 +21,14 @@ import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
 import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
 import org.apache.shardingsphere.infra.metadata.database.rule.ShardingSphereRuleMetaData;
 import org.apache.shardingsphere.infra.metadata.user.Grantee;
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 import java.util.List;
 
 /**
  * Sharding audit algorithm.
  */
-public interface ShardingAuditAlgorithm extends TypedSPI {
+public interface ShardingAuditAlgorithm extends ShardingSphereAlgorithm {
     
     /**
      * Sharding audit algorithm SQL check.
diff --git a/features/encrypt/api/src/main/java/org/apache/shardingsphere/encrypt/spi/EncryptAlgorithm.java b/infra/util/src/main/java/org/apache/shardingsphere/infra/util/spi/type/typed/algorithm/ShardingSphereAlgorithm.java
similarity index 84%
copy from features/encrypt/api/src/main/java/org/apache/shardingsphere/encrypt/spi/EncryptAlgorithm.java
copy to infra/util/src/main/java/org/apache/shardingsphere/infra/util/spi/type/typed/algorithm/ShardingSphereAlgorithm.java
index df035bfe336..a1f7c9e4505 100644
--- a/features/encrypt/api/src/main/java/org/apache/shardingsphere/encrypt/spi/EncryptAlgorithm.java
+++ b/infra/util/src/main/java/org/apache/shardingsphere/infra/util/spi/type/typed/algorithm/ShardingSphereAlgorithm.java
@@ -15,12 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.encrypt.spi;
+package org.apache.shardingsphere.infra.util.spi.type.typed.algorithm;
 
 import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
 
 /**
- * Encrypt algorithm.
+ * ShardingSphere algorithm SPI.
  */
-public interface EncryptAlgorithm extends TypedSPI {
+public interface ShardingSphereAlgorithm extends TypedSPI {
 }
diff --git a/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/spi/ratelimit/JobRateLimitAlgorithm.java b/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/spi/ratelimit/JobRateLimitAlgorithm.java
index 484ede02369..2e17dc12a1d 100644
--- a/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/spi/ratelimit/JobRateLimitAlgorithm.java
+++ b/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/spi/ratelimit/JobRateLimitAlgorithm.java
@@ -18,12 +18,12 @@
 package org.apache.shardingsphere.data.pipeline.spi.ratelimit;
 
 import org.apache.shardingsphere.data.pipeline.api.job.JobOperationType;
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 /**
  * Job rate limit algorithm.
  */
-public interface JobRateLimitAlgorithm extends TypedSPI {
+public interface JobRateLimitAlgorithm extends ShardingSphereAlgorithm {
     
     /**
      * Intercept.
diff --git a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/spi/check/consistency/DataConsistencyCalculateAlgorithm.java b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/spi/check/consistency/DataConsistencyCalculateAlgorithm.java
index db4c9a2b7aa..7205da6f2a2 100644
--- a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/spi/check/consistency/DataConsistencyCalculateAlgorithm.java
+++ b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/spi/check/consistency/DataConsistencyCalculateAlgorithm.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.data.pipeline.spi.check.consistency;
 
 import org.apache.shardingsphere.data.pipeline.api.check.consistency.DataConsistencyCalculateParameter;
 import org.apache.shardingsphere.data.pipeline.api.check.consistency.DataConsistencyCalculatedResult;
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 import java.sql.SQLException;
 import java.util.Collection;
@@ -27,7 +27,7 @@ import java.util.Collection;
 /**
  * Data consistency calculate algorithm.
  */
-public interface DataConsistencyCalculateAlgorithm extends TypedSPI {
+public interface DataConsistencyCalculateAlgorithm extends ShardingSphereAlgorithm {
     
     /**
      * Calculate data for consistency check.
diff --git a/kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficAlgorithm.java b/kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficAlgorithm.java
index 9fd2760e272..df8dbadbb06 100644
--- a/kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficAlgorithm.java
+++ b/kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficAlgorithm.java
@@ -17,10 +17,10 @@
 
 package org.apache.shardingsphere.traffic.spi;
 
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 /**
  * Traffic algorithm.
  */
-public interface TrafficAlgorithm extends TypedSPI {
+public interface TrafficAlgorithm extends ShardingSphereAlgorithm {
 }
diff --git a/kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficLoadBalanceAlgorithm.java b/kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficLoadBalanceAlgorithm.java
index 93a91edccb4..f99806d7955 100644
--- a/kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficLoadBalanceAlgorithm.java
+++ b/kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficLoadBalanceAlgorithm.java
@@ -18,14 +18,14 @@
 package org.apache.shardingsphere.traffic.spi;
 
 import org.apache.shardingsphere.infra.instance.metadata.InstanceMetaData;
-import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI;
+import org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm;
 
 import java.util.List;
 
 /**
  * Traffic load balance algorithm.
  */
-public interface TrafficLoadBalanceAlgorithm extends TypedSPI {
+public interface TrafficLoadBalanceAlgorithm extends ShardingSphereAlgorithm {
     
     /**
      * Get instance definition.