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 a516956a321 Update dev doc of kernel.en.md (#19353)
a516956a321 is described below
commit a516956a3214afcb32c36e0be5feccaf92665a63
Author: Swastika Gupta <[email protected]>
AuthorDate: Tue Jul 19 18:05:30 2022 +0530
Update dev doc of kernel.en.md (#19353)
* Update kernel.en.md
* Update kernel.en.md
---
docs/document/content/dev-manual/kernel.en.md | 124 ++++++++++++++------------
1 file changed, 69 insertions(+), 55 deletions(-)
diff --git a/docs/document/content/dev-manual/kernel.en.md
b/docs/document/content/dev-manual/kernel.en.md
index aba815c6cc8..30b53ee4981 100644
--- a/docs/document/content/dev-manual/kernel.en.md
+++ b/docs/document/content/dev-manual/kernel.en.md
@@ -5,58 +5,72 @@ weight = 3
chapter = true
+++
-## SPI Interface
-
-| *SPI Name* | *Description* |
-| ----------------------------------- | --------------------- |
-| SQLRouter | Used to process routing results
|
-| SQLRewriteContextDecorator | Used to handle SQL rewrite results |
-| SQLExecutionHook | SQL execution process listener |
-| ResultProcessEngine | Used to process result sets |
-| StoragePrivilegeHandler | Use SQL dialect to process privilege metadata
|
-| DynamicDataSourceStrategy | Dynamic data source fetch
strategy |
-
-## Sample
-
-### SQLRouter
-
-| *Implementation Class* | *Description* |
-| ----------------------------------- | --------------------- |
-| ReadwriteSplittingSQLRouter | Used to process read-write splitting
routing results |
-| DatabaseDiscoverySQLRouter | Used to process database discovery
routing results |
-| SingleTableSQLRouter | Used to process single-table routing
results |
-| ShardingSQLRouter | Used to process sharding routing
results |
-| ShadowSQLRouter | Used to process shadow database
routing results |
-
-### SQLRewriteContextDecorator
-| *Implementation Class* | *Description* |
-| ---------------------------------- | --------------------- |
-| ShardingSQLRewriteContextDecorator | Used to process sharding SQL rewrite
results |
-| EncryptSQLRewriteContextDecorator | Used to process encryption SQL rewrite
results |
-
-### SQLExecutionHook
-| *Implementation Class* | *Description* |
-| ----------------------------- | ------------------------- |
-| TransactionalSQLExecutionHook | Transaction hook of SQL execution |
-
-### ResultProcessEngine
-
-| *Implementation Class* | *Description* |
-| ---------------------------- | ------------------- |
-| ShardingResultMergerEngine | Used to handle sharding result set merge |
-| EncryptResultDecoratorEngine | Used to handle encrypted result set overrides
|
-
-### StoragePrivilegeHandler
-
-| *Implementation Class* | *Description* |
-| -------------------------- | ------------------------------ |
-| PostgreSQLPrivilegeHandler | Use PostgreSQL dialect to process privilege
metadata |
-| SQLServerPrivilegeHandler | Use SQLServer dialect to process privilege
metadata |
-| OraclePrivilegeHandler | Use Oracle dialect to process privilege
metadata |
-| MySQLPrivilegeHandler | Use MySQL dialect to process privilege metadata
|
-
-### DynamicDataSourceStrategy
-
-| *Implementation Class* | *Description*
|
-| ------------------------------------------ | -------------------------------
|
-| DatabaseDiscoveryDynamicDataSourceStrategy | Use database discovery to
dynamic fetch data source |
+## SQLRouter
+
+### Fully-qualified class name
+
+[`org.apache.shardingsphere.infra.route.SQLRouter`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-infra/shardingsphere-infra-route/src/main/java/org/apache/shardingsphere/infra/route/SQLRouter.java)
+
+### Definition
+
+Used to process routing results
+
+### Implementation classes
+
+| *Configuration type* | *Description* |
*Fully-qualified class name* |
+| -------------------- | ----------------------------------------- |
---------------------------- |
+| ReadwriteSplittingRule | Used to process read-write splitting routing
results |
[`org.apache.shardingsphere.readwritesplitting.route.ReadwriteSplittingSQLRouter`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/route/ReadwriteSplittingSQLRouter.java)
|
+| DatabaseDiscoveryRule | Used to process database discovery routing
results |
[`org.apache.shardingsphere.dbdiscovery.route.DatabaseDiscoverySQLRouter`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/route/DatabaseDiscoverySQLRouter.java)
|
+| SingleTableRule | Used to process single-table routing
results |
[`org.apache.shardingsphere.singletable.route.SingleTableSQLRouter`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/main/java/org/apache/shardingsphere/singletable/route/SingleTableSQLRouter.java)
|
+| ShardingRule | Used to process sharding routing results
|
[`org.apache.shardingsphere.sharding.route.engine.ShardingSQLRouter`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/ShardingSQLRouter.java)
|
+| ShadowRule | Used to process shadow database routing
results |
[`org.apache.shardingsphere.shadow.route.ShadowSQLRouter`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-core/src/main/java/org/apache/shardingsphere/shadow/route/ShadowSQLRouter.java)
|
+
+## SQLRewriteContextDecorator
+
+### Fully-qualified class name
+
+[`org.apache.shardingsphere.encrypt.rewrite.context.EncryptSQLRewriteContextDecorator`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-infra/shardingsphere-infra-rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/context/SQLRewriteContextDecorator.java)
+
+### Definition
+
+Used to handle SQL rewrite results
+
+### Implementation classes
+
+| *Configuration type* | *Description* |
*Fully-qualified class name* |
+| -------------------- | ----------------------------------------- |
---------------------------- |
+| ShardingRule | Used to process sharding SQL rewrite results |
[`org.apache.shardingsphere.sharding.rewrite.context.ShardingSQLRewriteContextDecorator`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/rewrite/context/ShardingSQLRewriteContextDecorator.java)
|
+| EncryptRule | Used to process encryption SQL rewrite results |
[`org.apache.shardingsphere.encrypt.rewrite.context.EncryptSQLRewriteContextDecorator`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/context/EncryptSQLRewriteContextDecorator.java)
|
+
+## SQLExecutionHook
+
+### Fully-qualified class name
+
+[`org.apache.shardingsphere.infra.executor.sql.hook.SQLExecutionHook`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-infra/shardingsphere-infra-executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/hook/SQLExecutionHook.java)
+
+### Definition
+
+SQL execution process listener
+
+### Implementation classes
+
+| *Configuration type* | *Description* |
*Fully-qualified class name* |
+| -------------------- | ----------------------------------------- |
---------------------------- |
+| TransactionalSQLExecutionHook | Transaction hook of SQL execution |
[`org.apache.shardingsphere.transaction.base.seata.at.TransactionalSQLExecutionHook`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-kernel/shardingsphere-transaction/shardingsphere-transaction-type/shardingsphere-transaction-base/shardingsphere-transaction-base-seata-at/src/main/java/org/apache/shardingsphere/transaction/base/seata/at/TransactionalSQLExecutionHook.java)
|
+
+## ResultProcessEngine
+
+### Fully-qualified class name
+
+[`org.apache.shardingsphere.infra.merge.engine.ResultProcessEngine`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-infra/shardingsphere-infra-merge/src/main/java/org/apache/shardingsphere/infra/merge/engine/ResultProcessEngine.java)
+
+### Definition
+
+Used to process result sets
+
+### Implementation classes
+
+| *Configuration type* | *Description* |
*Fully-qualified class name* |
+| -------------------- | ----------------------------------------- |
---------------------------- |
+| ShardingRule | Used to handle sharding result set merge |
[`org.apache.shardingsphere.sharding.merge.ShardingResultMergerEngine`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/merge/ShardingResultMergerEngine.java)
|
+| EncryptRule | Used to handle encrypted result set overrides |
[`org.apache.shardingsphere.encrypt.merge.EncryptResultDecoratorEngine`](https://github.com/apache/shardingsphere/blob/master/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/merge/EncryptResultDecoratorEngine.java)
|