You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by pa...@apache.org on 2022/05/20 04:12:27 UTC
[shardingsphere] branch master updated: Switch ShardingSphereDatabaseMetaData and ShardingSphereDatabase (#17817)
This is an automated email from the ASF dual-hosted git repository.
panjuan 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 283e4075c31 Switch ShardingSphereDatabaseMetaData and ShardingSphereDatabase (#17817)
283e4075c31 is described below
commit 283e4075c31f59efa34685a24250af331269df59
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Fri May 20 12:12:21 2022 +0800
Switch ShardingSphereDatabaseMetaData and ShardingSphereDatabase (#17817)
* Switch ShardingSphereDatabaseMetaData and ShardingSphereDatabase
* Fix the sharding table skip OnDuplicatedKeyUpdate (#17756)
* Fix the sharding exception on OnDuplicatedKey
* Update TableExtractor.java
* align on review
* Update TableExtractorTest.java
* Update TableExtractorTest.java
* Update insert_column.xml
* Update TableExtractor.java
* Switch ShardingSphereDatabaseMetaData and ShardingSphereDatabase
* Switch ShardingSphereDatabaseMetaData and ShardingSphereDatabase
* Switch ShardingSphereDatabaseMetaData and ShardingSphereDatabase
Co-authored-by: cheese8 <yi...@163.com>
---
.../collector/MetaDataInfoCollector.java | 10 +-
.../route/DatabaseDiscoverySQLRouter.java | 6 +-
.../route/DatabaseDiscoverySQLRouterTest.java | 34 ++---
.../DatabaseDiscoveryHeartbeatQueryResultSet.java | 6 +-
.../query/DatabaseDiscoveryRuleQueryResultSet.java | 8 +-
.../query/DatabaseDiscoveryTypeQueryResultSet.java | 6 +-
...DatabaseDiscoveryHeartbeatStatementUpdater.java | 6 +-
...AlterDatabaseDiscoveryRuleStatementUpdater.java | 14 +-
...AlterDatabaseDiscoveryTypeStatementUpdater.java | 12 +-
...DatabaseDiscoveryHeartbeatStatementUpdater.java | 6 +-
...reateDatabaseDiscoveryRuleStatementUpdater.java | 21 ++-
...reateDatabaseDiscoveryTypeStatementUpdater.java | 12 +-
...DatabaseDiscoveryHeartbeatStatementUpdater.java | 12 +-
.../DropDatabaseDiscoveryRuleStatementUpdater.java | 14 +-
.../DropDatabaseDiscoveryTypeStatementUpdater.java | 8 +-
...tabaseDiscoveryHeartbeatQueryResultSetTest.java | 8 +-
...scoveryProviderAlgorithmQueryResultSetTest.java | 8 +-
.../DatabaseDiscoveryRuleQueryResultSetTest.java | 10 +-
...baseDiscoveryHeartbeatStatementUpdaterTest.java | 8 +-
...overyProviderAlgorithmStatementUpdaterTest.java | 12 +-
...rDatabaseDiscoveryRuleStatementUpdaterTest.java | 18 +--
...baseDiscoveryHeartbeatStatementUpdaterTest.java | 8 +-
...overyProviderAlgorithmStatementUpdaterTest.java | 12 +-
...eDatabaseDiscoveryRuleStatementUpdaterTest.java | 16 +-
...baseDiscoveryHeartbeatStatementUpdaterTest.java | 12 +-
...overyProviderAlgorithmStatementUpdaterTest.java | 12 +-
...pDatabaseDiscoveryRuleStatementUpdaterTest.java | 14 +-
.../merge/EncryptResultDecoratorEngine.java | 6 +-
.../merge/dql/EncryptAlgorithmMetaData.java | 8 +-
.../merge/EncryptResultDecoratorEngineTest.java | 10 +-
.../merge/dql/EncryptAlgorithmMetaDataTest.java | 18 +--
.../metadata/EncryptSchemaMetaDataBuilderTest.java | 14 +-
.../handler/query/EncryptRuleQueryResultSet.java | 6 +-
.../update/AlterEncryptRuleStatementUpdater.java | 7 +-
.../update/CreateEncryptRuleStatementUpdater.java | 7 +-
.../update/DropEncryptRuleStatementUpdater.java | 8 +-
.../query/EncryptRuleQueryResultSetTest.java | 8 +-
.../AlterEncryptRuleStatementUpdaterTest.java | 12 +-
.../CreateEncryptRuleStatementUpdaterTest.java | 10 +-
.../DropEncryptRuleStatementUpdaterTest.java | 14 +-
.../route/ReadwriteSplittingSQLRouter.java | 6 +-
.../route/ReadwriteSplittingSQLRouterTest.java | 60 ++++----
.../ReadwriteSplittingRuleQueryResultSet.java | 16 +-
...lterReadwriteSplittingRuleStatementUpdater.java | 19 ++-
...eateReadwriteSplittingRuleStatementUpdater.java | 23 ++-
...DropReadwriteSplittingRuleStatementUpdater.java | 13 +-
.../ReadwriteSplittingRuleQueryResultSetTest.java | 26 ++--
...ReadwriteSplittingRuleStatementUpdaterTest.java | 16 +-
...ReadwriteSplittingRuleStatementUpdaterTest.java | 24 +--
...ReadwriteSplittingRuleStatementUpdaterTest.java | 18 +--
.../shadow/route/ShadowSQLRouter.java | 6 +-
.../shadow/route/ShadowSQLRouterTest.java | 4 +-
.../checker/ShadowRuleStatementChecker.java | 24 +--
.../query/ShadowAlgorithmQueryResultSet.java | 6 +-
.../handler/query/ShadowRuleQueryResultSet.java | 6 +-
.../query/ShadowTableRuleQueryResultSet.java | 6 +-
.../AlterShadowAlgorithmStatementUpdater.java | 10 +-
.../update/AlterShadowRuleStatementUpdater.java | 13 +-
...eateDefaultShadowAlgorithmStatementUpdater.java | 9 +-
.../CreateShadowAlgorithmStatementUpdater.java | 10 +-
.../update/CreateShadowRuleStatementUpdater.java | 13 +-
...DropDefaultShadowAlgorithmStatementUpdater.java | 9 +-
.../DropShadowAlgorithmStatementUpdater.java | 10 +-
.../update/DropShadowRuleStatementUpdater.java | 9 +-
.../query/ShadowAlgorithmQueryResultSetTest.java | 8 +-
.../query/ShadowRuleQueryResultSetTest.java | 8 +-
.../query/ShadowTableRuleQueryResultSetTest.java | 8 +-
.../AlterShadowAlgorithmStatementUpdaterTest.java | 10 +-
.../AlterShadowRuleStatementUpdaterTest.java | 20 +--
...DefaultShadowAlgorithmStatementUpdaterTest.java | 6 +-
.../CreateShadowAlgorithmStatementUpdaterTest.java | 12 +-
.../CreateShadowRuleStatementUpdaterTest.java | 18 +--
...DefaultShadowAlgorithmStatementUpdaterTest.java | 12 +-
.../DropShadowAlgorithmStatementUpdaterTest.java | 10 +-
.../update/DropShadowRuleStatementUpdaterTest.java | 12 +-
...hardingRuleAlteredJobConfigurationPreparer.java | 16 +-
.../merge/dal/ShardingDALResultMerger.java | 8 +-
.../merge/dql/ShardingDQLResultMerger.java | 12 +-
.../sharding/route/engine/ShardingSQLRouter.java | 19 ++-
.../engine/ShardingConditionEngineFactory.java | 10 +-
.../impl/InsertClauseShardingConditionEngine.java | 6 +-
.../impl/WhereClauseShardingConditionEngine.java | 8 +-
.../engine/type/ShardingRouteEngineFactory.java | 42 +++---
.../ShardingTableBroadcastRoutingEngine.java | 13 +-
.../validator/ShardingStatementValidator.java | 12 +-
.../impl/ShardingAlterIndexStatementValidator.java | 12 +-
.../impl/ShardingAlterTableStatementValidator.java | 6 +-
.../impl/ShardingAlterViewStatementValidator.java | 6 +-
.../ShardingCreateFunctionStatementValidator.java | 10 +-
.../ShardingCreateIndexStatementValidator.java | 10 +-
.../ShardingCreateProcedureStatementValidator.java | 10 +-
.../ShardingCreateTableStatementValidator.java | 12 +-
.../impl/ShardingCreateViewStatementValidator.java | 6 +-
.../impl/ShardingDropIndexStatementValidator.java | 15 +-
.../impl/ShardingDropTableStatementValidator.java | 10 +-
.../impl/ShardingPrepareStatementValidator.java | 6 +-
.../ShardingRenameTableStatementValidator.java | 6 +-
.../dml/impl/ShardingCopyStatementValidator.java | 6 +-
.../dml/impl/ShardingDeleteStatementValidator.java | 6 +-
.../dml/impl/ShardingInsertStatementValidator.java | 6 +-
.../dml/impl/ShardingSelectStatementValidator.java | 6 +-
.../dml/impl/ShardingUpdateStatementValidator.java | 6 +-
.../shardingsphere/sharding/rule/ShardingRule.java | 10 +-
.../merge/ShardingResultMergerEngineTest.java | 16 +-
.../merge/dal/ShardingDALResultMergerTest.java | 44 +++---
.../merge/dql/ShardingDQLResultMergerTest.java | 168 ++++++++++-----------
.../dql/groupby/GroupByMemoryMergedResultTest.java | 30 ++--
.../dql/groupby/GroupByRowComparatorTest.java | 38 ++---
.../dql/groupby/GroupByStreamMergedResultTest.java | 16 +-
.../iterator/IteratorStreamMergedResultTest.java | 42 +++---
.../dql/orderby/OrderByStreamMergedResultTest.java | 14 +-
.../merge/dql/orderby/OrderByValueTest.java | 16 +-
.../pagination/LimitDecoratorMergedResultTest.java | 30 ++--
.../RowNumberDecoratorMergedResultTest.java | 35 +++--
.../TopAndRowNumberDecoratorMergedResultTest.java | 42 +++---
.../ShardingSchemaMetaDataBuilderTest.java | 18 +--
.../InsertClauseShardingConditionEngineTest.java | 4 +-
.../engine/ShardingConditionEngineFactoryTest.java | 10 +-
.../type/ShardingRouteEngineFactoryTest.java | 52 +++----
.../ShardingTableBroadcastRoutingEngineTest.java | 22 +--
.../engine/type/standard/AbstractSQLRouteTest.java | 14 +-
.../ShardingAlterIndexStatementValidatorTest.java | 22 +--
.../ShardingAlterTableStatementValidatorTest.java | 16 +-
.../ShardingAlterViewStatementValidatorTest.java | 10 +-
...ardingCreateFunctionStatementValidatorTest.java | 22 +--
.../ShardingCreateIndexStatementValidatorTest.java | 36 ++---
...rdingCreateProcedureStatementValidatorTest.java | 22 +--
.../ShardingCreateTableStatementValidatorTest.java | 24 +--
.../ShardingCreateViewStatementValidatorTest.java | 8 +-
.../ShardingDropIndexStatementValidatorTest.java | 40 ++---
.../ShardingDropTableStatementValidatorTest.java | 16 +-
.../ddl/ShardingPrepareStatementValidatorTest.java | 10 +-
.../ShardingRenameTableStatementValidatorTest.java | 22 +--
.../dml/ShardingDeleteStatementValidatorTest.java | 4 +-
.../dml/ShardingInsertStatementValidatorTest.java | 32 ++--
.../dml/ShardingUpdateStatementValidatorTest.java | 12 +-
.../sharding/rule/ShardingRuleTest.java | 34 ++---
.../handler/query/CheckScalingQueryResultSet.java | 4 +-
.../query/ShardingScalingRulesQueryResultSet.java | 6 +-
.../ShowScalingCheckAlgorithmsQueryResultSet.java | 4 +-
.../query/ShowScalingJobStatusQueryResultSet.java | 4 +-
.../query/ShowScalingListQueryResultSet.java | 4 +-
.../CreateShardingScalingRuleStatementUpdater.java | 8 +-
...DisableShardingScalingRuleStatementUpdater.java | 8 +-
.../DropShardingScalingRuleStatementUpdater.java | 8 +-
.../EnableShardingScalingRuleStatementUpdater.java | 6 +-
.../checker/ShardingTableRuleStatementChecker.java | 36 ++---
.../DefaultShardingStrategyQueryResultSet.java | 6 +-
.../query/ShardingAlgorithmsQueryResultSet.java | 6 +-
.../ShardingBindingTableRuleQueryResultSet.java | 6 +-
.../ShardingBroadcastTableRuleQueryResultSet.java | 6 +-
.../query/ShardingKeyGeneratorsQueryResultSet.java | 6 +-
.../query/ShardingTableNodesQueryResultSet.java | 6 +-
.../query/ShardingTableRuleQueryResultSet.java | 6 +-
...rdingTableRulesUsedAlgorithmQueryResultSet.java | 8 +-
...ngTableRulesUsedKeyGeneratorQueryResultSet.java | 8 +-
.../UnusedShardingAlgorithmsQueryResultSet.java | 6 +-
.../UnusedShardingKeyGeneratorsQueryResultSet.java | 6 +-
...terDefaultShardingStrategyStatementUpdater.java | 8 +-
.../AlterShardingAlgorithmStatementUpdater.java | 9 +-
...rShardingBindingTableRulesStatementUpdater.java | 8 +-
...ShardingBroadcastTableRuleStatementUpdater.java | 8 +-
.../AlterShardingKeyGeneratorStatementUpdater.java | 8 +-
.../AlterShardingTableRuleStatementUpdater.java | 10 +-
...ateDefaultShardingStrategyStatementUpdater.java | 8 +-
.../CreateShardingAlgorithmStatementUpdater.java | 6 +-
...teShardingBindingTableRuleStatementUpdater.java | 12 +-
...ShardingBroadcastTableRuleStatementUpdater.java | 8 +-
...CreateShardingKeyGeneratorStatementUpdater.java | 8 +-
.../CreateShardingTableRuleStatementUpdater.java | 6 +-
.../DropDefaultStrategyStatementUpdater.java | 6 +-
.../DropShardingAlgorithmStatementUpdater.java | 8 +-
...opShardingBindingTableRuleStatementUpdater.java | 8 +-
...ShardingBroadcastTableRuleStatementUpdater.java | 12 +-
.../DropShardingKeyGeneratorStatementUpdater.java | 8 +-
.../DropShardingTableRuleStatementUpdater.java | 8 +-
.../ShardingScalingRulesQueryResultSetTest.java | 8 +-
...owScalingCheckAlgorithmsQueryResultSetTest.java | 6 +-
...ateShardingScalingRuleStatementUpdaterTest.java | 20 +--
...ledShardingScalingRuleStatementUpdaterTest.java | 16 +-
...ropShardingScalingRuleStatementUpdaterTest.java | 20 +--
...bleShardingScalingRuleStatementUpdaterTest.java | 12 +-
.../checker/ShardingRuleStatementCheckerTest.java | 40 ++---
.../ShardingAlgorithmsQueryResultSetTest.java | 8 +-
...ShardingBindingTableRuleQueryResultSetTest.java | 8 +-
...ardingBroadcastTableRuleQueryResultSetTest.java | 8 +-
...gDefaultShardingStrategyQueryResultSetTest.java | 12 +-
.../ShardingKeyGeneratorsQueryResultSetTest.java | 8 +-
.../ShardingTableNodesQueryResultSetTest.java | 8 +-
.../query/ShardingTableRuleQueryResultSetTest.java | 8 +-
...gTableRulesUsedAlgorithmQueryResultSetTest.java | 12 +-
...bleRulesUsedKeyGeneratorQueryResultSetTest.java | 10 +-
...UnusedShardingAlgorithmsQueryResultSetTest.java | 8 +-
...sedShardingKeyGeneratorsQueryResultSetTest.java | 8 +-
...efaultShardingStrategyStatementUpdaterTest.java | 18 +--
...AlterShardingAlgorithmStatementUpdaterTest.java | 16 +-
...rdingBindingTableRulesStatementUpdaterTest.java | 10 +-
...dingBroadcastTableRuleStatementUpdaterTest.java | 4 +-
...erShardingKeyGeneratorStatementUpdaterTest.java | 12 +-
...AlterShardingTableRuleStatementUpdaterTest.java | 16 +-
...efaultShardingStrategyStatementUpdaterTest.java | 18 +--
...reateShardingAlgorithmStatementUpdaterTest.java | 18 +--
...ardingBindingTableRuleStatementUpdaterTest.java | 10 +-
...teShardingKeyGeneratorStatementUpdaterTest.java | 19 ++-
...reateShardingTableRuleStatementUpdaterTest.java | 12 +-
...efaultShardingStrategyStatementUpdaterTest.java | 16 +-
.../DropShardingAlgorithmStatementUpdaterTest.java | 16 +-
...ardingBindingTableRuleStatementUpdaterTest.java | 22 +--
...dingBroadcastTableRuleStatementUpdaterTest.java | 14 +-
...opShardingKeyGeneratorStatementUpdaterTest.java | 12 +-
.../DropShardingTableRuleStatementUpdaterTest.java | 14 +-
.../infra/binder/SQLStatementContextFactory.java | 24 +--
.../select/projection/engine/ProjectionEngine.java | 4 +-
.../engine/ProjectionsContextEngine.java | 4 +-
.../statement/dml/InsertStatementContext.java | 29 ++--
.../statement/dml/SelectStatementContext.java | 26 ++--
.../select/pagination/PaginationContextTest.java | 10 +-
.../projection/engine/ProjectionEngineTest.java | 7 +-
.../engine/ProjectionsContextEngineTest.java | 16 +-
.../statement/SQLStatementContextFactoryTest.java | 12 +-
.../statement/impl/InsertStatementContextTest.java | 8 +-
.../statement/impl/SelectStatementContextTest.java | 47 +++---
.../infra/distsql/query/DistSQLResultSet.java | 6 +-
.../distsql/update/RuleDefinitionUpdater.java | 6 +-
...seMetaData.java => ShardingSphereDatabase.java} | 36 ++---
...se.java => ShardingSphereDatabaseMetaData.java} | 9 +-
.../metadata/database/loader/DatabaseLoader.java | 14 +-
.../schema/loader/common/DataTypeLoader.java | 6 +-
.../metadata/schema/util/IndexMetaDataUtil.java | 15 +-
.../rule/builder/global/GlobalRuleBuilder.java | 6 +-
.../rule/builder/global/GlobalRulesBuilder.java | 8 +-
...taTest.java => ShardingSphereDatabaseTest.java} | 10 +-
.../schema/util/IndexMetaDataUtilTest.java | 14 +-
.../builder/fixture/FixtureGlobalRuleBuilder.java | 4 +-
.../builder/global/GlobalRulesBuilderTest.java | 4 +-
.../infra/context/kernel/KernelProcessor.java | 25 ++-
.../context/refresher/MetaDataRefreshEngine.java | 8 +-
.../infra/context/refresher/MetaDataRefresher.java | 8 +-
.../type/AlterIndexStatementSchemaRefresher.java | 10 +-
.../type/AlterSchemaStatementSchemaRefresher.java | 40 ++---
.../type/AlterTableStatementSchemaRefresher.java | 46 +++---
.../type/AlterViewStatementSchemaRefresher.java | 46 +++---
.../type/CreateIndexStatementSchemaRefresher.java | 10 +-
.../type/CreateSchemaStatementSchemaRefresher.java | 12 +-
.../type/CreateTableStatementSchemaRefresher.java | 24 +--
.../type/CreateViewStatementSchemaRefresher.java | 24 +--
.../type/DropIndexStatementSchemaRefresher.java | 14 +-
.../type/DropSchemaStatementSchemaRefresher.java | 14 +-
.../type/DropTableStatementSchemaRefresher.java | 14 +-
.../type/DropViewStatementSchemaRefresher.java | 10 +-
.../type/RenameTableStatementSchemaRefresher.java | 42 +++---
.../infra/context/kernel/KernelProcessorTest.java | 10 +-
.../refresher/MetaDataRefreshEngineTest.java | 10 +-
.../type/DummyDropDatabaseMetaDataRefresher.java | 4 +-
.../RenameTableStatementSchemaRefresherTest.java | 10 +-
.../infra/executor/check/SQLCheckEngine.java | 8 +-
.../infra/executor/check/SQLChecker.java | 6 +-
.../sql/context/ExecutionContextBuilder.java | 12 +-
.../execute/engine/raw/RawSQLRuntimeContext.java | 4 +-
.../executor/check/fixture/SQLCheckerFixture.java | 4 +-
.../sql/context/ExecutionContextBuilderTest.java | 24 +--
.../federation/executor/FederationContext.java | 4 +-
.../table/FilterableTableScanExecutor.java | 18 +--
.../optimizer/context/OptimizerContextFactory.java | 10 +-
.../parser/OptimizerParserContextFactory.java | 8 +-
.../optimizer/metadata/FederationMetaData.java | 10 +-
.../optimizer/ShardingSphereOptimizerTest.java | 10 +-
.../shardingsphere/infra/merge/MergeEngine.java | 14 +-
.../engine/decorator/ResultDecoratorEngine.java | 6 +-
.../infra/merge/engine/merger/ResultMerger.java | 6 +-
.../merger/impl/TransparentResultMerger.java | 4 +-
.../infra/merge/MergeEngineTest.java | 12 +-
.../merger/impl/TransparentResultMergerTest.java | 4 +-
.../decorator/ResultDecoratorEngineFixture.java | 4 +-
.../merge/fixture/merger/ResultMergerFixture.java | 4 +-
.../infra/rewrite/SQLRewriteEntry.java | 18 +--
.../infra/rewrite/SQLRewriteEntryTest.java | 16 +-
.../shardingsphere/infra/route/SQLRouter.java | 10 +-
.../infra/route/engine/SQLRouteEngine.java | 8 +-
.../infra/route/engine/SQLRouteExecutor.java | 6 +-
.../route/engine/impl/AllSQLRouteExecutor.java | 6 +-
.../route/engine/impl/PartialSQLRouteExecutor.java | 14 +-
.../route/engine/AllSQLRouteExecutorTest.java | 8 +-
.../route/engine/PartialSQLRouteExecutorTest.java | 14 +-
.../infra/route/engine/SQLRouteEngineTest.java | 17 +--
.../fixture/router/SQLRouterFailureFixture.java | 6 +-
.../route/fixture/router/SQLRouterFixture.java | 6 +-
.../jdbc/adapter/AbstractResultSetAdapter.java | 4 +-
.../resultset/ShardingSphereResultSetMetaData.java | 6 +-
.../statement/ShardingSpherePreparedStatement.java | 14 +-
.../core/statement/ShardingSphereStatement.java | 14 +-
.../datasource/ShardingSphereDataSourceTest.java | 4 +-
.../ShardingSphereDatabaseMetaDataTest.java | 10 +-
.../driver/state/DriverStateContextTest.java | 16 +-
.../authority/spi/AuthorityProviderAlgorithm.java | 6 +-
.../authority/checker/AuthorityChecker.java | 4 +-
.../natived/NativeAuthorityProviderAlgorithm.java | 6 +-
.../natived/builder/StoragePrivilegeBuilder.java | 23 ++-
...SchemaPermittedPrivilegesProviderAlgorithm.java | 4 +-
.../AllPermittedPrivilegesProviderAlgorithm.java | 4 +-
.../authority/rule/AuthorityRule.java | 12 +-
.../rule/builder/AuthorityRuleBuilder.java | 6 +-
.../authority/checker/AuthorityCheckerTest.java | 16 +-
.../NativeAuthorityProviderAlgorithmTest.java | 10 +-
.../builder/StoragePrivilegeBuilderTest.java | 14 +-
.../check/consistency/DataConsistencyChecker.java | 12 +-
.../metadata/generator/PipelineDDLGenerator.java | 120 +++++++--------
.../job/environment/ScalingEnvironmentManager.java | 6 +-
.../parser/rule/builder/SQLParserRuleBuilder.java | 4 +-
.../singletable/route/SingleTableSQLRouter.java | 33 ++--
.../validator/SingleTableMetadataValidator.java | 6 +-
.../SingleTableDropSchemaMetadataValidator.java | 6 +-
.../route/SingleTableSQLRouterTest.java | 28 ++--
.../rule/builder/SQLTranslatorRuleBuilder.java | 4 +-
.../traffic/rule/builder/TrafficRuleBuilder.java | 4 +-
.../traffic/rule/TrafficRuleTest.java | 4 +-
.../context/TransactionContextsBuilder.java | 10 +-
.../rule/builder/TransactionRuleBuilder.java | 4 +-
.../context/TransactionContextsBuilderTest.java | 8 +-
.../mode/manager/ContextManager.java | 165 ++++++++++----------
.../mode/metadata/MetaDataContexts.java | 10 +-
.../mode/metadata/MetaDataContextsBuilder.java | 28 ++--
.../mode/manager/ContextManagerTest.java | 48 +++---
.../mode/metadata/MetaDataContextsBuilderTest.java | 18 +--
.../mode/metadata/MetaDataContextsTest.java | 8 +-
.../cluster/ClusterContextManagerBuilder.java | 10 +-
.../ClusterContextManagerCoordinator.java | 6 +-
.../ClusterContextManagerCoordinatorTest.java | 46 +++---
.../memory/MemoryContextManagerBuilder.java | 4 +-
.../StandaloneContextManagerBuilder.java | 4 +-
.../StandaloneContextManagerBuilderTextTest.java | 2 +-
.../communication/DatabaseCommunicationEngine.java | 33 ++--
.../DatabaseCommunicationEngineFactory.java | 18 +--
.../backend/communication/ProxySQLExecutor.java | 2 +-
.../communication/ReactiveProxySQLExecutor.java | 2 +-
.../jdbc/JDBCDatabaseCommunicationEngine.java | 18 +--
.../vertx/VertxDatabaseCommunicationEngine.java | 8 +-
.../proxy/backend/context/ProxyContext.java | 14 +-
.../response/header/query/QueryHeaderBuilder.java | 6 +-
.../header/query/QueryHeaderBuilderEngine.java | 14 +-
.../header/query/impl/MySQLQueryHeaderBuilder.java | 8 +-
.../query/impl/OpenGaussQueryHeaderBuilder.java | 6 +-
.../query/impl/PostgreSQLQueryHeaderBuilder.java | 4 +-
.../text/TextProtocolBackendHandlerFactory.java | 4 +-
.../admin/DatabaseAdminQueryBackendHandler.java | 16 +-
.../executor/AbstractDatabaseMetadataExecutor.java | 2 +-
.../admin/mysql/MySQLAdminExecutorCreator.java | 2 +-
.../mysql/executor/NoResourceShowExecutor.java | 4 +-
.../admin/mysql/executor/ShowTablesExecutor.java | 4 +-
.../executor/UnicastResourceShowExecutor.java | 6 +-
.../postgresql/executor/SelectTableExecutor.java | 8 +-
.../data/impl/BroadcastDatabaseBackendHandler.java | 2 +-
.../impl/SchemaAssignedDatabaseBackendHandler.java | 4 +-
.../data/impl/UnicastDatabaseBackendHandler.java | 6 +-
.../text/database/DropDatabaseBackendHandler.java | 8 +-
.../ral/advanced/PreviewDistSQLBackendHandler.java | 12 +-
...aseDiscoveryRuleConfigurationImportChecker.java | 16 +-
...iteSplittingRuleConfigurationImportChecker.java | 22 +--
.../ShardingRuleConfigurationImportChecker.java | 22 +--
.../executor/ShowShardingHintStatusExecutor.java | 8 +-
.../queryable/CountInstanceRulesHandler.java | 16 +-
.../ExportDatabaseConfigurationHandler.java | 14 +-
...ShowReadwriteSplittingReadResourcesHandler.java | 14 +-
.../common/queryable/ShowTableMetadataHandler.java | 2 +-
.../ImportDatabaseConfigurationHandler.java | 16 +-
.../query/QueryableScalingRALBackendHandler.java | 2 +-
.../rdl/resource/AddResourceBackendHandler.java | 2 +-
.../rdl/resource/AlterResourceBackendHandler.java | 4 +-
.../rdl/resource/DropResourceBackendHandler.java | 4 +-
...lterDefaultSingleTableRuleStatementUpdater.java | 15 +-
...eateDefaultSingleTableRuleStatementUpdater.java | 13 +-
...DropDefaultSingleTableRuleStatementUpdater.java | 13 +-
.../rdl/rule/RuleDefinitionBackendHandler.java | 56 +++----
.../text/distsql/rql/RQLBackendHandler.java | 2 +-
.../rql/resource/DataSourceQueryResultSet.java | 10 +-
.../resource/UnusedDataSourceQueryResultSet.java | 12 +-
.../rql/rule/RulesUsedResourceQueryResultSet.java | 12 +-
.../rql/rule/SchemaRulesCountResultSet.java | 14 +-
.../rql/rule/SingleTableQueryResultSet.java | 6 +-
.../rql/rule/SingleTableRulesQueryResultSet.java | 6 +-
.../DatabaseCommunicationEngineFactoryTest.java | 14 +-
.../communication/ProxySQLExecutorTest.java | 14 +-
.../jdbc/JDBCDatabaseCommunicationEngineTest.java | 24 +--
.../jdbc/connection/JDBCBackendConnectionTest.java | 14 +-
.../jdbc/datasource/JDBCBackendDataSourceTest.java | 10 +-
.../proxy/backend/context/ProxyContextTest.java | 38 ++---
.../query/impl/MySQLQueryHeaderBuilderTest.java | 26 ++--
.../TextProtocolBackendHandlerFactoryTest.java | 16 +-
.../DatabaseAdminQueryBackendHandlerTest.java | 10 +-
.../DatabaseOperateBackendHandlerFactoryTest.java | 8 +-
.../executor/ShowCreateDatabaseExecutorTest.java | 16 +-
.../mysql/executor/ShowDatabasesExecutorTest.java | 16 +-
.../executor/ShowFunctionStatusExecutorTest.java | 18 +--
.../executor/ShowProcedureStatusExecutorTest.java | 18 +--
.../mysql/executor/ShowTablesExecutorTest.java | 18 +--
.../mysql/executor/UseDatabaseExecutorTest.java | 20 +--
.../executor/fixture/AuthorityCheckerFixture.java | 4 +-
.../information/SelectInformationExecutorTest.java | 36 ++---
.../executor/SelectDatabaseExecutorTest.java | 30 ++--
.../executor/SelectTableExecutorTest.java | 20 +--
.../impl/BroadcastDatabaseBackendHandlerTest.java | 16 +-
.../SchemaAssignedDatabaseBackendHandlerTest.java | 18 +--
.../impl/UnicastDatabaseBackendHandlerTest.java | 16 +-
.../distsql/DistSQLBackendHandlerFactoryTest.java | 28 ++--
.../FixtureRuleDefinitionCreateUpdater.java | 4 +-
.../common/queryable/CountInstanceRulesTest.java | 18 +--
.../ExportDatabaseConfigurationHandlerTest.java | 12 +-
.../queryable/ShowTableMetadataHandlerTest.java | 8 +-
.../ImportDatabaseConfigurationHandlerTest.java | 10 +-
.../updatable/SetVariableBackendHandlerTest.java | 18 +--
.../QueryableScalingFixtureQueryResultSet.java | 4 +-
.../resource/AddResourceBackendHandlerTest.java | 12 +-
.../resource/AlterResourceBackendHandlerTest.java | 16 +-
.../resource/DropResourceBackendHandlerTest.java | 10 +-
.../AlterDefaultSingleTableRuleUpdaterTest.java | 14 +-
.../CreateDefaultSingleTableRuleUpdaterTest.java | 12 +-
.../DropDefaultSingleTableRuleUpdaterTest.java | 16 +-
.../distsql/rql/DataSourceQueryResultSetTest.java | 8 +-
.../text/distsql/rql/RQLBackendHandlerTest.java | 8 +-
.../rql/RulesUsedResourceQueryResultSetTest.java | 18 +--
.../distsql/rql/SchemaRulesCountResultSetTest.java | 12 +-
.../distsql/rql/SingleTableQueryResultSetTest.java | 14 +-
.../rql/SingleTableRulesQueryResultSetTest.java | 8 +-
.../rql/UnusedDataSourceQueryResultSetTest.java | 10 +-
.../protocol/FrontDatabaseProtocolTypeFactory.java | 8 +-
.../FrontDatabaseProtocolTypeFactoryTest.java | 16 +-
.../execute/MySQLComStmtExecuteExecutor.java | 4 +-
.../prepare/MySQLComStmtPrepareExecutor.java | 6 +-
.../fieldlist/MySQLComFieldListPacketExecutor.java | 2 +-
.../text/query/MySQLMultiStatementsHandler.java | 4 +-
.../frontend/mysql/MySQLFrontendEngineTest.java | 14 +-
.../MySQLAuthenticationEngineTest.java | 4 +-
.../MySQLAuthenticationHandlerTest.java | 14 +-
.../command/MySQLCommandExecutorFactoryTest.java | 10 +-
.../execute/MySQLComStmtExecuteExecutorTest.java | 10 +-
.../OpenGaussAuthenticationHandlerTest.java | 18 +--
.../command/query/extended/JDBCPortal.java | 4 +-
.../PostgreSQLBatchedStatementsExecutor.java | 4 +-
.../describe/PostgreSQLComDescribeExecutor.java | 14 +-
.../PostgreSQLAuthenticationHandlerTest.java | 18 +--
.../PostgreSQLComDescribeExecutorTest.java | 2 +-
.../ReactiveMySQLComStmtExecuteExecutor.java | 4 +-
.../ReactiveMySQLComFieldListPacketExecutor.java | 2 +-
.../pipeline/core/util/PipelineContextUtil.java | 4 +-
.../AbstractSQLRewriterParameterizedTest.java | 18 +--
445 files changed, 3018 insertions(+), 3063 deletions(-)
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/MetaDataInfoCollector.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/MetaDataInfoCollector.java
index 55d59f1b18c..6bdf5c187ce 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/MetaDataInfoCollector.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/MetaDataInfoCollector.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.agent.metrics.api.constant.MetricIds;
import org.apache.shardingsphere.agent.metrics.api.util.MetricsUtil;
import org.apache.shardingsphere.agent.metrics.prometheus.wrapper.PrometheusWrapperFactory;
import org.apache.shardingsphere.infra.datasource.props.DataSourcePropertiesCreator;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
@@ -65,21 +65,21 @@ public final class MetaDataInfoCollector extends Collector {
private void collectProxy(final GaugeMetricFamily metricFamily) {
MetaDataContexts metaDataContexts = ProxyContext.getInstance().getContextManager().getMetaDataContexts();
- metricFamily.addMetric(Collections.singletonList(LOGIC_DB_COUNT), metaDataContexts.getDatabaseMetaDataMap().size());
+ metricFamily.addMetric(Collections.singletonList(LOGIC_DB_COUNT), metaDataContexts.getDatabaseMap().size());
metricFamily.addMetric(Collections.singletonList(ACTUAL_DB_COUNT), getDatabaseNames(metaDataContexts).size());
}
private Collection<String> getDatabaseNames(final MetaDataContexts metaDataContexts) {
Collection<String> result = new HashSet<>();
- for (ShardingSphereDatabaseMetaData each : metaDataContexts.getDatabaseMetaDataMap().values()) {
+ for (ShardingSphereDatabase each : metaDataContexts.getDatabaseMap().values()) {
result.addAll(getDatabaseNames(each));
}
return result;
}
- private Collection<String> getDatabaseNames(final ShardingSphereDatabaseMetaData databaseMetaData) {
+ private Collection<String> getDatabaseNames(final ShardingSphereDatabase database) {
Collection<String> result = new HashSet<>();
- for (DataSource each : databaseMetaData.getResource().getDataSources().values()) {
+ for (DataSource each : database.getResource().getDataSources().values()) {
getDatabaseName(each).ifPresent(result::add);
}
return result;
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/route/DatabaseDiscoverySQLRouter.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/route/DatabaseDiscoverySQLRouter.java
index 4b2dcd29f45..fd44434839f 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/route/DatabaseDiscoverySQLRouter.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/route/DatabaseDiscoverySQLRouter.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.dbdiscovery.rule.DatabaseDiscoveryRule;
import org.apache.shardingsphere.infra.binder.LogicSQL;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.SQLRouter;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
@@ -41,7 +41,7 @@ import java.util.Optional;
public final class DatabaseDiscoverySQLRouter implements SQLRouter<DatabaseDiscoveryRule> {
@Override
- public RouteContext createRouteContext(final LogicSQL logicSQL, final ShardingSphereDatabaseMetaData databaseMetaData, final DatabaseDiscoveryRule rule, final ConfigurationProperties props) {
+ public RouteContext createRouteContext(final LogicSQL logicSQL, final ShardingSphereDatabase database, final DatabaseDiscoveryRule rule, final ConfigurationProperties props) {
RouteContext result = new RouteContext();
String dataSourceName = new DatabaseDiscoveryDataSourceRouter(rule.getSingleDataSourceRule()).route();
result.getRouteUnits().add(new RouteUnit(new RouteMapper(DefaultDatabase.LOGIC_NAME, dataSourceName), Collections.emptyList()));
@@ -50,7 +50,7 @@ public final class DatabaseDiscoverySQLRouter implements SQLRouter<DatabaseDisco
@Override
public void decorateRouteContext(final RouteContext routeContext,
- final LogicSQL logicSQL, final ShardingSphereDatabaseMetaData databaseMetaData, final DatabaseDiscoveryRule rule, final ConfigurationProperties props) {
+ final LogicSQL logicSQL, final ShardingSphereDatabase database, final DatabaseDiscoveryRule rule, final ConfigurationProperties props) {
Collection<RouteUnit> toBeRemoved = new LinkedList<>();
Collection<RouteUnit> toBeAdded = new LinkedList<>();
for (RouteUnit each : routeContext.getRouteUnits()) {
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/test/java/org/apache/shardingsphere/dbdiscovery/route/DatabaseDiscoverySQLRouterTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/test/java/org/apache/shardingsphere/dbdiscovery/route/DatabaseDiscoverySQLRouterTest.java
index 929d7102ca9..dbc62531315 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/test/java/org/apache/shardingsphere/dbdiscovery/route/DatabaseDiscoverySQLRouterTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/test/java/org/apache/shardingsphere/dbdiscovery/route/DatabaseDiscoverySQLRouterTest.java
@@ -27,8 +27,8 @@ import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmC
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
-import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabaseMetaData;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
import org.apache.shardingsphere.infra.route.SQLRouterFactory;
@@ -83,9 +83,9 @@ public final class DatabaseDiscoverySQLRouterTest {
@Test
public void assertCreateRouteContextToPrimaryWithoutRouteUnits() {
LogicSQL logicSQL = new LogicSQL(mock(SQLStatementContext.class), "", Collections.emptyList());
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS),
- new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule)), new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- RouteContext actual = sqlRouter.createRouteContext(logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS),
+ new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule)), new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ RouteContext actual = sqlRouter.createRouteContext(logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(PRIMARY_DATA_SOURCE));
}
@@ -94,9 +94,9 @@ public final class DatabaseDiscoverySQLRouterTest {
public void assertDecorateRouteContextToPrimaryDataSource() {
RouteContext actual = mockRouteContext();
LogicSQL logicSQL = new LogicSQL(mock(SQLStatementContext.class), "", Collections.emptyList());
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS),
- new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule)), new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- sqlRouter.decorateRouteContext(actual, logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS),
+ new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule)), new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ sqlRouter.decorateRouteContext(actual, logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(NONE_DB_DISCOVERY_DATA_SOURCE_NAME));
assertThat(routedDataSourceNames.next(), is(PRIMARY_DATA_SOURCE));
@@ -105,9 +105,9 @@ public final class DatabaseDiscoverySQLRouterTest {
@Test
public void assertCreateRouteContextToPrimaryDataSourceWithLock() {
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS),
- new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule)), new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- RouteContext actual = sqlRouter.createRouteContext(logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS),
+ new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule)), new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ RouteContext actual = sqlRouter.createRouteContext(logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(PRIMARY_DATA_SOURCE));
}
@@ -116,9 +116,9 @@ public final class DatabaseDiscoverySQLRouterTest {
public void assertDecorateRouteContextToPrimaryDataSourceWithLock() {
RouteContext actual = mockRouteContext();
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS),
- new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule)), new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- sqlRouter.decorateRouteContext(actual, logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS),
+ new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule)), new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ sqlRouter.decorateRouteContext(actual, logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(NONE_DB_DISCOVERY_DATA_SOURCE_NAME));
assertThat(routedDataSourceNames.next(), is(PRIMARY_DATA_SOURCE));
@@ -127,9 +127,9 @@ public final class DatabaseDiscoverySQLRouterTest {
@Test
public void assertCreateRouteContextToPrimaryDataSource() {
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS),
- new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule)), new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- RouteContext actual = sqlRouter.createRouteContext(logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS),
+ new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule)), new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ RouteContext actual = sqlRouter.createRouteContext(logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(PRIMARY_DATA_SOURCE));
}
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHeartbeatQueryResultSet.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHea [...]
index 5ed25005ee9..6a1931c83b5 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHeartbeatQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHeartbeatQueryResultSet.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.dbdiscovery.api.config.DatabaseDiscoveryRuleCon
import org.apache.shardingsphere.dbdiscovery.api.config.rule.DatabaseDiscoveryHeartBeatConfiguration;
import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.ShowDatabaseDiscoveryHeartbeatsStatement;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
import java.util.Arrays;
@@ -39,8 +39,8 @@ public final class DatabaseDiscoveryHeartbeatQueryResultSet implements DistSQLRe
private Iterator<Entry<String, DatabaseDiscoveryHeartBeatConfiguration>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Collection<DatabaseDiscoveryRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().findRuleConfiguration(DatabaseDiscoveryRuleConfiguration.class);
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Collection<DatabaseDiscoveryRuleConfiguration> ruleConfig = database.getRuleMetaData().findRuleConfiguration(DatabaseDiscoveryRuleConfiguration.class);
data = ruleConfig.stream().map(DatabaseDiscoveryRuleConfiguration::getDiscoveryHeartbeats)
.flatMap(each -> each.entrySet().stream()).collect(Collectors.toMap(Entry::getKey, Entry::getValue)).entrySet().iterator();
}
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryRuleQueryResultSet.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryRuleQuer [...]
index cce43ac52bc..3b2e31cc16f 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryRuleQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryRuleQueryResultSet.java
@@ -25,7 +25,7 @@ import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.ShowDataba
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.constant.ExportableConstants;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.rule.identifier.type.ExportableRule;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -64,13 +64,13 @@ public final class DatabaseDiscoveryRuleQueryResultSet implements DistSQLResultS
@SuppressWarnings("unchecked")
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<DatabaseDiscoveryRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().getConfigurations()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<DatabaseDiscoveryRuleConfiguration> ruleConfig = database.getRuleMetaData().getConfigurations()
.stream().filter(each -> each instanceof DatabaseDiscoveryRuleConfiguration).map(each -> (DatabaseDiscoveryRuleConfiguration) each).findAny();
data = ruleConfig.map(optional -> optional.getDataSources().iterator()).orElseGet(Collections::emptyIterator);
discoveryTypes = ruleConfig.map(DatabaseDiscoveryRuleConfiguration::getDiscoveryTypes).orElseGet(Collections::emptyMap);
discoveryHeartbeats = ruleConfig.map(DatabaseDiscoveryRuleConfiguration::getDiscoveryHeartbeats).orElseGet(Collections::emptyMap);
- Optional<ExportableRule> exportableRule = databaseMetaData.getRuleMetaData().getRules()
+ Optional<ExportableRule> exportableRule = database.getRuleMetaData().getRules()
.stream().filter(each -> each instanceof ExportableRule)
.filter(each -> ((ExportableRule) each).containExportableKey(Collections.singleton(ExportableConstants.EXPORTABLE_KEY_PRIMARY_DATA_SOURCE)))
.map(each -> (ExportableRule) each).findAny();
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryTypeQueryResultSet.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryTypeQuer [...]
index 0dda1dd4ab2..6609c902ca2 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryTypeQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryTypeQueryResultSet.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.dbdiscovery.api.config.DatabaseDiscoveryRuleCon
import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.ShowDatabaseDiscoveryTypesStatement;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
import java.util.Arrays;
@@ -39,8 +39,8 @@ public final class DatabaseDiscoveryTypeQueryResultSet implements DistSQLResultS
private Iterator<Entry<String, ShardingSphereAlgorithmConfiguration>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Collection<DatabaseDiscoveryRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().findRuleConfiguration(DatabaseDiscoveryRuleConfiguration.class);
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Collection<DatabaseDiscoveryRuleConfiguration> ruleConfig = database.getRuleMetaData().findRuleConfiguration(DatabaseDiscoveryRuleConfiguration.class);
data = ruleConfig.stream().map(DatabaseDiscoveryRuleConfiguration::getDiscoveryTypes)
.flatMap(each -> each.entrySet().stream()).collect(Collectors.toMap(Entry::getKey, Entry::getValue)).entrySet().iterator();
}
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryHeartbeatStatementUpdater.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDataba [...]
index f39aa289e2a..af2619b42ff 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryHeartbeatStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryHeartbeatStatementUpdater.java
@@ -25,7 +25,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import java.util.Collection;
import java.util.Map.Entry;
@@ -48,9 +48,9 @@ public final class AlterDatabaseDiscoveryHeartbeatStatementUpdater implements Ru
}
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterDatabaseDiscoveryHeartbeatStatement sqlStatement,
+ public void checkSQLStatement(final ShardingSphereDatabase database, final AlterDatabaseDiscoveryHeartbeatStatement sqlStatement,
final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ String databaseName = database.getName();
checkCurrentConfiguration(databaseName, currentRuleConfig);
checkDuplicateHeartbeat(databaseName, sqlStatement);
checkNotExistHeartbeat(databaseName, sqlStatement, currentRuleConfig);
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDis [...]
index 349c8adc025..b65c462d015 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryRuleStatementUpdater.java
@@ -33,7 +33,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmCo
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import java.util.Collection;
@@ -50,12 +50,12 @@ import java.util.stream.Collectors;
public final class AlterDatabaseDiscoveryRuleStatementUpdater implements RuleDefinitionAlterUpdater<AlterDatabaseDiscoveryRuleStatement, DatabaseDiscoveryRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterDatabaseDiscoveryRuleStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final AlterDatabaseDiscoveryRuleStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkToBeAlteredRules(databaseName, sqlStatement, currentRuleConfig);
- checkToBeAlteredResources(databaseName, sqlStatement, databaseMetaData.getResource());
+ checkToBeAlteredResources(databaseName, sqlStatement, database.getResource());
checkDiscoverTypeAndHeartbeat(sqlStatement, currentRuleConfig);
}
@@ -63,8 +63,8 @@ public final class AlterDatabaseDiscoveryRuleStatementUpdater implements RuleDef
DistSQLException.predictionThrow(null != currentRuleConfig, () -> new RequiredRuleMissedException("database discovery", databaseName));
}
- private void checkToBeAlteredRules(final String databaseName, final AlterDatabaseDiscoveryRuleStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ private void checkToBeAlteredRules(final String databaseName,
+ final AlterDatabaseDiscoveryRuleStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
Collection<String> currentRuleNames = currentRuleConfig.getDataSources().stream().map(DatabaseDiscoveryDataSourceRuleConfiguration::getGroupName).collect(Collectors.toSet());
Collection<String> notExistedRuleNames = getToBeAlteredRuleNames(sqlStatement).stream().filter(each -> !currentRuleNames.contains(each)).collect(Collectors.toList());
DistSQLException.predictionThrow(notExistedRuleNames.isEmpty(), () -> new RequiredRuleMissedException("database discovery", databaseName, notExistedRuleNames));
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryTypeStatementUpdater.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDis [...]
index bc2266dfb28..13246aea142 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryTypeStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryTypeStatementUpdater.java
@@ -28,7 +28,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleExcep
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import java.util.Collection;
import java.util.Map.Entry;
@@ -42,17 +42,17 @@ public final class AlterDatabaseDiscoveryTypeStatementUpdater implements RuleDef
private static final String RULE_TYPE = "database discovery";
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterDatabaseDiscoveryTypeStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final AlterDatabaseDiscoveryTypeStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkDuplicateDiscoveryType(databaseName, sqlStatement);
checkNotExistDiscoveryType(databaseName, sqlStatement, currentRuleConfig);
checkInvalidDiscoverType(sqlStatement);
}
- private void checkNotExistDiscoveryType(final String databaseName, final AlterDatabaseDiscoveryTypeStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ private void checkNotExistDiscoveryType(final String databaseName,
+ final AlterDatabaseDiscoveryTypeStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
Collection<String> existTypes = currentRuleConfig.getDiscoveryTypes().keySet();
Collection<String> notExistTypes = sqlStatement.getProviders().stream().map(DatabaseDiscoveryProviderAlgorithmSegment::getDiscoveryProviderName)
.filter(each -> !existTypes.contains(each)).collect(Collectors.toSet());
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryHeartbeatStatementUpdater.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateData [...]
index f3948affbab..7a8371da453 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryHeartbeatStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryHeartbeatStatementUpdater.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.CreateData
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import java.util.Collection;
import java.util.Map.Entry;
@@ -47,9 +47,9 @@ public final class CreateDatabaseDiscoveryHeartbeatStatementUpdater implements R
}
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateDatabaseDiscoveryHeartbeatStatement sqlStatement,
+ public void checkSQLStatement(final ShardingSphereDatabase database, final CreateDatabaseDiscoveryHeartbeatStatement sqlStatement,
final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ String databaseName = database.getName();
checkDuplicateHeartbeat(databaseName, sqlStatement, currentRuleConfig);
}
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseD [...]
index 6a91d05ec26..f314303372b 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryRuleStatementUpdater.java
@@ -31,7 +31,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleExcep
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import java.util.Collection;
@@ -50,16 +50,16 @@ public final class CreateDatabaseDiscoveryRuleStatementUpdater implements RuleDe
private static final String RULE_TYPE = "Database discovery";
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateDatabaseDiscoveryRuleStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final CreateDatabaseDiscoveryRuleStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkDuplicateRuleNames(databaseName, sqlStatement, currentRuleConfig);
- checkResources(databaseName, sqlStatement, databaseMetaData.getResource());
+ checkResources(databaseName, sqlStatement, database.getResource());
checkDiscoverTypeAndHeartbeat(databaseName, sqlStatement, currentRuleConfig);
}
- private void checkDuplicateRuleNames(final String databaseName, final CreateDatabaseDiscoveryRuleStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ private void checkDuplicateRuleNames(final String databaseName,
+ final CreateDatabaseDiscoveryRuleStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
if (null == currentRuleConfig) {
return;
}
@@ -74,8 +74,7 @@ public final class CreateDatabaseDiscoveryRuleStatementUpdater implements RuleDe
.entrySet().stream().filter(entry -> entry.getValue() > 1).map(Entry::getKey).collect(Collectors.toSet());
}
- private void checkResources(final String databaseName, final CreateDatabaseDiscoveryRuleStatement sqlStatement,
- final ShardingSphereResource resource) throws RequiredResourceMissedException {
+ private void checkResources(final String databaseName, final CreateDatabaseDiscoveryRuleStatement sqlStatement, final ShardingSphereResource resource) throws RequiredResourceMissedException {
Collection<String> resources = new LinkedHashSet<>();
sqlStatement.getRules().forEach(each -> resources.addAll(each.getDataSources()));
Collection<String> notExistResources = resource.getNotExistedResources(resources);
@@ -84,8 +83,8 @@ public final class CreateDatabaseDiscoveryRuleStatementUpdater implements RuleDe
}
}
- private void checkDiscoverTypeAndHeartbeat(final String databaseName, final CreateDatabaseDiscoveryRuleStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ private void checkDiscoverTypeAndHeartbeat(final String databaseName,
+ final CreateDatabaseDiscoveryRuleStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
Map<String, List<AbstractDatabaseDiscoverySegment>> segmentMap = sqlStatement.getRules().stream().collect(Collectors.groupingBy(each -> each.getClass().getSimpleName()));
Collection<String> invalidInput = segmentMap.getOrDefault(DatabaseDiscoveryDefinitionSegment.class.getSimpleName(), Collections.emptyList()).stream()
.map(each -> ((DatabaseDiscoveryDefinitionSegment) each).getDiscoveryType().getName()).distinct()
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryTypeStatementUpdater.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseD [...]
index 1186de9619f..62767460545 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryTypeStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryTypeStatementUpdater.java
@@ -27,7 +27,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import java.util.Collection;
import java.util.Map.Entry;
@@ -41,15 +41,15 @@ public final class CreateDatabaseDiscoveryTypeStatementUpdater implements RuleDe
private static final String RULE_TYPE = "database discovery";
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateDatabaseDiscoveryTypeStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final CreateDatabaseDiscoveryTypeStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkDuplicateDiscoveryType(databaseName, sqlStatement, currentRuleConfig);
checkInvalidDiscoverType(sqlStatement);
}
- private void checkDuplicateDiscoveryType(final String databaseName, final CreateDatabaseDiscoveryTypeStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ private void checkDuplicateDiscoveryType(final String databaseName,
+ final CreateDatabaseDiscoveryTypeStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
if (null == currentRuleConfig) {
return;
}
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryHeartbeatStatementUpdater.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabase [...]
index afd7382d453..b0ca0d36819 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryHeartbeatStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryHeartbeatStatementUpdater.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleInUsedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import java.util.Collection;
import java.util.stream.Collectors;
@@ -37,15 +37,15 @@ public final class DropDatabaseDiscoveryHeartbeatStatementUpdater implements Rul
private static final String RULE_TYPE = "Database discovery";
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropDatabaseDiscoveryHeartbeatStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final DropDatabaseDiscoveryHeartbeatStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, sqlStatement, currentRuleConfig);
checkIsInUse(databaseName, sqlStatement, currentRuleConfig);
}
- private void checkCurrentRuleConfiguration(final String databaseName, final DropDatabaseDiscoveryHeartbeatStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ private void checkCurrentRuleConfiguration(final String databaseName,
+ final DropDatabaseDiscoveryHeartbeatStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
if (sqlStatement.isContainsExistClause()) {
return;
}
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDisco [...]
index 335c8260454..953da1ba76c 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryRuleStatementUpdater.java
@@ -25,7 +25,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleInUsedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.rule.identifier.type.ExportableRule;
import java.util.Collection;
@@ -41,11 +41,11 @@ public final class DropDatabaseDiscoveryRuleStatementUpdater implements RuleDefi
private static final String RULE_TYPE = "Database discovery";
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropDatabaseDiscoveryRuleStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final DropDatabaseDiscoveryRuleStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, sqlStatement, currentRuleConfig);
- checkIsInUse(databaseName, sqlStatement, databaseMetaData);
+ checkIsInUse(databaseName, sqlStatement, database);
}
private void checkCurrentRuleConfiguration(final String databaseName, final DropDatabaseDiscoveryRuleStatement sqlStatement,
@@ -64,8 +64,8 @@ public final class DropDatabaseDiscoveryRuleStatementUpdater implements RuleDefi
DistSQLException.predictionThrow(notExistedRuleNames.isEmpty(), () -> new RequiredRuleMissedException(RULE_TYPE, databaseName));
}
- private void checkIsInUse(final String databaseName, final DropDatabaseDiscoveryRuleStatement sqlStatement, final ShardingSphereDatabaseMetaData databaseMetaData) throws DistSQLException {
- Collection<String> rulesInUse = databaseMetaData.getRuleMetaData().findRules(ExportableRule.class).stream()
+ private void checkIsInUse(final String databaseName, final DropDatabaseDiscoveryRuleStatement sqlStatement, final ShardingSphereDatabase database) throws DistSQLException {
+ Collection<String> rulesInUse = database.getRuleMetaData().findRules(ExportableRule.class).stream()
.filter(each -> each.containExportableKey(Collections.singletonList(ExportableConstants.EXPORTABLE_KEY_AUTO_AWARE_DATA_SOURCE_NAME)))
.map(each -> each.export(ExportableConstants.EXPORTABLE_KEY_AUTO_AWARE_DATA_SOURCE_NAME)).filter(Optional::isPresent)
.map(each -> (Collection<String>) each.get()).flatMap(Collection::stream).collect(Collectors.toSet());
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryTypeStatementUpdater.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDisco [...]
index 0c03bf5c2ed..3c919728e35 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryTypeStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryTypeStatementUpdater.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleInUsedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import java.util.Collection;
import java.util.stream.Collectors;
@@ -37,9 +37,9 @@ public final class DropDatabaseDiscoveryTypeStatementUpdater implements RuleDefi
private static final String RULE_TYPE = "Database discovery";
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropDatabaseDiscoveryTypeStatement sqlStatement,
- final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final DropDatabaseDiscoveryTypeStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, sqlStatement, currentRuleConfig);
checkIsInUse(databaseName, sqlStatement, currentRuleConfig);
}
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHeartbeatQueryResultSetTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscover [...]
index 6566a4f4151..af3899c79b9 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHeartbeatQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHeartbeatQueryResultSetTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.dbdiscovery.api.config.rule.DatabaseDiscoveryHe
import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.ShowDatabaseDiscoveryRulesStatement;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import java.util.ArrayList;
@@ -45,10 +45,10 @@ public final class DatabaseDiscoveryHeartbeatQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfiguration()));
DistSQLResultSet resultSet = new DatabaseDiscoveryHeartbeatQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowDatabaseDiscoveryRulesStatement.class));
+ resultSet.init(database, mock(ShowDatabaseDiscoveryRulesStatement.class));
Collection<String> columnNames = resultSet.getColumnNames();
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(columnNames.size(), is(2));
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryProviderAlgorithmQueryResultSetTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/Database [...]
index 4a4410764e2..99dcb07945b 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryProviderAlgorithmQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryProviderAlgorithmQueryResultSetTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.ShowDataba
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import java.util.ArrayList;
@@ -45,10 +45,10 @@ public final class DatabaseDiscoveryProviderAlgorithmQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfiguration()));
DistSQLResultSet resultSet = new DatabaseDiscoveryTypeQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowDatabaseDiscoveryRulesStatement.class));
+ resultSet.init(database, mock(ShowDatabaseDiscoveryRulesStatement.class));
Collection<String> columnNames = resultSet.getColumnNames();
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(columnNames.size(), is(3));
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryRuleQueryResultSetTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryRule [...]
index 61ee723b87a..1681e4485f4 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryRuleQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryRuleQueryResultSetTest.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.ShowDataba
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.rule.identifier.type.ExportableRule;
import org.junit.Test;
@@ -48,13 +48,13 @@ public final class DatabaseDiscoveryRuleQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
ExportableRule exportableRule = mock(ExportableRule.class);
when(exportableRule.export(anyCollection())).thenReturn(Collections.emptyMap());
- when(databaseMetaData.getRuleMetaData().getRules()).thenReturn(Collections.singleton(exportableRule));
+ when(database.getRuleMetaData().getRules()).thenReturn(Collections.singleton(exportableRule));
DistSQLResultSet resultSet = new DatabaseDiscoveryRuleQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowDatabaseDiscoveryRulesStatement.class));
+ resultSet.init(database, mock(ShowDatabaseDiscoveryRulesStatement.class));
Collection<String> columnNames = resultSet.getColumnNames();
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(columnNames.size(), is(5));
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryHeartbeatStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDa [...]
index 5e83027c701..31deeda5e05 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.AlterDatab
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -45,13 +45,13 @@ public final class AlterDatabaseDiscoveryHeartbeatStatementUpdaterTest {
private final AlterDatabaseDiscoveryHeartbeatStatementUpdater updater = new AlterDatabaseDiscoveryHeartbeatStatementUpdater();
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test(expected = DuplicateRuleException.class)
public void assertCheckSQLStatementWithDuplicateHeartbeatNames() throws DistSQLException {
DatabaseDiscoveryHeartbeatSegment segment1 = new DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", "value"));
DatabaseDiscoveryHeartbeatSegment segment2 = new DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", "value"));
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryHeartbeatStatement(Arrays.asList(segment1, segment2)),
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryHeartbeatStatement(Arrays.asList(segment1, segment2)),
new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap()));
}
@@ -59,7 +59,7 @@ public final class AlterDatabaseDiscoveryHeartbeatStatementUpdaterTest {
public void assertCheckSQLStatementWithNotExistDiscoveryHeartbeatName() throws DistSQLException {
DatabaseDiscoveryHeartbeatSegment segment = new DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", "value"));
DatabaseDiscoveryRuleConfiguration config = new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.singletonMap("heartbeat1", null), Collections.emptyMap());
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryHeartbeatStatement(Collections.singleton(segment)), config);
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryHeartbeatStatement(Collections.singleton(segment)), config);
}
@Test
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update [...]
index 53681df05bc..ad062df9e5f 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java
@@ -27,7 +27,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -52,7 +52,7 @@ public final class AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest {
private final AlterDatabaseDiscoveryTypeStatementUpdater updater = new AlterDatabaseDiscoveryTypeStatementUpdater();
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test(expected = DuplicateRuleException.class)
public void assertCheckSQLStatementWithDuplicate() throws DistSQLException {
@@ -60,7 +60,7 @@ public final class AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest {
List<DatabaseDiscoveryProviderAlgorithmSegment> algorithmSegments = Arrays.asList(
new DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new AlgorithmSegment("DISTSQL.FIXTURE", new Properties())),
new DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new AlgorithmSegment("DISTSQL.FIXTURE", new Properties())));
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryTypeStatement(algorithmSegments),
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryTypeStatement(algorithmSegments),
new DatabaseDiscoveryRuleConfiguration(Collections.singleton(dataSourceRuleConfig), Collections.emptyMap(), Collections.emptyMap()));
}
@@ -68,7 +68,7 @@ public final class AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest {
public void assertCheckSQLStatementWithNotExist() throws DistSQLException {
List<DatabaseDiscoveryProviderAlgorithmSegment> algorithmSegments =
Collections.singletonList(new DatabaseDiscoveryProviderAlgorithmSegment("discovery_type_1", new AlgorithmSegment("DISTSQL.FIXTURE", new Properties())));
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryTypeStatement(algorithmSegments),
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryTypeStatement(algorithmSegments),
new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(),
Collections.singletonMap("discovery_type", new ShardingSphereAlgorithmConfiguration("DISTSQL.FIXTURE", new Properties()))));
}
@@ -77,7 +77,7 @@ public final class AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest {
public void assertCheckSQLStatementWithDatabaseDiscoveryType() throws DistSQLException {
Collection<DatabaseDiscoveryProviderAlgorithmSegment> algorithmSegments = Collections.singleton(
new DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new AlgorithmSegment("INVALID_TYPE", new Properties())));
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryTypeStatement(algorithmSegments),
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryTypeStatement(algorithmSegments),
new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(),
Collections.singletonMap("discovery_type", new ShardingSphereAlgorithmConfiguration("DISTSQL.FIXTURE", new Properties()))));
}
@@ -92,7 +92,7 @@ public final class AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest {
props.put("key", "value_1");
Set<DatabaseDiscoveryProviderAlgorithmSegment> algorithmSegments = Collections.singleton(
new DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new AlgorithmSegment("DISTSQL.FIXTURE", props)));
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryTypeStatement(algorithmSegments), currentRuleConfig);
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryTypeStatement(algorithmSegments), currentRuleConfig);
DatabaseDiscoveryRuleConfiguration databaseDiscoveryRuleConfig =
(DatabaseDiscoveryRuleConfiguration) updater.buildToBeAlteredRuleConfiguration(new AlterDatabaseDiscoveryTypeStatement(algorithmSegments));
DatabaseDiscoveryRuleConfiguration currentConfig = new DatabaseDiscoveryRuleConfiguration(new LinkedList<>(), new LinkedHashMap<>(), new LinkedHashMap<>());
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabas [...]
index e1b780f46aa..ea1d442a2d8 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryRuleStatementUpdaterTest.java
@@ -28,7 +28,7 @@ import org.apache.shardingsphere.infra.distsql.exception.resource.RequiredResour
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.junit.Before;
import org.junit.Test;
@@ -54,7 +54,7 @@ import static org.mockito.Mockito.when;
public final class AlterDatabaseDiscoveryRuleStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShardingSphereResource resource;
@@ -63,18 +63,18 @@ public final class AlterDatabaseDiscoveryRuleStatementUpdaterTest {
@Before
public void before() {
- when(databaseMetaData.getResource()).thenReturn(resource);
+ when(database.getResource()).thenReturn(resource);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutCurrentRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryRuleStatement(Collections.emptyList()), null);
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryRuleStatement(Collections.emptyList()), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutToBeAlteredDatabaseDiscoveryRule() throws DistSQLException {
DatabaseDiscoveryConstructionSegment segment = new DatabaseDiscoveryConstructionSegment("readwrite_ds", Arrays.asList("ds_read_0", "ds_read_1"), "", "");
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryRuleStatement(Collections.singletonList(segment)),
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryRuleStatement(Collections.singletonList(segment)),
new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap()));
}
@@ -85,7 +85,7 @@ public final class AlterDatabaseDiscoveryRuleStatementUpdaterTest {
DatabaseDiscoveryDataSourceRuleConfiguration dataSourceRuleConfig = new DatabaseDiscoveryDataSourceRuleConfiguration("readwrite_ds", Collections.emptyList(), "ha-heartbeat", "TEST");
DatabaseDiscoveryRuleConfiguration ruleConfig = new DatabaseDiscoveryRuleConfiguration(new LinkedList<>(Collections.singleton(dataSourceRuleConfig)),
Collections.singletonMap("readwrite_ds_mgr", null), Collections.singletonMap("readwrite_ds_heartbeat", null));
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryRuleStatement(Collections.singletonList(segment)), ruleConfig);
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryRuleStatement(Collections.singletonList(segment)), ruleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -95,7 +95,7 @@ public final class AlterDatabaseDiscoveryRuleStatementUpdaterTest {
DatabaseDiscoveryDataSourceRuleConfiguration dataSourceRuleConfig = new DatabaseDiscoveryDataSourceRuleConfiguration("readwrite_ds", Collections.emptyList(), "ha-heartbeat", "TEST");
DatabaseDiscoveryRuleConfiguration ruleConfig = new DatabaseDiscoveryRuleConfiguration(new LinkedList<>(Collections.singleton(dataSourceRuleConfig)),
Collections.singletonMap("readwrite_ds_mgr", null), Collections.singletonMap("readwrite_ds_heartbeat", null));
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), ruleConfig);
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), ruleConfig);
}
@Test(expected = RequiredAlgorithmMissedException.class)
@@ -104,7 +104,7 @@ public final class AlterDatabaseDiscoveryRuleStatementUpdaterTest {
DatabaseDiscoveryDataSourceRuleConfiguration dataSourceRuleConfig = new DatabaseDiscoveryDataSourceRuleConfiguration("readwrite_ds", Collections.emptyList(), "ha-heartbeat", "TEST");
DatabaseDiscoveryRuleConfiguration ruleConfig = new DatabaseDiscoveryRuleConfiguration(new LinkedList<>(Collections.singleton(dataSourceRuleConfig)),
Collections.singletonMap("readwrite_ds_mgr", null), Collections.singletonMap("readwrite_ds_heartbeat", null));
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), ruleConfig);
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), ruleConfig);
}
@Test(expected = RequiredAlgorithmMissedException.class)
@@ -114,7 +114,7 @@ public final class AlterDatabaseDiscoveryRuleStatementUpdaterTest {
DatabaseDiscoveryDataSourceRuleConfiguration dataSourceRuleConfig = new DatabaseDiscoveryDataSourceRuleConfiguration("readwrite_ds", Collections.emptyList(), "ha-heartbeat", "TEST");
DatabaseDiscoveryRuleConfiguration ruleConfig = new DatabaseDiscoveryRuleConfiguration(new LinkedList<>(Collections.singleton(dataSourceRuleConfig)),
Collections.singletonMap("readwrite_ds_mgr", null), Collections.singletonMap("readwrite_ds_heartbeat", null));
- updater.checkSQLStatement(databaseMetaData, new AlterDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), ruleConfig);
+ updater.checkSQLStatement(database, new AlterDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), ruleConfig);
}
@Test
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryHeartbeatStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/Create [...]
index 325aad9feef..f86e870bbdb 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.dbdiscovery.distsql.parser.segment.DatabaseDisc
import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.CreateDatabaseDiscoveryHeartbeatStatement;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -44,13 +44,13 @@ public final class CreateDatabaseDiscoveryHeartbeatStatementUpdaterTest {
private final CreateDatabaseDiscoveryHeartbeatStatementUpdater updater = new CreateDatabaseDiscoveryHeartbeatStatementUpdater();
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test(expected = DuplicateRuleException.class)
public void assertCheckSQLStatementWithDuplicateHeartbeatNames() throws DistSQLException {
DatabaseDiscoveryHeartbeatSegment segment1 = new DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", "value"));
DatabaseDiscoveryHeartbeatSegment segment2 = new DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", "value"));
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryHeartbeatStatement(Arrays.asList(segment1, segment2)),
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryHeartbeatStatement(Arrays.asList(segment1, segment2)),
new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap()));
}
@@ -58,7 +58,7 @@ public final class CreateDatabaseDiscoveryHeartbeatStatementUpdaterTest {
public void assertCheckSQLStatementWithExistDiscoveryHeartbeatName() throws DistSQLException {
DatabaseDiscoveryHeartbeatSegment segment = new DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", "value"));
DatabaseDiscoveryRuleConfiguration ruleConfig = new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.singletonMap("heartbeat", null), Collections.emptyMap());
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryHeartbeatStatement(Collections.singleton(segment)), ruleConfig);
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryHeartbeatStatement(Collections.singleton(segment)), ruleConfig);
}
@Test
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/updat [...]
index 7bf52f11d41..d8517de5be8 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java
@@ -26,7 +26,7 @@ import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmC
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -49,7 +49,7 @@ public final class CreateDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest
private final CreateDatabaseDiscoveryTypeStatementUpdater updater = new CreateDatabaseDiscoveryTypeStatementUpdater();
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test(expected = DuplicateRuleException.class)
public void assertCheckSQLStatementWithDuplicate() throws DistSQLException {
@@ -57,7 +57,7 @@ public final class CreateDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest
Collection<DatabaseDiscoveryProviderAlgorithmSegment> algorithmSegments = Arrays.asList(
new DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new AlgorithmSegment("DISTSQL.FIXTURE", new Properties())),
new DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new AlgorithmSegment("DISTSQL.FIXTURE", new Properties())));
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryTypeStatement(algorithmSegments),
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryTypeStatement(algorithmSegments),
new DatabaseDiscoveryRuleConfiguration(Collections.singleton(dataSourceRuleConfig), Collections.emptyMap(), Collections.emptyMap()));
}
@@ -66,7 +66,7 @@ public final class CreateDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest
DatabaseDiscoveryDataSourceRuleConfiguration dataSourceRuleConfig = new DatabaseDiscoveryDataSourceRuleConfiguration("readwrite_ds", Collections.emptyList(), "ha-heartbeat", "test");
Collection<DatabaseDiscoveryProviderAlgorithmSegment> algorithmSegments = Collections.singletonList(
new DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new AlgorithmSegment("DISTSQL.FIXTURE", new Properties())));
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryTypeStatement(algorithmSegments),
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryTypeStatement(algorithmSegments),
new DatabaseDiscoveryRuleConfiguration(Collections.singleton(dataSourceRuleConfig), Collections.emptyMap(),
Collections.singletonMap("discovery_type", new ShardingSphereAlgorithmConfiguration("DISTSQL.FIXTURE", new Properties()))));
}
@@ -75,14 +75,14 @@ public final class CreateDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest
public void assertCheckSQLStatementWithDatabaseDiscoveryType() throws DistSQLException {
Collection<DatabaseDiscoveryProviderAlgorithmSegment> algorithmSegments = Collections.singleton(
new DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new AlgorithmSegment("INVALID_TYPE", new Properties())));
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryTypeStatement(algorithmSegments), null);
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryTypeStatement(algorithmSegments), null);
}
@Test
public void assertBuildAndUpdate() throws DistSQLException {
Collection<DatabaseDiscoveryProviderAlgorithmSegment> algorithmSegments = Collections.singleton(
new DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new AlgorithmSegment("DISTSQL.FIXTURE", new Properties())));
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryTypeStatement(algorithmSegments), null);
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryTypeStatement(algorithmSegments), null);
DatabaseDiscoveryRuleConfiguration databaseDiscoveryRuleConfig =
(DatabaseDiscoveryRuleConfiguration) updater.buildToBeCreatedRuleConfiguration(new CreateDatabaseDiscoveryTypeStatement(algorithmSegments));
DatabaseDiscoveryRuleConfiguration currentConfig = new DatabaseDiscoveryRuleConfiguration(new LinkedList<>(), new LinkedHashMap<>(), new LinkedHashMap<>());
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatab [...]
index 4d80d4d8e60..8817a5294b3 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryRuleStatementUpdaterTest.java
@@ -28,7 +28,7 @@ import org.apache.shardingsphere.infra.distsql.exception.resource.RequiredResour
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.junit.Before;
import org.junit.Test;
@@ -56,21 +56,21 @@ public final class CreateDatabaseDiscoveryRuleStatementUpdaterTest {
private final CreateDatabaseDiscoveryRuleStatementUpdater updater = new CreateDatabaseDiscoveryRuleStatementUpdater();
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShardingSphereResource resource;
@Before
public void before() {
- when(databaseMetaData.getResource()).thenReturn(resource);
+ when(database.getResource()).thenReturn(resource);
}
@Test(expected = DuplicateRuleException.class)
public void assertCheckSQLStatementWithDuplicateRuleNames() throws DistSQLException {
DatabaseDiscoveryDataSourceRuleConfiguration dataSourceRuleConfig = new DatabaseDiscoveryDataSourceRuleConfiguration("readwrite_ds", Collections.emptyList(), "ha-heartbeat", "test");
DatabaseDiscoveryConstructionSegment segment = new DatabaseDiscoveryConstructionSegment("readwrite_ds", Collections.emptyList(), "", "");
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryRuleStatement(Collections.singleton(segment)),
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryRuleStatement(Collections.singleton(segment)),
new DatabaseDiscoveryRuleConfiguration(Collections.singleton(dataSourceRuleConfig), Collections.emptyMap(), Collections.emptyMap()));
}
@@ -78,21 +78,21 @@ public final class CreateDatabaseDiscoveryRuleStatementUpdaterTest {
public void assertCheckSQLStatementWithoutExistedResources() throws DistSQLException {
when(resource.getNotExistedResources(any())).thenReturn(Collections.singleton("ds_read_0"));
DatabaseDiscoveryConstructionSegment segment = new DatabaseDiscoveryConstructionSegment("readwrite_ds", Arrays.asList("ds_read_0", "ds_read_1"), "", "");
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), null);
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), null);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertCheckSQLStatementWithDatabaseDiscoveryType() throws DistSQLException {
AlgorithmSegment algorithmSegment = new AlgorithmSegment("INVALID_TYPE", new Properties());
DatabaseDiscoveryDefinitionSegment segment = new DatabaseDiscoveryDefinitionSegment("readwrite_ds", Arrays.asList("ds_read_0", "ds_read_1"), algorithmSegment, new Properties());
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), null);
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), null);
}
@Test(expected = RequiredAlgorithmMissedException.class)
public void assertCheckSQLStatementWithNotExistDiscoveryTypeName() throws DistSQLException {
DatabaseDiscoveryConstructionSegment segment = new DatabaseDiscoveryConstructionSegment("readwrite_ds", Arrays.asList("ds_read_0", "ds_read_1"), "not_exist_discovery_type_name", "");
DatabaseDiscoveryRuleConfiguration ruleConfig = new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap());
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), ruleConfig);
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), ruleConfig);
}
@Test(expected = RequiredAlgorithmMissedException.class)
@@ -101,7 +101,7 @@ public final class CreateDatabaseDiscoveryRuleStatementUpdaterTest {
"readwrite_ds", Arrays.asList("ds_read_0", "ds_read_1"), "discovery_type_name", "not_exist_heartbeat_name");
DatabaseDiscoveryRuleConfiguration ruleConfig = new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(),
Collections.singletonMap("discovery_type_name", null));
- updater.checkSQLStatement(databaseMetaData, new CreateDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), ruleConfig);
+ updater.checkSQLStatement(database, new CreateDatabaseDiscoveryRuleStatement(Collections.singleton(segment)), ruleConfig);
}
@Test
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryHeartbeatStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropData [...]
index c1e51c8db49..6dc3fbd3777 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.DropDataba
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleInUsedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -47,22 +47,22 @@ public final class DropDatabaseDiscoveryHeartbeatStatementUpdaterTest {
private final DropDatabaseDiscoveryHeartbeatStatementUpdater updater = new DropDatabaseDiscoveryHeartbeatStatementUpdater();
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutCurrentHeartbeat() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), null);
+ updater.checkSQLStatement(database, createSQLStatement(), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutToBeDroppedHeartbeat() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap()));
+ updater.checkSQLStatement(database, createSQLStatement(), new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap()));
}
@Test(expected = RuleInUsedException.class)
public void assertCheckSQLStatementWithInUsed() throws DistSQLException {
DatabaseDiscoveryDataSourceRuleConfiguration ruleConfig = new DatabaseDiscoveryDataSourceRuleConfiguration("name", Collections.emptyList(), "heartbeat_name", "");
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), new DatabaseDiscoveryRuleConfiguration(Collections.singletonList(ruleConfig),
+ updater.checkSQLStatement(database, createSQLStatement(), new DatabaseDiscoveryRuleConfiguration(Collections.singletonList(ruleConfig),
Collections.singletonMap("heartbeat_name", null), Collections.emptyMap()));
}
@@ -77,7 +77,7 @@ public final class DropDatabaseDiscoveryHeartbeatStatementUpdaterTest {
public void assertUpdateCurrentRuleConfigurationWithIfExists() throws DistSQLException {
DatabaseDiscoveryRuleConfiguration ruleConfig = createCurrentRuleConfiguration();
DropDatabaseDiscoveryHeartbeatStatement dropDatabaseDiscoveryHeartbeatStatement = createSQLStatementWithIfExists();
- updater.checkSQLStatement(databaseMetaData, dropDatabaseDiscoveryHeartbeatStatement, ruleConfig);
+ updater.checkSQLStatement(database, dropDatabaseDiscoveryHeartbeatStatement, ruleConfig);
assertFalse(updater.updateCurrentRuleConfiguration(dropDatabaseDiscoveryHeartbeatStatement, ruleConfig));
assertTrue(ruleConfig.getDiscoveryHeartbeats().containsKey("heartbeat_name"));
assertThat(ruleConfig.getDiscoveryHeartbeats().size(), is(2));
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/ [...]
index eb8c5ca9bac..e5de294c9c2 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmC
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleInUsedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -47,22 +47,22 @@ public final class DropDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest {
private final DropDatabaseDiscoveryTypeStatementUpdater updater = new DropDatabaseDiscoveryTypeStatementUpdater();
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutCurrentType() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), null);
+ updater.checkSQLStatement(database, createSQLStatement(), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutToBeDroppedTypes() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap()));
+ updater.checkSQLStatement(database, createSQLStatement(), new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap()));
}
@Test(expected = RuleInUsedException.class)
public void assertCheckSQLStatementWithInUsed() throws DistSQLException {
DatabaseDiscoveryDataSourceRuleConfiguration dataSourceRuleConfig = new DatabaseDiscoveryDataSourceRuleConfiguration("name", Collections.emptyList(), "", "type_name");
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), new DatabaseDiscoveryRuleConfiguration(Collections.singletonList(dataSourceRuleConfig),
+ updater.checkSQLStatement(database, createSQLStatement(), new DatabaseDiscoveryRuleConfiguration(Collections.singletonList(dataSourceRuleConfig),
Collections.emptyMap(), Collections.singletonMap("type_name", null)));
}
@@ -77,7 +77,7 @@ public final class DropDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest {
public void assertUpdateCurrentRuleConfigurationWithIfExists() throws DistSQLException {
DatabaseDiscoveryRuleConfiguration ruleConfig = createCurrentRuleConfiguration();
DropDatabaseDiscoveryTypeStatement dropDatabaseDiscoveryRuleStatement = createSQLStatementWithIfExists();
- updater.checkSQLStatement(databaseMetaData, dropDatabaseDiscoveryRuleStatement, ruleConfig);
+ updater.checkSQLStatement(database, dropDatabaseDiscoveryRuleStatement, ruleConfig);
assertFalse(updater.updateCurrentRuleConfiguration(dropDatabaseDiscoveryRuleStatement, ruleConfig));
assertTrue(ruleConfig.getDiscoveryTypes().containsKey("type_name"));
assertThat(ruleConfig.getDiscoveryTypes().size(), is(2));
diff --git a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseD [...]
index 7aa14ead615..cd97aa190fb 100644
--- a/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryRuleStatementUpdaterTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.DropDataba
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
import org.junit.Before;
import org.junit.Test;
@@ -46,22 +46,22 @@ public final class DropDatabaseDiscoveryRuleStatementUpdaterTest {
private final DropDatabaseDiscoveryRuleStatementUpdater updater = new DropDatabaseDiscoveryRuleStatementUpdater();
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Before
public void init() {
- databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData()).thenReturn(new ShardingSphereRuleMetaData(null, Collections.emptyList()));
+ database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData()).thenReturn(new ShardingSphereRuleMetaData(null, Collections.emptyList()));
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutCurrentRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), null);
+ updater.checkSQLStatement(database, createSQLStatement(), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutToBeDroppedRules() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap()));
+ updater.checkSQLStatement(database, createSQLStatement(), new DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), Collections.emptyMap(), Collections.emptyMap()));
}
@Test
@@ -76,7 +76,7 @@ public final class DropDatabaseDiscoveryRuleStatementUpdaterTest {
public void assertUpdateCurrentRuleConfigurationWithIfExists() throws DistSQLException {
DatabaseDiscoveryRuleConfiguration databaseDiscoveryRuleConfig = createCurrentRuleConfiguration();
DropDatabaseDiscoveryRuleStatement dropDatabaseDiscoveryRuleStatement = createSQLStatementWithIfExists();
- updater.checkSQLStatement(databaseMetaData, dropDatabaseDiscoveryRuleStatement, databaseDiscoveryRuleConfig);
+ updater.checkSQLStatement(database, dropDatabaseDiscoveryRuleStatement, databaseDiscoveryRuleConfig);
assertFalse(updater.updateCurrentRuleConfiguration(dropDatabaseDiscoveryRuleStatement, databaseDiscoveryRuleConfig));
assertThat(databaseDiscoveryRuleConfig.getDataSources().size(), is(1));
assertThat(databaseDiscoveryRuleConfig.getDiscoveryTypes().size(), is(1));
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/merge/EncryptResultDecoratorEngine.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/merge/EncryptResultDecoratorEngine.java
index d81b7c93b1c..98456acd419 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/merge/EncryptResultDecoratorEngine.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/merge/EncryptResultDecoratorEngine.java
@@ -29,7 +29,7 @@ import org.apache.shardingsphere.infra.database.type.DatabaseType;
import org.apache.shardingsphere.infra.merge.engine.decorator.ResultDecorator;
import org.apache.shardingsphere.infra.merge.engine.decorator.ResultDecoratorEngine;
import org.apache.shardingsphere.infra.merge.engine.decorator.impl.TransparentResultDecorator;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
/**
@@ -38,10 +38,10 @@ import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatemen
public final class EncryptResultDecoratorEngine implements ResultDecoratorEngine<EncryptRule> {
@Override
- public ResultDecorator<?> newInstance(final DatabaseType databaseType, final String databaseName, final ShardingSphereDatabaseMetaData databaseMetaData,
+ public ResultDecorator<?> newInstance(final DatabaseType databaseType, final String databaseName, final ShardingSphereDatabase database,
final EncryptRule encryptRule, final ConfigurationProperties props, final SQLStatementContext<?> sqlStatementContext) {
if (sqlStatementContext instanceof SelectStatementContext) {
- EncryptAlgorithmMetaData algorithmMetaData = new EncryptAlgorithmMetaData(databaseName, databaseMetaData, encryptRule, (SelectStatementContext) sqlStatementContext);
+ EncryptAlgorithmMetaData algorithmMetaData = new EncryptAlgorithmMetaData(databaseName, database, encryptRule, (SelectStatementContext) sqlStatementContext);
return new EncryptDQLResultDecorator(algorithmMetaData);
}
if (sqlStatementContext.getSqlStatement() instanceof DALStatement) {
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/merge/dql/EncryptAlgorithmMetaData.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/merge/dql/EncryptAlgorithmMetaData.java
index e1978857490..0fa3d14b48d 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/merge/dql/EncryptAlgorithmMetaData.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/merge/dql/EncryptAlgorithmMetaData.java
@@ -26,7 +26,7 @@ import org.apache.shardingsphere.infra.binder.segment.select.projection.Projecti
import org.apache.shardingsphere.infra.binder.segment.select.projection.impl.ColumnProjection;
import org.apache.shardingsphere.infra.binder.segment.table.TablesContext;
import org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementContext;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import java.util.Collections;
import java.util.List;
@@ -41,7 +41,7 @@ public final class EncryptAlgorithmMetaData {
private final String databaseName;
- private final ShardingSphereDatabaseMetaData databaseMetaData;
+ private final ShardingSphereDatabase database;
private final EncryptRule encryptRule;
@@ -80,9 +80,9 @@ public final class EncryptAlgorithmMetaData {
return Optional.empty();
}
TablesContext tablesContext = selectStatementContext.getTablesContext();
- String schemaName = tablesContext.getSchemaName().orElse(selectStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName()));
+ String schemaName = tablesContext.getSchemaName().orElse(selectStatementContext.getDatabaseType().getDefaultSchema(database.getName()));
Map<String, String> expressionTableNames = tablesContext.findTableNamesByColumnProjection(
- Collections.singletonList(columnProjection.get()), databaseMetaData.getDatabase().getSchema(schemaName));
+ Collections.singletonList(columnProjection.get()), database.getDatabaseMetaData().getSchema(schemaName));
Optional<String> tableName = findTableName(columnProjection.get(), expressionTableNames);
return tableName.map(optional -> EncryptContextBuilder.build(databaseName, schemaName, optional, columnProjection.get().getName(), encryptRule));
}
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/merge/EncryptResultDecoratorEngineTest.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/merge/EncryptResultDecoratorEngineTest.java
index 3c4a5e18f7b..107922d4175 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/merge/EncryptResultDecoratorEngineTest.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/merge/EncryptResultDecoratorEngineTest.java
@@ -30,7 +30,7 @@ import org.apache.shardingsphere.infra.database.type.DatabaseType;
import org.apache.shardingsphere.infra.merge.engine.ResultProcessEngineFactory;
import org.apache.shardingsphere.infra.merge.engine.decorator.ResultDecorator;
import org.apache.shardingsphere.infra.merge.engine.decorator.impl.TransparentResultDecorator;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.ExplainStatement;
import org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLExplainStatement;
import org.junit.Test;
@@ -56,13 +56,13 @@ public final class EncryptResultDecoratorEngineTest {
private DatabaseType databaseType;
@Mock
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test
public void assertNewInstanceWithSelectStatement() {
EncryptResultDecoratorEngine engine = (EncryptResultDecoratorEngine) ResultProcessEngineFactory.getInstances(Collections.singleton(rule)).get(rule);
ResultDecorator<?> actual = engine.newInstance(
- databaseType, DefaultDatabase.LOGIC_NAME, databaseMetaData, rule, mock(ConfigurationProperties.class), mock(SelectStatementContext.class, RETURNS_DEEP_STUBS));
+ databaseType, DefaultDatabase.LOGIC_NAME, database, rule, mock(ConfigurationProperties.class), mock(SelectStatementContext.class, RETURNS_DEEP_STUBS));
assertThat(actual, instanceOf(EncryptDQLResultDecorator.class));
}
@@ -71,14 +71,14 @@ public final class EncryptResultDecoratorEngineTest {
SQLStatementContext<ExplainStatement> sqlStatementContext = mock(ExplainStatementContext.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(mock(MySQLExplainStatement.class));
EncryptResultDecoratorEngine engine = (EncryptResultDecoratorEngine) ResultProcessEngineFactory.getInstances(Collections.singleton(rule)).get(rule);
- ResultDecorator<?> actual = engine.newInstance(databaseType, DefaultDatabase.LOGIC_NAME, databaseMetaData, rule, mock(ConfigurationProperties.class), sqlStatementContext);
+ ResultDecorator<?> actual = engine.newInstance(databaseType, DefaultDatabase.LOGIC_NAME, database, rule, mock(ConfigurationProperties.class), sqlStatementContext);
assertThat(actual, instanceOf(EncryptDALResultDecorator.class));
}
@Test
public void assertNewInstanceWithOtherStatement() {
EncryptResultDecoratorEngine engine = (EncryptResultDecoratorEngine) ResultProcessEngineFactory.getInstances(Collections.singleton(rule)).get(rule);
- ResultDecorator<?> actual = engine.newInstance(databaseType, DefaultDatabase.LOGIC_NAME, databaseMetaData, rule, mock(ConfigurationProperties.class), mock(InsertStatementContext.class));
+ ResultDecorator<?> actual = engine.newInstance(databaseType, DefaultDatabase.LOGIC_NAME, database, rule, mock(ConfigurationProperties.class), mock(InsertStatementContext.class));
assertThat(actual, instanceOf(TransparentResultDecorator.class));
}
}
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/merge/dql/EncryptAlgorithmMetaDataTest.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/merge/dql/EncryptAlgorithmMetaDataTest.java
index 4d9abb6e7bc..117d39dcf47 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/merge/dql/EncryptAlgorithmMetaDataTest.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/merge/dql/EncryptAlgorithmMetaDataTest.java
@@ -29,7 +29,7 @@ import org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementConte
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.dialect.MySQLDatabaseType;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.junit.Before;
import org.junit.Test;
@@ -56,7 +56,7 @@ import static org.mockito.Mockito.when;
public final class EncryptAlgorithmMetaDataTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShardingSphereSchema schema;
@@ -86,8 +86,8 @@ public final class EncryptAlgorithmMetaDataTest {
when(columnProjection.getExpression()).thenReturn("id");
when(selectStatementContext.getTablesContext()).thenReturn(tablesContext);
when(selectStatementContext.getDatabaseType()).thenReturn(new MySQLDatabaseType());
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
encryptAlgorithm = EncryptAlgorithmFactory.newInstance(new ShardingSphereAlgorithmConfiguration("MD5", new Properties()));
}
@@ -96,7 +96,7 @@ public final class EncryptAlgorithmMetaDataTest {
Map<String, String> columnTableNames = new HashMap<>();
columnTableNames.put(columnProjection.getExpression(), "t_order");
when(tablesContext.findTableNamesByColumnProjection(Collections.singletonList(columnProjection), schema)).thenReturn(columnTableNames);
- EncryptAlgorithmMetaData encryptAlgorithmMetaData = new EncryptAlgorithmMetaData(DefaultDatabase.LOGIC_NAME, databaseMetaData, encryptRule, selectStatementContext);
+ EncryptAlgorithmMetaData encryptAlgorithmMetaData = new EncryptAlgorithmMetaData(DefaultDatabase.LOGIC_NAME, database, encryptRule, selectStatementContext);
Optional<EncryptContext> actual = encryptAlgorithmMetaData.findEncryptContext(1);
assertTrue(actual.isPresent());
assertThat(actual.get().getDatabaseName(), is(DefaultDatabase.LOGIC_NAME));
@@ -109,7 +109,7 @@ public final class EncryptAlgorithmMetaDataTest {
when(tablesContext.findTableNamesByColumnProjection(Collections.singletonList(columnProjection), schema)).thenReturn(Collections.emptyMap());
when(tablesContext.getTableNames()).thenReturn(Arrays.asList("t_user", "t_user_item", "t_order_item"));
when(encryptRule.findEncryptor("t_order_item", "id")).thenReturn(Optional.of(encryptAlgorithm));
- EncryptAlgorithmMetaData encryptAlgorithmMetaData = new EncryptAlgorithmMetaData(DefaultDatabase.LOGIC_NAME, databaseMetaData, encryptRule, selectStatementContext);
+ EncryptAlgorithmMetaData encryptAlgorithmMetaData = new EncryptAlgorithmMetaData(DefaultDatabase.LOGIC_NAME, database, encryptRule, selectStatementContext);
Optional<EncryptContext> actual = encryptAlgorithmMetaData.findEncryptContext(1);
assertTrue(actual.isPresent());
assertThat(actual.get().getDatabaseName(), is(DefaultDatabase.LOGIC_NAME));
@@ -120,7 +120,7 @@ public final class EncryptAlgorithmMetaDataTest {
@Test
public void assertFindEncryptContextWhenColumnProjectionIsNotExist() {
when(projectionsContext.getExpandProjections()).thenReturn(Collections.singletonList(mock(DerivedProjection.class)));
- EncryptAlgorithmMetaData encryptAlgorithmMetaData = new EncryptAlgorithmMetaData(DefaultDatabase.LOGIC_NAME, databaseMetaData, encryptRule, selectStatementContext);
+ EncryptAlgorithmMetaData encryptAlgorithmMetaData = new EncryptAlgorithmMetaData(DefaultDatabase.LOGIC_NAME, database, encryptRule, selectStatementContext);
Optional<EncryptContext> actual = encryptAlgorithmMetaData.findEncryptContext(1);
assertFalse(actual.isPresent());
}
@@ -129,7 +129,7 @@ public final class EncryptAlgorithmMetaDataTest {
@Test
public void assertFindEncryptor() {
when(encryptRule.findEncryptor("t_order", "id")).thenReturn(Optional.of(encryptAlgorithm));
- EncryptAlgorithmMetaData encryptAlgorithmMetaData = new EncryptAlgorithmMetaData(DefaultDatabase.LOGIC_NAME, databaseMetaData, encryptRule, selectStatementContext);
+ EncryptAlgorithmMetaData encryptAlgorithmMetaData = new EncryptAlgorithmMetaData(DefaultDatabase.LOGIC_NAME, database, encryptRule, selectStatementContext);
Optional<EncryptAlgorithm> actualEncryptor = encryptAlgorithmMetaData.findEncryptor("t_order", "id");
assertTrue(actualEncryptor.isPresent());
assertThat(actualEncryptor.get().getType(), is("MD5"));
@@ -138,7 +138,7 @@ public final class EncryptAlgorithmMetaDataTest {
@Test
public void assertIsQueryWithCipherColumn() {
when(encryptRule.isQueryWithCipherColumn("t_order")).thenReturn(true);
- EncryptAlgorithmMetaData encryptAlgorithmMetaData = new EncryptAlgorithmMetaData(DefaultDatabase.LOGIC_NAME, databaseMetaData, encryptRule, selectStatementContext);
+ EncryptAlgorithmMetaData encryptAlgorithmMetaData = new EncryptAlgorithmMetaData(DefaultDatabase.LOGIC_NAME, database, encryptRule, selectStatementContext);
assertTrue(encryptAlgorithmMetaData.isQueryWithCipherColumn("t_order"));
}
}
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilderTest.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilderTest.java
index e8a14993b36..73058508890 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilderTest.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilderTest.java
@@ -87,7 +87,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
mockOracleResultSet(connection);
mockPGResultSet(connection);
mockSQLServerResultSet(connection);
- mockDatabaseMetaData(connection);
+ mockDatabase(connection);
}
private void mockSQLServerResultSet(final Connection connection) throws SQLException {
@@ -126,15 +126,15 @@ public final class EncryptSchemaMetaDataBuilderTest {
when(connection.prepareStatement(startsWith("SELECT TABLE_CATALOG, TABLE_NAME"))).thenReturn(preparedStatement);
}
- private void mockDatabaseMetaData(final Connection connection) throws SQLException {
- DatabaseMetaData databaseMetaData = mock(DatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(connection.getMetaData()).thenReturn(databaseMetaData);
+ private void mockDatabase(final Connection connection) throws SQLException {
+ DatabaseMetaData database = mock(DatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ when(connection.getMetaData()).thenReturn(database);
ResultSet dataTypeResultSet = createDataTypeResultSet();
- when(databaseMetaData.getTypeInfo()).thenReturn(dataTypeResultSet);
+ when(database.getTypeInfo()).thenReturn(dataTypeResultSet);
ResultSet tableResultSet = createTableResultSet();
ResultSet columnResultSet = createColumnResultSet();
- when(databaseMetaData.getTables(any(), any(), any(), eq(null))).thenReturn(tableResultSet);
- when(databaseMetaData.getColumns(any(), any(), any(), eq("%"))).thenReturn(columnResultSet);
+ when(database.getTables(any(), any(), any(), eq(null))).thenReturn(tableResultSet);
+ when(database.getColumns(any(), any(), any(), eq("%"))).thenReturn(columnResultSet);
}
private ResultSet createTableResultSet() throws SQLException {
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/query/EncryptRuleQueryResultSet.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/query/EncryptRuleQueryResultSet.java
index e201fe279c1..a4029a33216 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/query/EncryptRuleQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/query/EncryptRuleQueryResultSet.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.encrypt.api.config.rule.EncryptTableRuleConfigu
import org.apache.shardingsphere.encrypt.distsql.parser.statement.ShowEncryptRulesStatement;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.properties.PropertiesConverter;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -44,8 +44,8 @@ public final class EncryptRuleQueryResultSet implements DistSQLResultSet {
private Iterator<Collection<Object>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<EncryptRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().findRuleConfiguration(EncryptRuleConfiguration.class).stream().findAny();
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<EncryptRuleConfiguration> ruleConfig = database.getRuleMetaData().findRuleConfiguration(EncryptRuleConfiguration.class).stream().findAny();
ruleConfig.ifPresent(optional -> data = buildData(optional, (ShowEncryptRulesStatement) sqlStatement).iterator());
}
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdater.java
index 50de3469eaa..3b868d35ff8 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdater.java
@@ -31,7 +31,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmCo
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidRuleConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import java.util.Collection;
import java.util.Collections;
@@ -45,9 +45,8 @@ import java.util.stream.Collectors;
public final class AlterEncryptRuleStatementUpdater implements RuleDefinitionAlterUpdater<AlterEncryptRuleStatement, EncryptRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterEncryptRuleStatement sqlStatement,
- final EncryptRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database, final AlterEncryptRuleStatement sqlStatement, final EncryptRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkToBeAlteredRules(databaseName, sqlStatement, currentRuleConfig);
checkToBeAlteredEncryptors(sqlStatement);
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdater.java
index 4cf0e95cb87..961c77e220a 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdater.java
@@ -29,7 +29,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleExcep
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidRuleConfigurationException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import java.util.Collection;
import java.util.Collections;
@@ -42,9 +42,8 @@ import java.util.stream.Collectors;
public final class CreateEncryptRuleStatementUpdater implements RuleDefinitionCreateUpdater<CreateEncryptRuleStatement, EncryptRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateEncryptRuleStatement sqlStatement,
- final EncryptRuleConfiguration currentRuleConfig) throws DistSQLException {
- checkDuplicateRuleNames(databaseMetaData.getDatabase().getName(), sqlStatement, currentRuleConfig);
+ public void checkSQLStatement(final ShardingSphereDatabase database, final CreateEncryptRuleStatement sqlStatement, final EncryptRuleConfiguration currentRuleConfig) throws DistSQLException {
+ checkDuplicateRuleNames(database.getName(), sqlStatement, currentRuleConfig);
checkDataType(sqlStatement);
checkToBeCreatedEncryptors(sqlStatement);
// TODO check resource
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/DropEncryptRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/DropEncryptRuleStatementUpdater.java
index 2f0493c2b7a..b1bc3f9193e 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/DropEncryptRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/DropEncryptRuleStatementUpdater.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.encrypt.distsql.parser.statement.DropEncryptRul
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import java.util.Collection;
import java.util.Optional;
@@ -35,10 +35,8 @@ import java.util.stream.Collectors;
public final class DropEncryptRuleStatementUpdater implements RuleDefinitionDropUpdater<DropEncryptRuleStatement, EncryptRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropEncryptRuleStatement sqlStatement,
- final EncryptRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
- checkToBeDroppedEncryptTableNames(databaseName, sqlStatement, currentRuleConfig);
+ public void checkSQLStatement(final ShardingSphereDatabase database, final DropEncryptRuleStatement sqlStatement, final EncryptRuleConfiguration currentRuleConfig) throws DistSQLException {
+ checkToBeDroppedEncryptTableNames(database.getName(), sqlStatement, currentRuleConfig);
}
private void checkToBeDroppedEncryptTableNames(final String databaseName, final DropEncryptRuleStatement sqlStatement,
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/query/EncryptRuleQueryResultSetTest.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/query/EncryptRuleQueryResultSetTest.java
index faa5389e0ed..631fa35bba1 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/query/EncryptRuleQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/query/EncryptRuleQueryResultSetTest.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.encrypt.distsql.parser.statement.ShowEncryptRul
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import java.util.Collection;
@@ -43,10 +43,10 @@ public final class EncryptRuleQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(getRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(getRuleConfiguration()));
DistSQLResultSet resultSet = new EncryptRuleQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowEncryptRulesStatement.class));
+ resultSet.init(database, mock(ShowEncryptRulesStatement.class));
Collection<Object> actual = resultSet.getRowData();
assertThat(actual.size(), is(12));
assertTrue(actual.contains("t_encrypt"));
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdaterTest.java
index 9a8952b25eb..0100cee5abe 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdaterTest.java
@@ -27,7 +27,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidRuleConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -42,23 +42,23 @@ import java.util.Properties;
public final class AlterEncryptRuleStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
private final AlterEncryptRuleStatementUpdater updater = new AlterEncryptRuleStatementUpdater();
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutCurrentRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("MD5"), null);
+ updater.checkSQLStatement(database, createSQLStatement("MD5"), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutToBeAlteredRules() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("MD5"), new EncryptRuleConfiguration(Collections.emptyList(), Collections.emptyMap()));
+ updater.checkSQLStatement(database, createSQLStatement("MD5"), new EncryptRuleConfiguration(Collections.emptyList(), Collections.emptyMap()));
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertCheckSQLStatementWithoutToBeAlteredEncryptors() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("INVALID_TYPE"), createCurrentRuleConfiguration());
+ updater.checkSQLStatement(database, createSQLStatement("INVALID_TYPE"), createCurrentRuleConfiguration());
}
@Test(expected = InvalidRuleConfigurationException.class)
@@ -67,7 +67,7 @@ public final class AlterEncryptRuleStatementUpdaterTest {
"int varchar(10)", null, null, null, new AlgorithmSegment("test", new Properties()));
EncryptRuleSegment ruleSegment = new EncryptRuleSegment("t_encrypt", Collections.singleton(columnSegment), null);
AlterEncryptRuleStatement statement = new AlterEncryptRuleStatement(Collections.singleton(ruleSegment));
- updater.checkSQLStatement(databaseMetaData, statement, createCurrentRuleConfiguration());
+ updater.checkSQLStatement(database, statement, createCurrentRuleConfiguration());
}
private AlterEncryptRuleStatement createSQLStatement(final String encryptorName) {
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdaterTest.java
index 45fdef94e42..54c501a42e7 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdaterTest.java
@@ -27,7 +27,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidRuleConfigurationException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -41,18 +41,18 @@ import java.util.Properties;
public final class CreateEncryptRuleStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
private final CreateEncryptRuleStatementUpdater updater = new CreateEncryptRuleStatementUpdater();
@Test(expected = DuplicateRuleException.class)
public void assertCheckSQLStatementWithDuplicateEncryptRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("MD5"), getCurrentRuleConfig());
+ updater.checkSQLStatement(database, createSQLStatement("MD5"), getCurrentRuleConfig());
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertCheckSQLStatementWithoutToBeCreatedEncryptors() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("INVALID_TYPE"), null);
+ updater.checkSQLStatement(database, createSQLStatement("INVALID_TYPE"), null);
}
@Test(expected = InvalidRuleConfigurationException.class)
@@ -61,7 +61,7 @@ public final class CreateEncryptRuleStatementUpdaterTest {
"int varchar(10)", null, null, null, new AlgorithmSegment("test", new Properties()));
EncryptRuleSegment ruleSegment = new EncryptRuleSegment("t_encrypt", Collections.singleton(columnSegment), null);
CreateEncryptRuleStatement statement = new CreateEncryptRuleStatement(Collections.singleton(ruleSegment));
- updater.checkSQLStatement(databaseMetaData, statement, null);
+ updater.checkSQLStatement(database, statement, null);
}
private CreateEncryptRuleStatement createSQLStatement(final String encryptorName) {
diff --git a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/DropEncryptRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/DropEncryptRuleStatementUpdaterTest.java
index c05a4900574..2fb94af3198 100644
--- a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/DropEncryptRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler/update/DropEncryptRuleStatementUpdaterTest.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.encrypt.distsql.parser.statement.DropEncryptRul
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -47,19 +47,19 @@ import static org.mockito.Mockito.mock;
@RunWith(MockitoJUnitRunner.class)
public final class DropEncryptRuleStatementUpdaterTest {
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
-
private final DropEncryptRuleStatementUpdater updater = new DropEncryptRuleStatementUpdater();
+ @Mock(answer = Answers.RETURNS_DEEP_STUBS)
+ private ShardingSphereDatabase database;
+
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutCurrentRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("t_encrypt"), null);
+ updater.checkSQLStatement(database, createSQLStatement("t_encrypt"), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutToBeDroppedRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("t_encrypt"), new EncryptRuleConfiguration(Collections.emptyList(), Collections.emptyMap()));
+ updater.checkSQLStatement(database, createSQLStatement("t_encrypt"), new EncryptRuleConfiguration(Collections.emptyList(), Collections.emptyMap()));
}
@Test
@@ -85,7 +85,7 @@ public final class DropEncryptRuleStatementUpdaterTest {
EncryptRuleConfiguration ruleConfig = createCurrentRuleConfiguration();
DropEncryptRuleStatement statement = createSQLStatement("t_encrypt_1");
statement.setContainsExistClause(true);
- updater.checkSQLStatement(databaseMetaData, statement, mock(EncryptRuleConfiguration.class));
+ updater.checkSQLStatement(database, statement, mock(EncryptRuleConfiguration.class));
assertFalse(updater.updateCurrentRuleConfiguration(statement, ruleConfig));
assertThat(ruleConfig.getEncryptors().size(), is(1));
}
diff --git a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/route/ReadwriteSplittingSQLRouter.java b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/route/ReadwriteSplittingSQLRouter.java
index 4ae8619bd44..2a0cc598af3 100644
--- a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/route/ReadwriteSplittingSQLRouter.java
+++ b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/route/ReadwriteSplittingSQLRouter.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.readwritesplitting.route;
import org.apache.shardingsphere.infra.binder.LogicSQL;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.SQLRouter;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
@@ -40,7 +40,7 @@ import java.util.Optional;
public final class ReadwriteSplittingSQLRouter implements SQLRouter<ReadwriteSplittingRule> {
@Override
- public RouteContext createRouteContext(final LogicSQL logicSQL, final ShardingSphereDatabaseMetaData databaseMetaData, final ReadwriteSplittingRule rule, final ConfigurationProperties props) {
+ public RouteContext createRouteContext(final LogicSQL logicSQL, final ShardingSphereDatabase database, final ReadwriteSplittingRule rule, final ConfigurationProperties props) {
RouteContext result = new RouteContext();
ReadwriteSplittingDataSourceRule singleDataSourceRule = rule.getSingleDataSourceRule();
String dataSourceName = new ReadwriteSplittingDataSourceRouter(singleDataSourceRule).route(logicSQL.getSqlStatementContext());
@@ -50,7 +50,7 @@ public final class ReadwriteSplittingSQLRouter implements SQLRouter<ReadwriteSpl
@Override
public void decorateRouteContext(final RouteContext routeContext,
- final LogicSQL logicSQL, final ShardingSphereDatabaseMetaData databaseMetaData, final ReadwriteSplittingRule rule, final ConfigurationProperties props) {
+ final LogicSQL logicSQL, final ShardingSphereDatabase database, final ReadwriteSplittingRule rule, final ConfigurationProperties props) {
Collection<RouteUnit> toBeRemoved = new LinkedList<>();
Collection<RouteUnit> toBeAdded = new LinkedList<>();
for (RouteUnit each : routeContext.getRouteUnits()) {
diff --git a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/test/java/org/apache/shardingsphere/readwritesplitting/route/ReadwriteSplittingSQLRouterTest.java b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/test/java/org/apache/shardingsphere/readwritesplitting/route/ReadwriteSplittingSQLRouterTest.java
index ba4ec9a8387..35af967b28d 100644
--- a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/test/java/org/apache/shardingsphere/readwritesplitting/route/ReadwriteSplittingSQLRouterTest.java
+++ b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/test/java/org/apache/shardingsphere/readwritesplitting/route/ReadwriteSplittingSQLRouterTest.java
@@ -24,8 +24,8 @@ import org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementConte
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
-import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabaseMetaData;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
import org.apache.shardingsphere.infra.route.SQLRouterFactory;
@@ -94,9 +94,9 @@ public final class ReadwriteSplittingSQLRouterTest {
public void assertCreateRouteContextToPrimaryWithoutRouteUnits() {
LogicSQL logicSQL = new LogicSQL(mock(SQLStatementContext.class), "", Collections.emptyList());
ShardingSphereRuleMetaData ruleMetaData = new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule));
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- RouteContext actual = sqlRouter.createRouteContext(logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ RouteContext actual = sqlRouter.createRouteContext(logicSQL, database, rule, new ConfigurationProperties(new Properties()));
assertThat(actual.getRouteUnits().size(), is(1));
RouteUnit routeUnit = actual.getRouteUnits().iterator().next();
assertThat(routeUnit.getDataSourceMapper().getLogicName(), is(DATASOURCE_NAME));
@@ -110,9 +110,9 @@ public final class ReadwriteSplittingSQLRouterTest {
RouteContext actual = mockRouteContext();
LogicSQL logicSQL = new LogicSQL(mock(SQLStatementContext.class), "", Collections.emptyList());
ShardingSphereRuleMetaData ruleMetaData = new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule));
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- sqlRouter.decorateRouteContext(actual, logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ sqlRouter.decorateRouteContext(actual, logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(NONE_READWRITE_SPLITTING_DATASOURCE_NAME));
assertThat(routedDataSourceNames.next(), is(WRITE_DATASOURCE));
@@ -125,9 +125,9 @@ public final class ReadwriteSplittingSQLRouterTest {
when(selectStatement.getLock()).thenReturn(Optional.empty());
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
ShardingSphereRuleMetaData ruleMetaData = new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule));
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- RouteContext actual = sqlRouter.createRouteContext(logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ RouteContext actual = sqlRouter.createRouteContext(logicSQL, database, rule, new ConfigurationProperties(new Properties()));
assertThat(actual.getRouteUnits().size(), is(1));
RouteUnit routeUnit = actual.getRouteUnits().iterator().next();
assertThat(routeUnit.getDataSourceMapper().getLogicName(), is(DATASOURCE_NAME));
@@ -144,9 +144,9 @@ public final class ReadwriteSplittingSQLRouterTest {
when(selectStatement.getLock()).thenReturn(Optional.empty());
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
ShardingSphereRuleMetaData ruleMetaData = new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule));
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- sqlRouter.decorateRouteContext(actual, logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ sqlRouter.decorateRouteContext(actual, logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(NONE_READWRITE_SPLITTING_DATASOURCE_NAME));
assertThat(routedDataSourceNames.next(), is(READ_DATASOURCE));
@@ -159,9 +159,9 @@ public final class ReadwriteSplittingSQLRouterTest {
when(selectStatement.getLock()).thenReturn(Optional.of(mock(LockSegment.class)));
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
ShardingSphereRuleMetaData ruleMetaData = new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule));
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- RouteContext actual = sqlRouter.createRouteContext(logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ RouteContext actual = sqlRouter.createRouteContext(logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(WRITE_DATASOURCE));
}
@@ -174,9 +174,9 @@ public final class ReadwriteSplittingSQLRouterTest {
when(selectStatement.getLock()).thenReturn(Optional.of(mock(LockSegment.class)));
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
ShardingSphereRuleMetaData ruleMetaData = new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule));
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- sqlRouter.decorateRouteContext(actual, logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ sqlRouter.decorateRouteContext(actual, logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(NONE_READWRITE_SPLITTING_DATASOURCE_NAME));
assertThat(routedDataSourceNames.next(), is(WRITE_DATASOURCE));
@@ -187,9 +187,9 @@ public final class ReadwriteSplittingSQLRouterTest {
when(sqlStatementContext.getSqlStatement()).thenReturn(mock(InsertStatement.class));
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
ShardingSphereRuleMetaData ruleMetaData = new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule));
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- RouteContext actual = sqlRouter.createRouteContext(logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ RouteContext actual = sqlRouter.createRouteContext(logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(WRITE_DATASOURCE));
}
@@ -200,16 +200,16 @@ public final class ReadwriteSplittingSQLRouterTest {
when(sqlStatementContext.getSqlStatement()).thenReturn(insertStatement);
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
ShardingSphereRuleMetaData ruleMetaData = new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule));
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- RouteContext actual = sqlRouter.createRouteContext(logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ RouteContext actual = sqlRouter.createRouteContext(logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(WRITE_DATASOURCE));
MySQLSelectStatement selectStatement = mock(MySQLSelectStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(selectStatement);
when(selectStatement.getLock()).thenReturn(Optional.empty());
logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
- actual = sqlRouter.createRouteContext(logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ actual = sqlRouter.createRouteContext(logicSQL, database, rule, new ConfigurationProperties(new Properties()));
routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(READ_DATASOURCE));
}
@@ -222,9 +222,9 @@ public final class ReadwriteSplittingSQLRouterTest {
when(sqlStatementContext.isHintWriteRouteOnly()).thenReturn(true);
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, "", Collections.emptyList());
ShardingSphereRuleMetaData ruleMetaData = new ShardingSphereRuleMetaData(Collections.emptyList(), Collections.singleton(rule));
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.emptyMap()));
- RouteContext actual = sqlRouter.createRouteContext(logicSQL, databaseMetaData, rule, new ConfigurationProperties(new Properties()));
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ mock(DatabaseType.class), mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS), ruleMetaData, new ShardingSphereDatabaseMetaData(Collections.emptyMap()));
+ RouteContext actual = sqlRouter.createRouteContext(logicSQL, database, rule, new ConfigurationProperties(new Properties()));
Iterator<String> routedDataSourceNames = actual.getActualDataSourceNames().iterator();
assertThat(routedDataSourceNames.next(), is(WRITE_DATASOURCE));
}
diff --git a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/query/ReadwriteSplittingRuleQueryResultSet.java b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwrite [...]
index 4761858f928..bff1422f728 100644
--- a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/query/ReadwriteSplittingRuleQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/query/ReadwriteSplittingRuleQueryResultSet.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.readwritesplitting.distsql.handler.query;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.constant.ExportableConstants;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.properties.PropertiesConverter;
import org.apache.shardingsphere.infra.rule.identifier.type.ExportableRule;
import org.apache.shardingsphere.readwritesplitting.api.ReadwriteSplittingRuleConfiguration;
@@ -50,14 +50,14 @@ public final class ReadwriteSplittingRuleQueryResultSet implements DistSQLResult
private Map<String, Map<String, String>> exportableDataSourceMap = Collections.emptyMap();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ReadwriteSplittingRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().findRuleConfiguration(ReadwriteSplittingRuleConfiguration.class).stream().findAny();
- buildExportableMap(databaseMetaData);
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ReadwriteSplittingRuleConfiguration> ruleConfig = database.getRuleMetaData().findRuleConfiguration(ReadwriteSplittingRuleConfiguration.class).stream().findAny();
+ buildExportableMap(database);
ruleConfig.ifPresent(optional -> data = buildData(optional).iterator());
}
- private void buildExportableMap(final ShardingSphereDatabaseMetaData databaseMetaData) {
- Optional<ExportableRule> exportableRule = getExportableRule(databaseMetaData);
+ private void buildExportableMap(final ShardingSphereDatabase database) {
+ Optional<ExportableRule> exportableRule = getExportableRule(database);
exportableRule.ifPresent(optional -> {
Map<String, Object> exportable = exportableRule.get()
.export(Arrays.asList(ExportableConstants.EXPORTABLE_KEY_AUTO_AWARE_DATA_SOURCE, ExportableConstants.EXPORTABLE_KEY_ENABLED_DATA_SOURCE));
@@ -66,8 +66,8 @@ public final class ReadwriteSplittingRuleQueryResultSet implements DistSQLResult
});
}
- private Optional<ExportableRule> getExportableRule(final ShardingSphereDatabaseMetaData databaseMetaData) {
- return databaseMetaData.getRuleMetaData().findRules(ExportableRule.class).stream()
+ private Optional<ExportableRule> getExportableRule(final ShardingSphereDatabase database) {
+ return database.getRuleMetaData().findRules(ExportableRule.class).stream()
.filter(each -> each.containExportableKey(Arrays.asList(ExportableConstants.EXPORTABLE_KEY_AUTO_AWARE_DATA_SOURCE, ExportableConstants.EXPORTABLE_KEY_ENABLED_DATA_SOURCE))).findAny();
}
diff --git a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/AlterReadwriteSplittingRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/r [...]
index 53bb0ab3bd9..33d69aa058a 100644
--- a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/AlterReadwriteSplittingRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/AlterReadwriteSplittingRuleStatementUpdater.java
@@ -26,7 +26,7 @@ import org.apache.shardingsphere.infra.distsql.exception.resource.RequiredResour
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.rule.identifier.type.ExportableRule;
import org.apache.shardingsphere.readwritesplitting.api.ReadwriteSplittingRuleConfiguration;
import org.apache.shardingsphere.readwritesplitting.api.rule.ReadwriteSplittingDataSourceRuleConfiguration;
@@ -50,12 +50,12 @@ import java.util.stream.Collectors;
public final class AlterReadwriteSplittingRuleStatementUpdater implements RuleDefinitionAlterUpdater<AlterReadwriteSplittingRuleStatement, ReadwriteSplittingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterReadwriteSplittingRuleStatement sqlStatement,
+ public void checkSQLStatement(final ShardingSphereDatabase database, final AlterReadwriteSplittingRuleStatement sqlStatement,
final ReadwriteSplittingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkToBeAlteredRules(databaseName, sqlStatement, currentRuleConfig);
- checkToBeAlteredResources(databaseName, sqlStatement, databaseMetaData);
+ checkToBeAlteredResources(databaseName, sqlStatement, database);
checkToBeAlteredLoadBalancer(sqlStatement);
}
@@ -86,8 +86,7 @@ public final class AlterReadwriteSplittingRuleStatementUpdater implements RuleDe
}
}
- private void checkToBeAlteredResources(final String databaseName,
- final AlterReadwriteSplittingRuleStatement sqlStatement, final ShardingSphereDatabaseMetaData databaseMetaData) throws DistSQLException {
+ private void checkToBeAlteredResources(final String databaseName, final AlterReadwriteSplittingRuleStatement sqlStatement, final ShardingSphereDatabase database) throws DistSQLException {
Collection<String> requireResources = new LinkedHashSet<>();
Collection<String> requireDiscoverableResources = new LinkedHashSet<>();
sqlStatement.getRules().forEach(each -> {
@@ -98,17 +97,17 @@ public final class AlterReadwriteSplittingRuleStatementUpdater implements RuleDe
requireDiscoverableResources.add(each.getAutoAwareResource());
}
});
- Collection<String> notExistResources = databaseMetaData.getResource().getNotExistedResources(requireResources);
+ Collection<String> notExistResources = database.getResource().getNotExistedResources(requireResources);
DistSQLException.predictionThrow(notExistResources.isEmpty(), () -> new RequiredResourceMissedException(databaseName, notExistResources));
- Collection<String> logicResources = getLogicResources(databaseMetaData);
+ Collection<String> logicResources = getLogicResources(database);
Set<String> notExistLogicResources = requireDiscoverableResources.stream().filter(each -> !logicResources.contains(each)).collect(Collectors.toSet());
DistSQLException.predictionThrow(notExistLogicResources.isEmpty(), () -> new RequiredResourceMissedException(databaseName, notExistLogicResources));
}
@SuppressWarnings("unchecked")
- private Collection<String> getLogicResources(final ShardingSphereDatabaseMetaData databaseMetaData) {
+ private Collection<String> getLogicResources(final ShardingSphereDatabase database) {
Collection<String> result = new LinkedHashSet<>();
- Optional<ExportableRule> exportableRule = databaseMetaData.getRuleMetaData().findRules(ExportableRule.class).stream()
+ Optional<ExportableRule> exportableRule = database.getRuleMetaData().findRules(ExportableRule.class).stream()
.filter(each -> each.containExportableKey(Collections.singletonList(ExportableConstants.EXPORTABLE_KEY_PRIMARY_DATA_SOURCE))).findAny();
exportableRule.ifPresent(optional -> {
Map<String, Object> exportData = optional.export(Collections.singletonList(ExportableConstants.EXPORTABLE_KEY_PRIMARY_DATA_SOURCE));
diff --git a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/CreateReadwriteSplittingRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/ [...]
index 7ed8ed2af64..c318d1574b2 100644
--- a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/CreateReadwriteSplittingRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/CreateReadwriteSplittingRuleStatementUpdater.java
@@ -25,7 +25,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleExcep
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidRuleConfigurationException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.infra.rule.identifier.type.ExportableRule;
import org.apache.shardingsphere.readwritesplitting.api.ReadwriteSplittingRuleConfiguration;
@@ -51,11 +51,11 @@ import java.util.stream.Collectors;
public final class CreateReadwriteSplittingRuleStatementUpdater implements RuleDefinitionCreateUpdater<CreateReadwriteSplittingRuleStatement, ReadwriteSplittingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateReadwriteSplittingRuleStatement sqlStatement,
- final ReadwriteSplittingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
- checkDuplicateRuleNames(databaseName, sqlStatement, currentRuleConfig, databaseMetaData.getResource());
- checkToBeCreatedResources(databaseName, sqlStatement, databaseMetaData);
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final CreateReadwriteSplittingRuleStatement sqlStatement, final ReadwriteSplittingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
+ checkDuplicateRuleNames(databaseName, sqlStatement, currentRuleConfig, database.getResource());
+ checkToBeCreatedResources(databaseName, sqlStatement, database);
checkToBeCreatedLoadBalancers(sqlStatement);
}
@@ -78,8 +78,7 @@ public final class CreateReadwriteSplittingRuleStatementUpdater implements RuleD
}
}
- private void checkToBeCreatedResources(final String databaseName,
- final CreateReadwriteSplittingRuleStatement sqlStatement, final ShardingSphereDatabaseMetaData databaseMetaData) throws DistSQLException {
+ private void checkToBeCreatedResources(final String databaseName, final CreateReadwriteSplittingRuleStatement sqlStatement, final ShardingSphereDatabase database) throws DistSQLException {
Collection<String> requireResources = new LinkedHashSet<>();
Collection<String> requireDiscoverableResources = new LinkedHashSet<>();
sqlStatement.getRules().forEach(each -> {
@@ -90,17 +89,17 @@ public final class CreateReadwriteSplittingRuleStatementUpdater implements RuleD
requireDiscoverableResources.add(each.getAutoAwareResource());
}
});
- Collection<String> notExistResources = databaseMetaData.getResource().getNotExistedResources(requireResources);
+ Collection<String> notExistResources = database.getResource().getNotExistedResources(requireResources);
DistSQLException.predictionThrow(notExistResources.isEmpty(), () -> new RequiredResourceMissedException(databaseName, notExistResources));
- Collection<String> logicResources = getLogicResources(databaseMetaData);
+ Collection<String> logicResources = getLogicResources(database);
Set<String> notExistLogicResources = requireDiscoverableResources.stream().filter(each -> !logicResources.contains(each)).collect(Collectors.toSet());
DistSQLException.predictionThrow(notExistLogicResources.isEmpty(), () -> new RequiredResourceMissedException(databaseName, notExistLogicResources));
}
@SuppressWarnings("unchecked")
- private Collection<String> getLogicResources(final ShardingSphereDatabaseMetaData databaseMetaData) {
+ private Collection<String> getLogicResources(final ShardingSphereDatabase database) {
Collection<String> result = new LinkedHashSet<>();
- Optional<ExportableRule> exportableRule = databaseMetaData.getRuleMetaData().findRules(ExportableRule.class).stream()
+ Optional<ExportableRule> exportableRule = database.getRuleMetaData().findRules(ExportableRule.class).stream()
.filter(each -> each.containExportableKey(Collections.singletonList(ExportableConstants.EXPORTABLE_KEY_PRIMARY_DATA_SOURCE))).findAny();
exportableRule.ifPresent(optional -> {
Map<String, Object> exportData = optional.export(Collections.singletonList(ExportableConstants.EXPORTABLE_KEY_PRIMARY_DATA_SOURCE));
diff --git a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/DropReadwriteSplittingRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/re [...]
index 8c9eaf8b192..cefbfebaa41 100644
--- a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/DropReadwriteSplittingRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/DropReadwriteSplittingRuleStatementUpdater.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissed
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDefinitionViolationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleInUsedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.readwritesplitting.api.ReadwriteSplittingRuleConfiguration;
import org.apache.shardingsphere.readwritesplitting.api.rule.ReadwriteSplittingDataSourceRuleConfiguration;
import org.apache.shardingsphere.readwritesplitting.distsql.parser.statement.DropReadwriteSplittingRuleStatement;
@@ -38,15 +38,15 @@ import java.util.stream.Collectors;
public final class DropReadwriteSplittingRuleStatementUpdater implements RuleDefinitionDropUpdater<DropReadwriteSplittingRuleStatement, ReadwriteSplittingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropReadwriteSplittingRuleStatement sqlStatement,
+ public void checkSQLStatement(final ShardingSphereDatabase database, final DropReadwriteSplittingRuleStatement sqlStatement,
final ReadwriteSplittingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
- String databaseName = databaseMetaData.getDatabase().getName();
if (!isExistRuleConfig(currentRuleConfig) && sqlStatement.isContainsExistClause()) {
return;
}
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkToBeDroppedRuleNames(databaseName, sqlStatement, currentRuleConfig);
- checkToBeDroppedInUsed(databaseName, sqlStatement, databaseMetaData);
+ checkToBeDroppedInUsed(databaseName, sqlStatement, database);
}
private void checkCurrentRuleConfiguration(final String databaseName, final ReadwriteSplittingRuleConfiguration currentRuleConfig) throws RequiredRuleMissedException {
@@ -67,9 +67,8 @@ public final class DropReadwriteSplittingRuleStatementUpdater implements RuleDef
}
}
- private void checkToBeDroppedInUsed(final String databaseName,
- final DropReadwriteSplittingRuleStatement sqlStatement, final ShardingSphereDatabaseMetaData databaseMetaData) throws RuleInUsedException {
- Collection<String> resourceBeUsed = databaseMetaData.getRuleMetaData().findRuleConfiguration(ResourceRequiredRuleConfiguration.class).stream()
+ private void checkToBeDroppedInUsed(final String databaseName, final DropReadwriteSplittingRuleStatement sqlStatement, final ShardingSphereDatabase database) throws RuleInUsedException {
+ Collection<String> resourceBeUsed = database.getRuleMetaData().findRuleConfiguration(ResourceRequiredRuleConfiguration.class).stream()
.map(ResourceRequiredRuleConfiguration::getRequiredResource).flatMap(Collection::stream).collect(Collectors.toSet());
Collection<String> ruleInUsed = sqlStatement.getRuleNames().stream().filter(resourceBeUsed::contains).collect(Collectors.toSet());
if (!ruleInUsed.isEmpty()) {
diff --git a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/query/ReadwriteSplittingRuleQueryResultSetTest.java b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readw [...]
index 1937ee11f51..418de31197b 100644
--- a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/query/ReadwriteSplittingRuleQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/query/ReadwriteSplittingRuleQueryResultSetTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.readwritesplitting.distsql.handler.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.constant.ExportableConstants;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.rule.identifier.type.ExportableRule;
import org.apache.shardingsphere.readwritesplitting.api.ReadwriteSplittingRuleConfiguration;
import org.apache.shardingsphere.readwritesplitting.api.rule.ReadwriteSplittingDataSourceRuleConfiguration;
@@ -46,13 +46,13 @@ public final class ReadwriteSplittingRuleQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
ExportableRule exportableRule = mock(ExportableRule.class);
- when(databaseMetaData.getRuleMetaData().findRules(any())).thenReturn(Collections.singletonList(exportableRule));
+ when(database.getRuleMetaData().findRules(any())).thenReturn(Collections.singletonList(exportableRule));
when(exportableRule.export(anyCollection())).thenReturn(Collections.emptyMap());
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfiguration()));
+ when(database.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfiguration()));
ReadwriteSplittingRuleQueryResultSet resultSet = new ReadwriteSplittingRuleQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowReadwriteSplittingRulesStatement.class));
+ resultSet.init(database, mock(ShowReadwriteSplittingRulesStatement.class));
Collection<Object> actual = resultSet.getRowData();
assertThat(actual.size(), is(6));
assertTrue(actual.contains("readwrite_ds"));
@@ -72,13 +72,13 @@ public final class ReadwriteSplittingRuleQueryResultSetTest {
@Test
public void assertGetRowDataWithoutLoadBalancer() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
ExportableRule exportableRule = mock(ExportableRule.class);
- when(databaseMetaData.getRuleMetaData().findRules(any())).thenReturn(Collections.singletonList(exportableRule));
+ when(database.getRuleMetaData().findRules(any())).thenReturn(Collections.singletonList(exportableRule));
when(exportableRule.export(anyCollection())).thenReturn(Collections.emptyMap());
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfigurationWithoutLoadBalancer()));
+ when(database.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfigurationWithoutLoadBalancer()));
ReadwriteSplittingRuleQueryResultSet resultSet = new ReadwriteSplittingRuleQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowReadwriteSplittingRulesStatement.class));
+ resultSet.init(database, mock(ShowReadwriteSplittingRulesStatement.class));
Collection<Object> actual = resultSet.getRowData();
assertThat(actual.size(), is(6));
assertTrue(actual.contains("readwrite_ds"));
@@ -101,15 +101,15 @@ public final class ReadwriteSplittingRuleQueryResultSetTest {
@Test
public void assertGetRowDataWithAutoAwareDataSource() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
ExportableRule exportableRule = mock(ExportableRule.class);
when(exportableRule.containExportableKey(anyCollection())).thenReturn(true);
- when(databaseMetaData.getRuleMetaData().findRules(any())).thenReturn(Collections.singletonList(exportableRule));
+ when(database.getRuleMetaData().findRules(any())).thenReturn(Collections.singletonList(exportableRule));
when(exportableRule.export(anyCollection())).thenReturn(
Collections.singletonMap(ExportableConstants.EXPORTABLE_KEY_AUTO_AWARE_DATA_SOURCE, Collections.singletonMap("readwrite_ds", getAutoAwareDataSources())));
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfigurationWithAutoAwareDataSource()));
+ when(database.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfigurationWithAutoAwareDataSource()));
ReadwriteSplittingRuleQueryResultSet resultSet = new ReadwriteSplittingRuleQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowReadwriteSplittingRulesStatement.class));
+ resultSet.init(database, mock(ShowReadwriteSplittingRulesStatement.class));
Collection<Object> actual = resultSet.getRowData();
assertThat(actual.size(), is(6));
assertTrue(actual.contains("readwrite_ds"));
diff --git a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/AlterReadwriteSplittingRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphe [...]
index 9b204892dc0..0a2cbe1494a 100644
--- a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/AlterReadwriteSplittingRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/AlterReadwriteSplittingRuleStatementUpdaterTest.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.resource.RequiredResourceMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.readwritesplitting.api.ReadwriteSplittingRuleConfiguration;
import org.apache.shardingsphere.readwritesplitting.api.rule.ReadwriteSplittingDataSourceRuleConfiguration;
@@ -46,7 +46,7 @@ import static org.mockito.Mockito.when;
public final class AlterReadwriteSplittingRuleStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShardingSphereResource resource;
@@ -55,29 +55,29 @@ public final class AlterReadwriteSplittingRuleStatementUpdaterTest {
@Before
public void before() {
- when(databaseMetaData.getResource()).thenReturn(resource);
+ when(database.getResource()).thenReturn(resource);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutCurrentRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("TEST"), null);
+ updater.checkSQLStatement(database, createSQLStatement("TEST"), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutToBeAlteredRules() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("TEST"), new ReadwriteSplittingRuleConfiguration(Collections.emptyList(), Collections.emptyMap()));
+ updater.checkSQLStatement(database, createSQLStatement("TEST"), new ReadwriteSplittingRuleConfiguration(Collections.emptyList(), Collections.emptyMap()));
}
@Test(expected = RequiredResourceMissedException.class)
public void assertCheckSQLStatementWithoutExistedResources() throws DistSQLException {
when(resource.getNotExistedResources(any())).thenReturn(Collections.singleton("read_ds_0"));
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("TEST"), createCurrentRuleConfiguration());
+ updater.checkSQLStatement(database, createSQLStatement("TEST"), createCurrentRuleConfiguration());
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertCheckSQLStatementWithoutToBeAlteredLoadBalancers() throws DistSQLException {
- when(databaseMetaData.getRuleMetaData().findRules(any())).thenReturn(Collections.emptyList());
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("INVALID_TYPE"), createCurrentRuleConfiguration());
+ when(database.getRuleMetaData().findRules(any())).thenReturn(Collections.emptyList());
+ updater.checkSQLStatement(database, createSQLStatement("INVALID_TYPE"), createCurrentRuleConfiguration());
}
private AlterReadwriteSplittingRuleStatement createSQLStatement(final String loadBalancerTypeName) {
diff --git a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/CreateReadwriteSplittingRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsph [...]
index c25f9e3f6b5..16a10ddb794 100644
--- a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/CreateReadwriteSplittingRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/CreateReadwriteSplittingRuleStatementUpdaterTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.distsql.exception.resource.RequiredResour
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidRuleConfigurationException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.readwritesplitting.api.ReadwriteSplittingRuleConfiguration;
import org.apache.shardingsphere.readwritesplitting.api.rule.ReadwriteSplittingDataSourceRuleConfiguration;
@@ -49,7 +49,7 @@ import static org.mockito.Mockito.when;
public final class CreateReadwriteSplittingRuleStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShardingSphereResource resource;
@@ -58,34 +58,34 @@ public final class CreateReadwriteSplittingRuleStatementUpdaterTest {
@Before
public void before() {
- when(databaseMetaData.getResource()).thenReturn(resource);
+ when(database.getResource()).thenReturn(resource);
}
@Test(expected = DuplicateRuleException.class)
public void assertCheckSQLStatementWithDuplicateRuleNames() throws DistSQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getResource().getDataSources().keySet()).thenReturn(Collections.emptySet());
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("TEST"), createCurrentRuleConfiguration());
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getResource().getDataSources().keySet()).thenReturn(Collections.emptySet());
+ updater.checkSQLStatement(database, createSQLStatement("TEST"), createCurrentRuleConfiguration());
}
@Test(expected = InvalidRuleConfigurationException.class)
public void assertCheckSQLStatementWithDuplicateResource() throws DistSQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getResource()).thenReturn(resource);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getResource()).thenReturn(resource);
when(resource.getDataSources()).thenReturn(Collections.singletonMap("write_ds", null));
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("write_ds", "TEST"), createCurrentRuleConfiguration());
+ updater.checkSQLStatement(database, createSQLStatement("write_ds", "TEST"), createCurrentRuleConfiguration());
}
@Test(expected = RequiredResourceMissedException.class)
public void assertCheckSQLStatementWithoutExistedResources() throws DistSQLException {
when(resource.getNotExistedResources(any())).thenReturn(Arrays.asList("read_ds_0", "read_ds_1"));
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("TEST"), null);
+ updater.checkSQLStatement(database, createSQLStatement("TEST"), null);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertCheckSQLStatementWithoutToBeCreatedLoadBalancers() throws DistSQLException {
- when(databaseMetaData.getRuleMetaData().findRules(any())).thenReturn(Collections.emptyList());
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("INVALID_TYPE"), null);
+ when(database.getRuleMetaData().findRules(any())).thenReturn(Collections.emptyList());
+ updater.checkSQLStatement(database, createSQLStatement("INVALID_TYPE"), null);
}
private CreateReadwriteSplittingRuleStatement createSQLStatement(final String loadBalancerName) {
diff --git a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/DropReadwriteSplittingRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingspher [...]
index 788394af2dc..667af1c2115 100644
--- a/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/DropReadwriteSplittingRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/DropReadwriteSplittingRuleStatementUpdaterTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.config.function.ResourceRequiredRuleConfi
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDefinitionViolationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleInUsedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.readwritesplitting.api.ReadwriteSplittingRuleConfiguration;
import org.apache.shardingsphere.readwritesplitting.api.rule.ReadwriteSplittingDataSourceRuleConfiguration;
import org.apache.shardingsphere.readwritesplitting.distsql.parser.statement.DropReadwriteSplittingRuleStatement;
@@ -51,31 +51,31 @@ public final class DropReadwriteSplittingRuleStatementUpdaterTest {
private final DropReadwriteSplittingRuleStatementUpdater updater = new DropReadwriteSplittingRuleStatementUpdater();
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutCurrentRule() throws RuleDefinitionViolationException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), null);
+ updater.checkSQLStatement(database, createSQLStatement(), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutToBeDroppedRule() throws RuleDefinitionViolationException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), new ReadwriteSplittingRuleConfiguration(Collections.emptyList(), Collections.emptyMap()));
+ updater.checkSQLStatement(database, createSQLStatement(), new ReadwriteSplittingRuleConfiguration(Collections.emptyList(), Collections.emptyMap()));
}
@Test
public void assertCheckSQLStatementWithIfExists() throws RuleDefinitionViolationException {
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(ResourceRequiredRuleConfiguration.class)).thenReturn(Collections.emptyList());
- updater.checkSQLStatement(databaseMetaData, new DropReadwriteSplittingRuleStatement(true, Collections.singleton("readwrite_ds")),
+ when(database.getRuleMetaData().findRuleConfiguration(ResourceRequiredRuleConfiguration.class)).thenReturn(Collections.emptyList());
+ updater.checkSQLStatement(database, new DropReadwriteSplittingRuleStatement(true, Collections.singleton("readwrite_ds")),
new ReadwriteSplittingRuleConfiguration(Collections.emptyList(), Collections.emptyMap()));
- updater.checkSQLStatement(databaseMetaData, new DropReadwriteSplittingRuleStatement(true, Collections.singleton("readwrite_ds")), null);
+ updater.checkSQLStatement(database, new DropReadwriteSplittingRuleStatement(true, Collections.singleton("readwrite_ds")), null);
}
@Test(expected = RuleInUsedException.class)
public void assertCheckSQLStatementWithInUsed() throws RuleDefinitionViolationException {
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(any()))
+ when(database.getRuleMetaData().findRuleConfiguration(any()))
.thenReturn(Collections.singletonList((ResourceRequiredRuleConfiguration) () -> Collections.singleton("readwrite_ds")));
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), createCurrentRuleConfiguration());
+ updater.checkSQLStatement(database, createSQLStatement(), createCurrentRuleConfiguration());
}
@Test
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-core/src/main/java/org/apache/shardingsphere/shadow/route/ShadowSQLRouter.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-core/src/main/java/org/apache/shardingsphere/shadow/route/ShadowSQLRouter.java
index 941b100ddad..2078716aade 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-core/src/main/java/org/apache/shardingsphere/shadow/route/ShadowSQLRouter.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-core/src/main/java/org/apache/shardingsphere/shadow/route/ShadowSQLRouter.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.shadow.route;
import org.apache.shardingsphere.infra.binder.LogicSQL;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.SQLRouter;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.shadow.constant.ShadowOrder;
@@ -32,14 +32,14 @@ import org.apache.shardingsphere.shadow.rule.ShadowRule;
public final class ShadowSQLRouter implements SQLRouter<ShadowRule> {
@Override
- public RouteContext createRouteContext(final LogicSQL logicSQL, final ShardingSphereDatabaseMetaData databaseMetaData, final ShadowRule rule, final ConfigurationProperties props) {
+ public RouteContext createRouteContext(final LogicSQL logicSQL, final ShardingSphereDatabase database, final ShadowRule rule, final ConfigurationProperties props) {
// TODO
return new RouteContext();
}
@Override
public void decorateRouteContext(final RouteContext routeContext,
- final LogicSQL logicSQL, final ShardingSphereDatabaseMetaData databaseMetaData, final ShadowRule rule, final ConfigurationProperties props) {
+ final LogicSQL logicSQL, final ShardingSphereDatabase database, final ShadowRule rule, final ConfigurationProperties props) {
ShadowRouteEngineFactory.newInstance(logicSQL).route(routeContext, rule);
}
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-core/src/test/java/org/apache/shardingsphere/shadow/route/ShadowSQLRouterTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-core/src/test/java/org/apache/shardingsphere/shadow/route/ShadowSQLRouterTest.java
index 608c84f80d5..7ff71c9f634 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-core/src/test/java/org/apache/shardingsphere/shadow/route/ShadowSQLRouterTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-core/src/test/java/org/apache/shardingsphere/shadow/route/ShadowSQLRouterTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.shadow.route;
import org.apache.shardingsphere.infra.binder.LogicSQL;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.rule.ShadowRule;
import org.junit.Test;
@@ -30,6 +30,6 @@ public final class ShadowSQLRouterTest {
@Test
public void assertCreateRouteContext() {
- assertNotNull(new ShadowSQLRouter().createRouteContext(mock(LogicSQL.class), mock(ShardingSphereDatabaseMetaData.class), mock(ShadowRule.class), mock(ConfigurationProperties.class)));
+ assertNotNull(new ShadowSQLRouter().createRouteContext(mock(LogicSQL.class), mock(ShardingSphereDatabase.class), mock(ShadowRule.class), mock(ConfigurationProperties.class)));
}
}
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/checker/ShadowRuleStatementChecker.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/checker/ShadowRuleStatementChecker.java
index 3ba6dfe11f3..6e4e22275f1 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/checker/ShadowRuleStatementChecker.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/checker/ShadowRuleStatementChecker.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.resource.RequiredResourceMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.distsql.parser.segment.ShadowAlgorithmSegment;
import java.util.Collection;
@@ -53,12 +53,12 @@ public class ShadowRuleStatementChecker {
* Check if resources exist in meta data.
*
* @param resources resource being checked
- * @param databaseMetaData database meta rules
+ * @param database database
* @param databaseName database name
* @throws DistSQLException DistSQL exception
*/
- public static void checkResourceExist(final Collection<String> resources, final ShardingSphereDatabaseMetaData databaseMetaData, final String databaseName) throws DistSQLException {
- Collection<String> notExistedResources = databaseMetaData.getResource().getNotExistedResources(resources);
+ public static void checkResourceExist(final Collection<String> resources, final ShardingSphereDatabase database, final String databaseName) throws DistSQLException {
+ Collection<String> notExistedResources = database.getResource().getNotExistedResources(resources);
DistSQLException.predictionThrow(notExistedResources.isEmpty(), () -> new RequiredResourceMissedException(databaseName, notExistedResources));
}
@@ -81,8 +81,8 @@ public class ShadowRuleStatementChecker {
* @param thrower thrower
* @throws DistSQLException DistSQL exception
*/
- public static void checkRulesExist(final Collection<String> requireRules, final Collection<String> currentRules,
- final Function<Collection<String>, DistSQLException> thrower) throws DistSQLException {
+ public static void checkRulesExist(final Collection<String> requireRules,
+ final Collection<String> currentRules, final Function<Collection<String>, DistSQLException> thrower) throws DistSQLException {
ShadowRuleStatementChecker.checkAnyDifferent(requireRules, currentRules, thrower);
}
@@ -94,8 +94,8 @@ public class ShadowRuleStatementChecker {
* @param thrower thrower
* @throws DistSQLException DistSQL exception
*/
- public static void checkAlgorithmExist(final Collection<String> requireAlgorithms, final Collection<String> currentAlgorithms,
- final Function<Collection<String>, DistSQLException> thrower) throws DistSQLException {
+ public static void checkAlgorithmExist(final Collection<String> requireAlgorithms,
+ final Collection<String> currentAlgorithms, final Function<Collection<String>, DistSQLException> thrower) throws DistSQLException {
ShadowRuleStatementChecker.checkAnyDifferent(requireAlgorithms, currentAlgorithms, thrower);
}
@@ -119,8 +119,8 @@ public class ShadowRuleStatementChecker {
* @param thrower exception thrower
* @throws DistSQLException DistSQL exception
*/
- public static void checkAnyDuplicate(final Collection<String> requireRules, final Collection<String> currentRules,
- final Function<Collection<String>, DistSQLException> thrower) throws DistSQLException {
+ public static void checkAnyDuplicate(final Collection<String> requireRules,
+ final Collection<String> currentRules, final Function<Collection<String>, DistSQLException> thrower) throws DistSQLException {
Collection<String> identical = getIdentical(requireRules, currentRules);
DistSQLException.predictionThrow(identical.isEmpty(), () -> thrower.apply(identical));
}
@@ -133,8 +133,8 @@ public class ShadowRuleStatementChecker {
* @param thrower exception thrower
* @throws DistSQLException DistSQL exception
*/
- public static void checkAnyDifferent(final Collection<String> requireRules, final Collection<String> currentRules,
- final Function<Collection<String>, DistSQLException> thrower) throws DistSQLException {
+ public static void checkAnyDifferent(final Collection<String> requireRules,
+ final Collection<String> currentRules, final Function<Collection<String>, DistSQLException> thrower) throws DistSQLException {
Collection<String> different = getDifferent(requireRules, currentRules);
DistSQLException.predictionThrow(different.isEmpty(), () -> thrower.apply(different));
}
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowAlgorithmQueryResultSet.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowAlgorithmQueryResultSet.java
index 3202cf18034..c976d2a36ce 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowAlgorithmQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowAlgorithmQueryResultSet.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.shadow.distsql.handler.query;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.properties.PropertiesConverter;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.parser.statement.ShowShadowAlgorithmsStatement;
@@ -52,8 +52,8 @@ public final class ShadowAlgorithmQueryResultSet implements DistSQLResultSet {
private String defaultAlgorithm;
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ShadowRuleConfiguration> rule = databaseMetaData.getRuleMetaData().getConfigurations()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ShadowRuleConfiguration> rule = database.getRuleMetaData().getConfigurations()
.stream().filter(each -> each instanceof ShadowRuleConfiguration).map(each -> (ShadowRuleConfiguration) each).findAny();
rule.ifPresent(optional -> {
data = optional.getShadowAlgorithms().entrySet().iterator();
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowRuleQueryResultSet.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowRuleQueryResultSet.java
index 3409bcf3958..1a27645881d 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowRuleQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowRuleQueryResultSet.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.shadow.distsql.handler.query;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.datasource.ShadowDataSourceConfiguration;
import org.apache.shardingsphere.shadow.api.config.table.ShadowTableConfiguration;
@@ -52,8 +52,8 @@ public final class ShadowRuleQueryResultSet implements DistSQLResultSet {
private Iterator<Map<String, String>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ShadowRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().getConfigurations().stream()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ShadowRuleConfiguration> ruleConfig = database.getRuleMetaData().getConfigurations().stream()
.filter(each -> each instanceof ShadowRuleConfiguration).map(each -> (ShadowRuleConfiguration) each).findAny();
ruleConfig.ifPresent(optional -> buildDataSourceIterator(optional, (ShowShadowRulesStatement) sqlStatement));
}
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowTableRuleQueryResultSet.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowTableRuleQueryResultSet.java
index e0b7c5a4b4a..0ae00f11a16 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowTableRuleQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/query/ShadowTableRuleQueryResultSet.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.shadow.distsql.handler.query;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.parser.statement.ShowShadowTableRulesStatement;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -45,8 +45,8 @@ public final class ShadowTableRuleQueryResultSet implements DistSQLResultSet {
private Iterator<Map<String, String>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ShadowRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().getConfigurations()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ShadowRuleConfiguration> ruleConfig = database.getRuleMetaData().getConfigurations()
.stream().filter(each -> each instanceof ShadowRuleConfiguration).map(each -> (ShadowRuleConfiguration) each).findAny();
ruleConfig.ifPresent(optional -> data = buildData(optional).iterator());
}
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowAlgorithmStatementUpdater.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowAlgorithmStatementUpdater.java
index d426962e167..2bbf4f3d8c1 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowAlgorithmStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowAlgorithmStatementUpdater.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.AlgorithmInUsedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.checker.ShadowRuleStatementChecker;
import org.apache.shardingsphere.shadow.distsql.parser.segment.ShadowAlgorithmSegment;
@@ -58,11 +58,9 @@ public final class AlterShadowAlgorithmStatementUpdater implements RuleDefinitio
}
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData,
- final AlterShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
- checkConfigurationExist(databaseName, currentRuleConfig);
- checkAlgorithms(databaseName, sqlStatement, currentRuleConfig);
+ public void checkSQLStatement(final ShardingSphereDatabase database, final AlterShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
+ checkConfigurationExist(database.getName(), currentRuleConfig);
+ checkAlgorithms(database.getName(), sqlStatement, currentRuleConfig);
}
private void checkConfigurationExist(final String databaseName, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowRuleStatementUpdater.java
index 27dccbe4845..2a3f5d28580 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowRuleStatementUpdater.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.AlgorithmInUsedExc
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.datasource.ShadowDataSourceConfiguration;
import org.apache.shardingsphere.shadow.api.config.table.ShadowTableConfiguration;
@@ -67,13 +67,12 @@ public final class AlterShadowRuleStatementUpdater implements RuleDefinitionAlte
}
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData,
- final AlterShadowRuleStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database, final AlterShadowRuleStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
Collection<ShadowRuleSegment> rules = sqlStatement.getRules();
checkConfigurationExist(databaseName, currentRuleConfig);
checkRuleNames(databaseName, rules, currentRuleConfig);
- checkResources(databaseName, databaseMetaData, rules);
+ checkResources(databaseName, database, rules);
checkAlgorithms(databaseName, rules);
}
@@ -88,9 +87,9 @@ public final class AlterShadowRuleStatementUpdater implements RuleDefinitionAlte
ShadowRuleStatementChecker.checkRulesExist(requireRuleNames, currentRuleNames, different -> new InvalidAlgorithmConfigurationException("shadow rule name ", different));
}
- private void checkResources(final String databaseName, final ShardingSphereDatabaseMetaData databaseMetaData, final Collection<ShadowRuleSegment> rules) throws DistSQLException {
+ private void checkResources(final String databaseName, final ShardingSphereDatabase database, final Collection<ShadowRuleSegment> rules) throws DistSQLException {
Collection<String> requireResource = ShadowRuleStatementSupporter.getResourceNames(rules);
- ShadowRuleStatementChecker.checkResourceExist(requireResource, databaseMetaData, databaseName);
+ ShadowRuleStatementChecker.checkResourceExist(requireResource, database, databaseName);
}
private void checkAlgorithms(final String databaseName, final Collection<ShadowRuleSegment> rules) throws DistSQLException {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateDefaultShadowAlgorithmStatementUpdater.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateDefaultShadowAlgorithmStatementUpdater.java
index 46596b5ba01..db0cb4eb80b 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateDefaultShadowAlgorithmStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateDefaultShadowAlgorithmStatementUpdater.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.parser.statement.CreateDefaultShadowAlgorithmStatement;
@@ -45,10 +45,9 @@ public final class CreateDefaultShadowAlgorithmStatementUpdater implements RuleD
}
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateDefaultShadowAlgorithmStatement sqlStatement,
- final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
- checkAlgorithmExist(databaseName, sqlStatement, currentRuleConfig);
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final CreateDefaultShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
+ checkAlgorithmExist(database.getName(), sqlStatement, currentRuleConfig);
}
private void checkAlgorithmExist(final String databaseName, final CreateDefaultShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowAlgorithmStatementUpdater.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowAlgorithmStatementUpdater.java
index bde0271a8d0..00d944455e3 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowAlgorithmStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowAlgorithmStatementUpdater.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.checker.ShadowRuleStatementChecker;
import org.apache.shardingsphere.shadow.distsql.parser.segment.ShadowAlgorithmSegment;
@@ -60,12 +60,10 @@ public final class CreateShadowAlgorithmStatementUpdater implements RuleDefiniti
}
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData,
- final CreateShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database, final CreateShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
ShadowRuleStatementChecker.checkAlgorithmCompleteness(sqlStatement.getAlgorithms());
- checkDuplicatedInput(databaseName, sqlStatement);
- checkExist(databaseName, sqlStatement, currentRuleConfig);
+ checkDuplicatedInput(database.getName(), sqlStatement);
+ checkExist(database.getName(), sqlStatement, currentRuleConfig);
checkAlgorithmType(sqlStatement);
}
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowRuleStatementUpdater.java
index b0fe926dc11..b270d9c8122 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowRuleStatementUpdater.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.table.ShadowTableConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.checker.ShadowRuleStatementChecker;
@@ -60,12 +60,11 @@ public final class CreateShadowRuleStatementUpdater implements RuleDefinitionCre
}
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData,
- final CreateShadowRuleStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database, final CreateShadowRuleStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
Collection<ShadowRuleSegment> rules = sqlStatement.getRules();
checkRuleNames(databaseName, rules, currentRuleConfig);
- checkResources(databaseName, databaseMetaData, rules);
+ checkResources(databaseName, database, rules);
checkAlgorithms(databaseName, rules, currentRuleConfig);
}
@@ -76,9 +75,9 @@ public final class CreateShadowRuleStatementUpdater implements RuleDefinitionCre
ShadowRuleStatementChecker.checkAnyDuplicate(requireRuleNames, currentRuleName, identical -> new DuplicateRuleException(SHADOW, databaseName, identical));
}
- private void checkResources(final String databaseName, final ShardingSphereDatabaseMetaData databaseMetaData, final Collection<ShadowRuleSegment> rules) throws DistSQLException {
+ private void checkResources(final String databaseName, final ShardingSphereDatabase database, final Collection<ShadowRuleSegment> rules) throws DistSQLException {
Collection<String> requireResource = ShadowRuleStatementSupporter.getResourceNames(rules);
- ShadowRuleStatementChecker.checkResourceExist(requireResource, databaseMetaData, databaseName);
+ ShadowRuleStatementChecker.checkResourceExist(requireResource, database, databaseName);
}
private void checkAlgorithms(final String databaseName, final Collection<ShadowRuleSegment> rules, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropDefaultShadowAlgorithmStatementUpdater.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropDefaultShadowAlgorithmStatementUpdater.java
index 83f45e7e231..000a6be5b62 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropDefaultShadowAlgorithmStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropDefaultShadowAlgorithmStatementUpdater.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.config.scope.SchemaRuleConfiguration;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.checker.ShadowRuleStatementChecker;
import org.apache.shardingsphere.shadow.distsql.parser.statement.DropDefaultShadowAlgorithmStatement;
@@ -36,14 +36,13 @@ public final class DropDefaultShadowAlgorithmStatementUpdater implements RuleDef
private static final String SHADOW = "shadow";
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropDefaultShadowAlgorithmStatement sqlStatement,
+ public void checkSQLStatement(final ShardingSphereDatabase database, final DropDefaultShadowAlgorithmStatement sqlStatement,
final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
if (sqlStatement.isContainsExistClause() && !isExistRuleConfig(currentRuleConfig)) {
return;
}
- checkConfigurationExist(databaseName, currentRuleConfig);
- checkAlgorithm(databaseName, sqlStatement, currentRuleConfig);
+ checkConfigurationExist(database.getName(), currentRuleConfig);
+ checkAlgorithm(database.getName(), sqlStatement, currentRuleConfig);
}
private void checkConfigurationExist(final String databaseName, final SchemaRuleConfiguration currentRuleConfig) throws DistSQLException {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowAlgorithmStatementUpdater.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowAlgorithmStatementUpdater.java
index 38c8fc07968..e7a11f92e6e 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowAlgorithmStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowAlgorithmStatementUpdater.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.AlgorithmInUsedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.table.ShadowTableConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.checker.ShadowRuleStatementChecker;
@@ -44,14 +44,12 @@ public final class DropShadowAlgorithmStatementUpdater implements RuleDefinition
private static final String SHADOW = "shadow";
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData,
- final DropShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database, final DropShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
if (sqlStatement.isContainsExistClause() && !isExistRuleConfig(currentRuleConfig)) {
return;
}
- checkConfigurationExist(databaseName, currentRuleConfig);
- checkAlgorithm(databaseName, sqlStatement, currentRuleConfig);
+ checkConfigurationExist(database.getName(), currentRuleConfig);
+ checkAlgorithm(database.getName(), sqlStatement, currentRuleConfig);
}
private void checkConfigurationExist(final String databaseName, final SchemaRuleConfiguration currentRuleConfig) throws DistSQLException {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowRuleStatementUpdater.java
index 3a1836f56de..c414fb0c2f5 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowRuleStatementUpdater.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.shadow.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.checker.ShadowRuleStatementChecker;
import org.apache.shardingsphere.shadow.distsql.parser.statement.DropShadowRuleStatement;
@@ -35,14 +35,13 @@ public final class DropShadowRuleStatementUpdater implements RuleDefinitionDropU
private static final String SHADOW = "shadow";
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData,
+ public void checkSQLStatement(final ShardingSphereDatabase database,
final DropShadowRuleStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
if (sqlStatement.isContainsExistClause() && !isExistRuleConfig(currentRuleConfig)) {
return;
}
- checkConfigurationExist(databaseName, currentRuleConfig);
- checkRuleNames(databaseName, sqlStatement, currentRuleConfig);
+ checkConfigurationExist(database.getName(), currentRuleConfig);
+ checkRuleNames(database.getName(), sqlStatement, currentRuleConfig);
}
private void checkConfigurationExist(final String databaseName, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowAlgorithmQueryResultSetTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowAlgorithmQueryResultSetTest.java
index 6b764e0669d..a3e864d0eb6 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowAlgorithmQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowAlgorithmQueryResultSetTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.shadow.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.table.ShadowTableConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.query.ShadowAlgorithmQueryResultSet;
@@ -42,10 +42,10 @@ public final class ShadowAlgorithmQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
DistSQLResultSet resultSet = new ShadowAlgorithmQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShadowAlgorithmsStatement.class));
+ resultSet.init(database, mock(ShowShadowAlgorithmsStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(4));
assertThat(actual.get(0), is("shadowAlgorithmName"));
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowRuleQueryResultSetTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowRuleQueryResultSetTest.java
index ca3e0b62b53..527af6d1f9d 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowRuleQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowRuleQueryResultSetTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.shadow.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.datasource.ShadowDataSourceConfiguration;
import org.apache.shardingsphere.shadow.api.config.table.ShadowTableConfiguration;
@@ -41,10 +41,10 @@ public final class ShadowRuleQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
DistSQLResultSet resultSet = new ShadowRuleQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShadowRulesStatement.class));
+ resultSet.init(database, mock(ShowShadowRulesStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(4));
assertThat(actual.get(0), is("shadow_rule"));
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowTableRuleQueryResultSetTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowTableRuleQueryResultSetTest.java
index 6f917ec79cd..5799fb92219 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowTableRuleQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/query/ShadowTableRuleQueryResultSetTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.shadow.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.table.ShadowTableConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.query.ShadowTableRuleQueryResultSet;
@@ -43,10 +43,10 @@ public final class ShadowTableRuleQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
DistSQLResultSet resultSet = new ShadowTableRuleQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShadowAlgorithmsStatement.class));
+ resultSet.init(database, mock(ShowShadowAlgorithmsStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(2));
assertThat(actual.get(0), is("t_order"));
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/AlterShadowAlgorithmStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/AlterShadowAlgorithmStatementUpdaterTest.java
index 5e4f962ef3b..42829c2800a 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/AlterShadowAlgorithmStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/AlterShadowAlgorithmStatementUpdaterTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.AlgorithmInUsedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.update.AlterShadowAlgorithmStatementUpdater;
import org.apache.shardingsphere.shadow.distsql.parser.segment.ShadowAlgorithmSegment;
@@ -44,7 +44,7 @@ import static org.mockito.Mockito.when;
public final class AlterShadowAlgorithmStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShadowRuleConfiguration currentConfig;
@@ -57,7 +57,7 @@ public final class AlterShadowAlgorithmStatementUpdaterTest {
prop.setProperty("type", "value");
AlterShadowAlgorithmStatement sqlStatement = createSQLStatement(new ShadowAlgorithmSegment("simpleHintAlgorithm", new AlgorithmSegment("SIMPLE_HINT", prop)),
new ShadowAlgorithmSegment("simpleHintAlgorithm", new AlgorithmSegment("SIMPLE_HINT", prop)));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
@Test(expected = RequiredRuleMissedException.class)
@@ -65,7 +65,7 @@ public final class AlterShadowAlgorithmStatementUpdaterTest {
Properties prop = new Properties();
prop.setProperty("type", "value");
AlterShadowAlgorithmStatement sqlStatement = createSQLStatement(new ShadowAlgorithmSegment("simpleHintAlgorithm", new AlgorithmSegment("SIMPLE_HINT", prop)));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, null);
+ updater.checkSQLStatement(database, sqlStatement, null);
}
@Test(expected = RequiredAlgorithmMissedException.class)
@@ -74,7 +74,7 @@ public final class AlterShadowAlgorithmStatementUpdaterTest {
prop.setProperty("type", "value");
when(currentConfig.getShadowAlgorithms()).thenReturn(Collections.singletonMap("simpleHintAlgorithm", new ShardingSphereAlgorithmConfiguration("type", prop)));
AlterShadowAlgorithmStatement sqlStatement = createSQLStatement(new ShadowAlgorithmSegment("simpleHintAlgorithm1", new AlgorithmSegment("SIMPLE_HINT", prop)));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
private AlterShadowAlgorithmStatement createSQLStatement(final ShadowAlgorithmSegment... ruleSegments) {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/AlterShadowRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/AlterShadowRuleStatementUpdaterTest.java
index cf2fb57a10c..f374d54fc64 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/AlterShadowRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/AlterShadowRuleStatementUpdaterTest.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.AlgorithmInUsedExc
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.datasource.ShadowDataSourceConfiguration;
@@ -53,7 +53,7 @@ import static org.mockito.Mockito.when;
public final class AlterShadowRuleStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShardingSphereResource resource;
@@ -68,26 +68,26 @@ public final class AlterShadowRuleStatementUpdaterTest {
Map<String, ShadowDataSourceConfiguration> map = new HashMap<>();
map.put("initRuleName1", new ShadowDataSourceConfiguration("ds1", "ds_shadow1"));
map.put("initRuleName2", new ShadowDataSourceConfiguration("ds2", "ds_shadow2"));
- when(databaseMetaData.getResource()).thenReturn(resource);
+ when(database.getResource()).thenReturn(resource);
when(currentConfig.getDataSources()).thenReturn(map);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertExecuteWithoutCurrentConfiguration() throws DistSQLException {
ShadowRuleSegment ruleSegment = new ShadowRuleSegment("ruleName", null, null, null);
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(ruleSegment, ruleSegment), null);
+ updater.checkSQLStatement(database, createSQLStatement(ruleSegment, ruleSegment), null);
}
@Test(expected = DuplicateRuleException.class)
public void assertExecuteWithDuplicateRuleName() throws DistSQLException {
ShadowRuleSegment ruleSegment = new ShadowRuleSegment("ruleName", null, null, null);
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(ruleSegment, ruleSegment), currentConfig);
+ updater.checkSQLStatement(database, createSQLStatement(ruleSegment, ruleSegment), currentConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertExecuteWithRuleNameNotInMetaData() throws DistSQLException {
ShadowRuleSegment ruleSegment = new ShadowRuleSegment("ruleName", null, null, null);
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(ruleSegment), currentConfig);
+ updater.checkSQLStatement(database, createSQLStatement(ruleSegment), currentConfig);
}
@Test(expected = RequiredResourceMissedException.class)
@@ -95,7 +95,7 @@ public final class AlterShadowRuleStatementUpdaterTest {
List<String> dataSources = Arrays.asList("ds", "ds0");
when(resource.getNotExistedResources(any())).thenReturn(dataSources);
AlterShadowRuleStatement sqlStatement = createSQLStatement(new ShadowRuleSegment("initRuleName1", "ds3", null, null));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
@Test(expected = AlgorithmInUsedException.class)
@@ -105,7 +105,7 @@ public final class AlterShadowRuleStatementUpdaterTest {
ShadowAlgorithmSegment segment = new ShadowAlgorithmSegment("algorithmName", new AlgorithmSegment("name", prop));
AlterShadowRuleStatement sqlStatement = createSQLStatement(new ShadowRuleSegment("initRuleName1", "ds", null, Collections.singletonMap("t_order", Collections.singleton(segment))),
new ShadowRuleSegment("initRuleName2", "ds1", null, Collections.singletonMap("t_order_1", Collections.singletonList(segment))));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
@Test(expected = AlgorithmInUsedException.class)
@@ -115,7 +115,7 @@ public final class AlterShadowRuleStatementUpdaterTest {
ShadowAlgorithmSegment segment = new ShadowAlgorithmSegment("algorithmName", new AlgorithmSegment("name", prop));
AlterShadowRuleStatement sqlStatement = createSQLStatement(new ShadowRuleSegment("initRuleName1", "ds", null, Collections.singletonMap("t_order", Collections.singleton(segment))),
new ShadowRuleSegment("initRuleName2", "ds1", null, Collections.singletonMap("t_order_1", Collections.singletonList(segment))));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
@Test
@@ -126,7 +126,7 @@ public final class AlterShadowRuleStatementUpdaterTest {
ShadowAlgorithmSegment segment2 = new ShadowAlgorithmSegment("algorithmName2", new AlgorithmSegment("name", prop));
AlterShadowRuleStatement sqlStatement = createSQLStatement(new ShadowRuleSegment("initRuleName1", "ds", null, Collections.singletonMap("t_order", Collections.singleton(segment1))),
new ShadowRuleSegment("initRuleName2", "ds1", null, Collections.singletonMap("t_order_1", Collections.singletonList(segment2))));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
private AlterShadowRuleStatement createSQLStatement(final ShadowRuleSegment... ruleSegments) {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateDefaultShadowAlgorithmStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateDefaultShadowAlgorithmStatementUpdaterTest.java
index 86b6cae18df..322a617fd3c 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateDefaultShadowAlgorithmStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateDefaultShadowAlgorithmStatementUpdaterTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.shadow.distsql.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.update.CreateDefaultShadowAlgorithmStatementUpdater;
import org.apache.shardingsphere.shadow.distsql.parser.statement.CreateDefaultShadowAlgorithmStatement;
@@ -37,7 +37,7 @@ import static org.mockito.Mockito.when;
public final class CreateDefaultShadowAlgorithmStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShadowRuleConfiguration currentConfig;
@@ -47,6 +47,6 @@ public final class CreateDefaultShadowAlgorithmStatementUpdaterTest {
@Test(expected = RequiredAlgorithmMissedException.class)
public void assertExecuteWithNotExistAlgorithm() throws DistSQLException {
when(currentConfig.getShadowAlgorithms()).thenReturn(Collections.singletonMap("default_name", null));
- updater.checkSQLStatement(databaseMetaData, new CreateDefaultShadowAlgorithmStatement("input_default_name"), currentConfig);
+ updater.checkSQLStatement(database, new CreateDefaultShadowAlgorithmStatement("input_default_name"), currentConfig);
}
}
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateShadowAlgorithmStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateShadowAlgorithmStatementUpdaterTest.java
index 04e0084ead6..af1f0abc5fc 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateShadowAlgorithmStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateShadowAlgorithmStatementUpdaterTest.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.distsql.parser.segment.AlgorithmSegment;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.update.CreateShadowAlgorithmStatementUpdater;
import org.apache.shardingsphere.shadow.distsql.parser.segment.ShadowAlgorithmSegment;
@@ -42,7 +42,7 @@ import static org.mockito.Mockito.when;
public final class CreateShadowAlgorithmStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShadowRuleConfiguration currentConfig;
@@ -55,7 +55,7 @@ public final class CreateShadowAlgorithmStatementUpdaterTest {
props.setProperty("type", "value");
CreateShadowAlgorithmStatement sqlStatement = createSQLStatement(new ShadowAlgorithmSegment("foo_algorithm", new AlgorithmSegment("SIMPLE_HINT", props)),
new ShadowAlgorithmSegment("foo_algorithm", new AlgorithmSegment("SIMPLE_HINT", props)));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
@Test(expected = DuplicateRuleException.class)
@@ -64,7 +64,7 @@ public final class CreateShadowAlgorithmStatementUpdaterTest {
Properties props = new Properties();
props.setProperty("type", "value");
CreateShadowAlgorithmStatement sqlStatement = createSQLStatement(new ShadowAlgorithmSegment("foo_algorithm", new AlgorithmSegment("SIMPLE_HINT", props)));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -72,7 +72,7 @@ public final class CreateShadowAlgorithmStatementUpdaterTest {
Properties props = new Properties();
props.setProperty("type", "value");
CreateShadowAlgorithmStatement sqlStatement = createSQLStatement(new ShadowAlgorithmSegment("foo_algorithm", new AlgorithmSegment("", props)));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -80,7 +80,7 @@ public final class CreateShadowAlgorithmStatementUpdaterTest {
Properties props = new Properties();
props.setProperty("type", "value");
CreateShadowAlgorithmStatement sqlStatement = createSQLStatement(new ShadowAlgorithmSegment("foo_algorithm", new AlgorithmSegment("NOT_EXISTED_ALGORITHM", props)));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
private CreateShadowAlgorithmStatement createSQLStatement(final ShadowAlgorithmSegment... ruleSegments) {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateShadowRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateShadowRuleStatementUpdaterTest.java
index c1373de83f5..213a6f2f11e 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateShadowRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/CreateShadowRuleStatementUpdaterTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmC
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.resource.RequiredResourceMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.datasource.ShadowDataSourceConfiguration;
@@ -49,7 +49,7 @@ import static org.mockito.Mockito.when;
public final class CreateShadowRuleStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShardingSphereResource resource;
@@ -61,21 +61,21 @@ public final class CreateShadowRuleStatementUpdaterTest {
@Before
public void before() {
- when(databaseMetaData.getResource()).thenReturn(resource);
+ when(database.getResource()).thenReturn(resource);
when(currentConfig.getDataSources()).thenReturn(Collections.singletonMap("initRuleName", new ShadowDataSourceConfiguration("initDs0", "initDs0Shadow")));
}
@Test(expected = DuplicateRuleException.class)
public void assertExecuteWithDuplicateRuleName() throws DistSQLException {
ShadowRuleSegment ruleSegment = new ShadowRuleSegment("ruleName", null, null, null);
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(ruleSegment, ruleSegment), null);
+ updater.checkSQLStatement(database, createSQLStatement(ruleSegment, ruleSegment), null);
}
@Test(expected = DuplicateRuleException.class)
public void assertExecuteWithDuplicateRuleNameInMetaData() throws DistSQLException {
when(currentConfig.getDataSources()).thenReturn(Collections.singletonMap("ruleName", null));
ShadowRuleSegment ruleSegment = new ShadowRuleSegment("ruleName", null, null, null);
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(ruleSegment), currentConfig);
+ updater.checkSQLStatement(database, createSQLStatement(ruleSegment), currentConfig);
}
@Test(expected = RequiredResourceMissedException.class)
@@ -83,7 +83,7 @@ public final class CreateShadowRuleStatementUpdaterTest {
List<String> dataSources = Arrays.asList("ds0", "ds1");
when(resource.getNotExistedResources(any())).thenReturn(dataSources);
CreateShadowRuleStatement sqlStatement = createSQLStatement(new ShadowRuleSegment("ruleName", "ds1", null, null));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
@Test(expected = DuplicateRuleException.class)
@@ -93,7 +93,7 @@ public final class CreateShadowRuleStatementUpdaterTest {
ShadowAlgorithmSegment segment = new ShadowAlgorithmSegment("algorithmName", new AlgorithmSegment("name", prop));
CreateShadowRuleStatement sqlStatement = createSQLStatement(new ShadowRuleSegment("ruleName", "ds", null, Collections.singletonMap("t_order", Collections.singleton(segment))),
new ShadowRuleSegment("ruleName1", "ds1", null, Collections.singletonMap("t_order_1", Collections.singletonList(segment))));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
@Test(expected = DuplicateRuleException.class)
@@ -103,7 +103,7 @@ public final class CreateShadowRuleStatementUpdaterTest {
ShadowAlgorithmSegment segment = new ShadowAlgorithmSegment("algorithmName", new AlgorithmSegment("name", prop));
CreateShadowRuleStatement sqlStatement = createSQLStatement(new ShadowRuleSegment("ruleName", "ds", null, Collections.singletonMap("t_order", Collections.singleton(segment))),
new ShadowRuleSegment("ruleName1", "ds1", null, Collections.singletonMap("t_order_1", Collections.singletonList(segment))));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, null);
+ updater.checkSQLStatement(database, sqlStatement, null);
}
@Test(expected = DuplicateRuleException.class)
@@ -113,7 +113,7 @@ public final class CreateShadowRuleStatementUpdaterTest {
when(currentConfig.getShadowAlgorithms()).thenReturn(Collections.singletonMap("algorithmName", new ShardingSphereAlgorithmConfiguration("type", prop)));
ShadowAlgorithmSegment segment = new ShadowAlgorithmSegment("algorithmName", new AlgorithmSegment("type", prop));
CreateShadowRuleStatement sqlStatement = createSQLStatement(new ShadowRuleSegment("ruleName", "ds", null, Collections.singletonMap("t_order", Collections.singleton(segment))));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, currentConfig);
+ updater.checkSQLStatement(database, sqlStatement, currentConfig);
}
private CreateShadowRuleStatement createSQLStatement(final ShadowRuleSegment... ruleSegments) {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropDefaultShadowAlgorithmStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropDefaultShadowAlgorithmStatementUpdaterTest.java
index 9dc3dc83676..e54b8ff2f6f 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropDefaultShadowAlgorithmStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropDefaultShadowAlgorithmStatementUpdaterTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.shadow.distsql.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.update.DropDefaultShadowAlgorithmStatementUpdater;
import org.apache.shardingsphere.shadow.distsql.parser.statement.DropDefaultShadowAlgorithmStatement;
@@ -36,7 +36,7 @@ import static org.junit.Assert.assertTrue;
public final class DropDefaultShadowAlgorithmStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShadowRuleConfiguration currentConfig;
@@ -45,13 +45,13 @@ public final class DropDefaultShadowAlgorithmStatementUpdaterTest {
@Test(expected = RequiredAlgorithmMissedException.class)
public void assertCheckWithoutDefaultAlgorithm() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, new DropDefaultShadowAlgorithmStatement(), currentConfig);
+ updater.checkSQLStatement(database, new DropDefaultShadowAlgorithmStatement(), currentConfig);
}
@Test
public void assertCheckWithIfExists() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, new DropDefaultShadowAlgorithmStatement(true), currentConfig);
- updater.checkSQLStatement(databaseMetaData, new DropDefaultShadowAlgorithmStatement(true), null);
+ updater.checkSQLStatement(database, new DropDefaultShadowAlgorithmStatement(true), currentConfig);
+ updater.checkSQLStatement(database, new DropDefaultShadowAlgorithmStatement(true), null);
}
@Test
@@ -59,7 +59,7 @@ public final class DropDefaultShadowAlgorithmStatementUpdaterTest {
ShadowRuleConfiguration ruleConfig = new ShadowRuleConfiguration();
ruleConfig.setDefaultShadowAlgorithmName("default");
DropDefaultShadowAlgorithmStatement statement = new DropDefaultShadowAlgorithmStatement();
- updater.checkSQLStatement(databaseMetaData, new DropDefaultShadowAlgorithmStatement(true), ruleConfig);
+ updater.checkSQLStatement(database, new DropDefaultShadowAlgorithmStatement(true), ruleConfig);
assertTrue(updater.hasAnyOneToBeDropped(statement, ruleConfig));
updater.updateCurrentRuleConfiguration(statement, ruleConfig);
assertNull(ruleConfig.getDefaultShadowAlgorithmName());
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropShadowAlgorithmStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropShadowAlgorithmStatementUpdaterTest.java
index 1950c1c97b0..4b10ad0cde7 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropShadowAlgorithmStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropShadowAlgorithmStatementUpdaterTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.shadow.distsql.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.table.ShadowTableConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.update.DropShadowAlgorithmStatementUpdater;
@@ -41,20 +41,20 @@ import static org.mockito.Mockito.mock;
public final class DropShadowAlgorithmStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
private final DropShadowAlgorithmStatementUpdater updater = new DropShadowAlgorithmStatementUpdater();
@Test(expected = RequiredRuleMissedException.class)
public void assertExecuteWithoutAlgorithmNameInMetaData() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("ruleSegment"), null);
+ updater.checkSQLStatement(database, createSQLStatement("ruleSegment"), null);
}
@Test
public void assertExecuteWithIfExists() throws DistSQLException {
DropShadowAlgorithmStatement sqlStatement = createSQLStatement("ruleSegment");
sqlStatement.setContainsExistClause(true);
- updater.checkSQLStatement(databaseMetaData, sqlStatement, mock(ShadowRuleConfiguration.class));
+ updater.checkSQLStatement(database, sqlStatement, mock(ShadowRuleConfiguration.class));
}
@Test
@@ -63,7 +63,7 @@ public final class DropShadowAlgorithmStatementUpdaterTest {
sqlStatement.setContainsExistClause(true);
ShadowRuleConfiguration ruleConfig = new ShadowRuleConfiguration();
ruleConfig.getTables().put("t_order", new ShadowTableConfiguration(new ArrayList<>(Collections.singleton("ds_0")), Collections.emptyList()));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, ruleConfig);
+ updater.checkSQLStatement(database, sqlStatement, ruleConfig);
updater.updateCurrentRuleConfiguration(sqlStatement, ruleConfig);
assertFalse(ruleConfig.getTables().containsKey("ds_0"));
}
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropShadowRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropShadowRuleStatementUpdaterTest.java
index c58c21adc32..65cb51b0930 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropShadowRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/test/java/org/apache/shardingsphere/shadow/distsql/update/DropShadowRuleStatementUpdaterTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.shadow.distsql.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.table.ShadowTableConfiguration;
import org.apache.shardingsphere.shadow.distsql.handler.update.DropShadowRuleStatementUpdater;
@@ -43,7 +43,7 @@ import static org.mockito.Mockito.when;
public final class DropShadowRuleStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShadowRuleConfiguration currentConfig;
@@ -57,14 +57,14 @@ public final class DropShadowRuleStatementUpdaterTest {
@Test(expected = RequiredRuleMissedException.class)
public void assertExecuteWithoutRuleNameInMetaData() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("ruleSegment"), null);
+ updater.checkSQLStatement(database, createSQLStatement("ruleSegment"), null);
}
@Test
public void assertExecuteWithIfExists() throws DistSQLException {
DropShadowRuleStatement sqlStatement = createSQLStatement("ruleSegment");
sqlStatement.setContainsExistClause(true);
- updater.checkSQLStatement(databaseMetaData, sqlStatement, mock(ShadowRuleConfiguration.class));
+ updater.checkSQLStatement(database, sqlStatement, mock(ShadowRuleConfiguration.class));
}
@Test
@@ -73,14 +73,14 @@ public final class DropShadowRuleStatementUpdaterTest {
sqlStatement.setContainsExistClause(true);
ShadowRuleConfiguration ruleConfig = new ShadowRuleConfiguration();
ruleConfig.getTables().put("t_order", new ShadowTableConfiguration(new ArrayList<>(Collections.singleton("ds_0")), Collections.emptyList()));
- updater.checkSQLStatement(databaseMetaData, sqlStatement, ruleConfig);
+ updater.checkSQLStatement(database, sqlStatement, ruleConfig);
updater.updateCurrentRuleConfiguration(sqlStatement, ruleConfig);
assertFalse(ruleConfig.getTables().containsKey("ds_0"));
}
@Test
public void assertExecuteSuccess() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("initRuleName"), currentConfig);
+ updater.checkSQLStatement(database, createSQLStatement("initRuleName"), currentConfig);
}
private DropShadowRuleStatement createSQLStatement(final String... ruleName) {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/data/pipeline/ShardingRuleAlteredJobConfigurationPreparer.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/data/pipeline/ShardingRuleAlteredJobConfigurationPreparer.java
index c1c17a2e863..2e44d6bda83 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/data/pipeline/ShardingRuleAlteredJobConfigurationPreparer.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/data/pipeline/ShardingRuleAlteredJobConfigurationPreparer.java
@@ -38,7 +38,7 @@ import org.apache.shardingsphere.data.pipeline.spi.rulealtered.RuleAlteredJobCon
import org.apache.shardingsphere.infra.config.rulealtered.OnRuleAlteredActionConfiguration;
import org.apache.shardingsphere.infra.datanode.DataNode;
import org.apache.shardingsphere.infra.datasource.props.DataSourceProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.yaml.config.swapper.YamlDataSourceConfigurationSwapper;
import org.apache.shardingsphere.infra.yaml.engine.YamlEngine;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
@@ -147,13 +147,13 @@ public final class ShardingRuleAlteredJobConfigurationPreparer implements RuleAl
tableNameMap.put(new ActualTableName(dataNode.getTableName()), new LogicTableName(each.getLogicTableName()));
}
}
- ShardingSphereDatabaseMetaData databaseMetaData = PipelineContext.getContextManager().getMetaDataContexts().getDatabaseMetaData(jobConfig.getDatabaseName());
+ ShardingSphereDatabase database = PipelineContext.getContextManager().getMetaDataContexts().getDatabaseMetaData(jobConfig.getDatabaseName());
DumperConfiguration dumperConfig = createDumperConfiguration(jobConfig.getDatabaseName(), dataSourceName,
- dataSourcePropsMap.get(dataSourceName).getAllLocalProperties(), tableNameMap, databaseMetaData);
+ dataSourcePropsMap.get(dataSourceName).getAllLocalProperties(), tableNameMap, database);
Optional<ShardingRuleConfiguration> targetRuleConfigOptional = getTargetRuleConfiguration(jobConfig);
Set<LogicTableName> reShardNeededTables = jobConfig.splitLogicTableNames().stream().map(LogicTableName::new).collect(Collectors.toSet());
Map<LogicTableName, Set<String>> shardingColumnsMap = getShardingColumnsMap(targetRuleConfigOptional.orElse(sourceRuleConfig), reShardNeededTables);
- ImporterConfiguration importerConfig = createImporterConfiguration(jobConfig, onRuleAlteredActionConfig, shardingColumnsMap, databaseMetaData);
+ ImporterConfiguration importerConfig = createImporterConfiguration(jobConfig, onRuleAlteredActionConfig, shardingColumnsMap, database);
TaskConfiguration result = new TaskConfiguration(jobConfig, dumperConfig, importerConfig);
log.info("createTaskConfiguration, dataSourceName={}, result={}", dataSourceName, result);
return result;
@@ -209,20 +209,20 @@ public final class ShardingRuleAlteredJobConfigurationPreparer implements RuleAl
}
private static DumperConfiguration createDumperConfiguration(final String databaseName, final String dataSourceName, final Map<String, Object> props,
- final Map<ActualTableName, LogicTableName> tableNameMap, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final Map<ActualTableName, LogicTableName> tableNameMap, final ShardingSphereDatabase database) {
DumperConfiguration result = new DumperConfiguration();
result.setDatabaseName(databaseName);
result.setDataSourceName(dataSourceName);
result.setDataSourceConfig(new StandardPipelineDataSourceConfiguration(YamlEngine.marshal(props)));
result.setTableNameMap(tableNameMap);
- result.setTableNameSchemaNameMapping(new TableNameSchemaNameMapping(TableNameSchemaNameMapping.convert(databaseMetaData.getDatabase().getSchemas())));
+ result.setTableNameSchemaNameMapping(new TableNameSchemaNameMapping(TableNameSchemaNameMapping.convert(database.getDatabaseMetaData().getSchemas())));
return result;
}
private static ImporterConfiguration createImporterConfiguration(final RuleAlteredJobConfiguration jobConfig, final OnRuleAlteredActionConfiguration onRuleAlteredActionConfig,
- final Map<LogicTableName, Set<String>> shardingColumnsMap, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final Map<LogicTableName, Set<String>> shardingColumnsMap, final ShardingSphereDatabase database) {
PipelineDataSourceConfiguration dataSourceConfig = PipelineDataSourceConfigurationFactory.newInstance(jobConfig.getTarget().getType(), jobConfig.getTarget().getParameter());
- TableNameSchemaNameMapping tableNameSchemaNameMapping = new TableNameSchemaNameMapping(TableNameSchemaNameMapping.convert(databaseMetaData.getDatabase().getSchemas()));
+ TableNameSchemaNameMapping tableNameSchemaNameMapping = new TableNameSchemaNameMapping(TableNameSchemaNameMapping.convert(database.getDatabaseMetaData().getSchemas()));
int batchSize = onRuleAlteredActionConfig.getOutput().getBatchSize();
int retryTimes = jobConfig.getRetryTimes();
return new ImporterConfiguration(dataSourceConfig, unmodifiable(shardingColumnsMap), tableNameSchemaNameMapping, batchSize, retryTimes);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/merge/dal/ShardingDALResultMerger.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/merge/dal/ShardingDALResultMerger.java
index 3410c1d2d62..65d76baf924 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/merge/dal/ShardingDALResultMerger.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/merge/dal/ShardingDALResultMerger.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryRe
import org.apache.shardingsphere.infra.merge.engine.merger.ResultMerger;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
import org.apache.shardingsphere.infra.merge.result.impl.transparent.TransparentMergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.sharding.merge.dal.common.SingleLocalDataMergedResult;
import org.apache.shardingsphere.sharding.merge.dal.show.LogicTablesMergedResult;
@@ -53,13 +53,13 @@ public final class ShardingDALResultMerger implements ResultMerger {
private final ShardingRule shardingRule;
@Override
- public MergedResult merge(final List<QueryResult> queryResults, final SQLStatementContext<?> sqlStatementContext, final ShardingSphereDatabaseMetaData databaseMetaData) throws SQLException {
+ public MergedResult merge(final List<QueryResult> queryResults, final SQLStatementContext<?> sqlStatementContext, final ShardingSphereDatabase database) throws SQLException {
SQLStatement dalStatement = sqlStatementContext.getSqlStatement();
- String schemaName = sqlStatementContext.getTablesContext().getSchemaName().orElse(sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName()));
+ String schemaName = sqlStatementContext.getTablesContext().getSchemaName().orElse(sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName()));
if (dalStatement instanceof MySQLShowDatabasesStatement) {
return new SingleLocalDataMergedResult(Collections.singletonList(databaseName));
}
- ShardingSphereSchema schema = databaseMetaData.getDatabase().getSchema(schemaName);
+ ShardingSphereSchema schema = database.getDatabaseMetaData().getSchema(schemaName);
if (dalStatement instanceof MySQLShowTablesStatement) {
return new LogicTablesMergedResult(shardingRule, sqlStatementContext, schema, queryResults);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMerger.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMerger.java
index 6628470ea93..49ccdbdff9e 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMerger.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMerger.java
@@ -27,7 +27,7 @@ import org.apache.shardingsphere.infra.database.type.DatabaseTypeEngine;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.merge.engine.merger.ResultMerger;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.sharding.merge.dql.groupby.GroupByMemoryMergedResult;
import org.apache.shardingsphere.sharding.merge.dql.groupby.GroupByStreamMergedResult;
@@ -54,14 +54,14 @@ public final class ShardingDQLResultMerger implements ResultMerger {
private final DatabaseType databaseType;
@Override
- public MergedResult merge(final List<QueryResult> queryResults, final SQLStatementContext<?> sqlStatementContext, final ShardingSphereDatabaseMetaData databaseMetaData) throws SQLException {
+ public MergedResult merge(final List<QueryResult> queryResults, final SQLStatementContext<?> sqlStatementContext, final ShardingSphereDatabase database) throws SQLException {
if (1 == queryResults.size() && !isNeedAggregateRewrite(sqlStatementContext)) {
return new IteratorStreamMergedResult(queryResults);
}
Map<String, Integer> columnLabelIndexMap = getColumnLabelIndexMap(queryResults.get(0));
SelectStatementContext selectStatementContext = (SelectStatementContext) sqlStatementContext;
selectStatementContext.setIndexes(columnLabelIndexMap);
- MergedResult mergedResult = build(queryResults, selectStatementContext, columnLabelIndexMap, databaseMetaData);
+ MergedResult mergedResult = build(queryResults, selectStatementContext, columnLabelIndexMap, database);
return decorate(queryResults, selectStatementContext, mergedResult);
}
@@ -78,10 +78,10 @@ public final class ShardingDQLResultMerger implements ResultMerger {
}
private MergedResult build(final List<QueryResult> queryResults, final SelectStatementContext selectStatementContext,
- final Map<String, Integer> columnLabelIndexMap, final ShardingSphereDatabaseMetaData databaseMetaData) throws SQLException {
- String defaultSchema = selectStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ final Map<String, Integer> columnLabelIndexMap, final ShardingSphereDatabase database) throws SQLException {
+ String defaultSchema = selectStatementContext.getDatabaseType().getDefaultSchema(database.getName());
ShardingSphereSchema schema = selectStatementContext.getTablesContext().getSchemaName()
- .map(optional -> databaseMetaData.getDatabase().getSchema(optional)).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(optional -> database.getDatabaseMetaData().getSchema(optional)).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
if (isNeedProcessGroupBy(selectStatementContext)) {
return getGroupByMergedResult(queryResults, selectStatementContext, columnLabelIndexMap, schema);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/ShardingSQLRouter.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/ShardingSQLRouter.java
index 30f2893f4db..bff64fea81c 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/ShardingSQLRouter.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/ShardingSQLRouter.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.route.engine;
import org.apache.shardingsphere.infra.binder.LogicSQL;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.SQLRouter;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.constant.ShardingOrder;
@@ -45,24 +45,24 @@ public final class ShardingSQLRouter implements SQLRouter<ShardingRule> {
@SuppressWarnings({"rawtypes", "unchecked"})
@Override
- public RouteContext createRouteContext(final LogicSQL logicSQL, final ShardingSphereDatabaseMetaData databaseMetaData, final ShardingRule rule, final ConfigurationProperties props) {
+ public RouteContext createRouteContext(final LogicSQL logicSQL, final ShardingSphereDatabase database, final ShardingRule rule, final ConfigurationProperties props) {
SQLStatement sqlStatement = logicSQL.getSqlStatementContext().getSqlStatement();
- ShardingConditions shardingConditions = createShardingConditions(logicSQL, databaseMetaData, rule);
+ ShardingConditions shardingConditions = createShardingConditions(logicSQL, database, rule);
Optional<ShardingStatementValidator> validator = ShardingStatementValidatorFactory.newInstance(sqlStatement, shardingConditions);
- validator.ifPresent(optional -> optional.preValidate(rule, logicSQL.getSqlStatementContext(), logicSQL.getParameters(), databaseMetaData));
+ validator.ifPresent(optional -> optional.preValidate(rule, logicSQL.getSqlStatementContext(), logicSQL.getParameters(), database));
if (sqlStatement instanceof DMLStatement && shardingConditions.isNeedMerge()) {
shardingConditions.merge();
}
- RouteContext result = ShardingRouteEngineFactory.newInstance(rule, databaseMetaData, logicSQL.getSqlStatementContext(), shardingConditions, props).route(rule);
- validator.ifPresent(optional -> optional.postValidate(rule, logicSQL.getSqlStatementContext(), logicSQL.getParameters(), databaseMetaData, props, result));
+ RouteContext result = ShardingRouteEngineFactory.newInstance(rule, database, logicSQL.getSqlStatementContext(), shardingConditions, props).route(rule);
+ validator.ifPresent(optional -> optional.postValidate(rule, logicSQL.getSqlStatementContext(), logicSQL.getParameters(), database, props, result));
return result;
}
@SuppressWarnings({"rawtypes", "unchecked"})
- private ShardingConditions createShardingConditions(final LogicSQL logicSQL, final ShardingSphereDatabaseMetaData databaseMetaData, final ShardingRule rule) {
+ private ShardingConditions createShardingConditions(final LogicSQL logicSQL, final ShardingSphereDatabase database, final ShardingRule rule) {
List<ShardingCondition> shardingConditions;
if (logicSQL.getSqlStatementContext().getSqlStatement() instanceof DMLStatement) {
- ShardingConditionEngine shardingConditionEngine = ShardingConditionEngineFactory.createShardingConditionEngine(logicSQL, databaseMetaData, rule);
+ ShardingConditionEngine shardingConditionEngine = ShardingConditionEngineFactory.createShardingConditionEngine(logicSQL, database, rule);
shardingConditions = shardingConditionEngine.createShardingConditions(logicSQL.getSqlStatementContext(), logicSQL.getParameters());
} else {
shardingConditions = Collections.emptyList();
@@ -71,8 +71,7 @@ public final class ShardingSQLRouter implements SQLRouter<ShardingRule> {
}
@Override
- public void decorateRouteContext(final RouteContext routeContext, final LogicSQL logicSQL, final ShardingSphereDatabaseMetaData databaseMetaData,
- final ShardingRule rule, final ConfigurationProperties props) {
+ public void decorateRouteContext(final RouteContext routeContext, final LogicSQL logicSQL, final ShardingSphereDatabase database, final ShardingRule rule, final ConfigurationProperties props) {
// TODO
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/ShardingConditionEngineFactory.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/ShardingConditionEngineFactory.java
index 03b1c397046..a8d787559b5 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/ShardingConditionEngineFactory.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/ShardingConditionEngineFactory.java
@@ -21,7 +21,7 @@ import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.apache.shardingsphere.infra.binder.LogicSQL;
import org.apache.shardingsphere.infra.binder.statement.dml.InsertStatementContext;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.route.engine.condition.engine.impl.InsertClauseShardingConditionEngine;
import org.apache.shardingsphere.sharding.route.engine.condition.engine.impl.WhereClauseShardingConditionEngine;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
@@ -36,13 +36,11 @@ public final class ShardingConditionEngineFactory {
* Create new instance of sharding condition engine.
*
* @param logicSQL logic SQL
- * @param databaseMetaData database meta data
+ * @param database database
* @param rule sharding rule
* @return created instance
*/
- public static ShardingConditionEngine<?> createShardingConditionEngine(final LogicSQL logicSQL, final ShardingSphereDatabaseMetaData databaseMetaData, final ShardingRule rule) {
- return logicSQL.getSqlStatementContext() instanceof InsertStatementContext
- ? new InsertClauseShardingConditionEngine(rule, databaseMetaData)
- : new WhereClauseShardingConditionEngine(rule, databaseMetaData);
+ public static ShardingConditionEngine<?> createShardingConditionEngine(final LogicSQL logicSQL, final ShardingSphereDatabase database, final ShardingRule rule) {
+ return logicSQL.getSqlStatementContext() instanceof InsertStatementContext ? new InsertClauseShardingConditionEngine(rule, database) : new WhereClauseShardingConditionEngine(rule, database);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/impl/InsertClauseShardingConditionEngine.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/impl/InsertClauseShardingConditionEngine.java
index 8ecb20ed5b7..9a618df1971 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/impl/InsertClauseShardingConditionEngine.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/impl/InsertClauseShardingConditionEngine.java
@@ -26,7 +26,7 @@ import org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementConte
import org.apache.shardingsphere.infra.datetime.DatetimeService;
import org.apache.shardingsphere.infra.datetime.DatetimeServiceFactory;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.route.engine.condition.ExpressionConditionUtils;
import org.apache.shardingsphere.sharding.route.engine.condition.ShardingCondition;
import org.apache.shardingsphere.sharding.route.engine.condition.engine.ShardingConditionEngine;
@@ -55,7 +55,7 @@ public final class InsertClauseShardingConditionEngine implements ShardingCondit
private final ShardingRule shardingRule;
- private final ShardingSphereDatabaseMetaData databaseMetaData;
+ private final ShardingSphereDatabase database;
@Override
public List<ShardingCondition> createShardingConditions(final InsertStatementContext sqlStatementContext, final List<Object> parameters) {
@@ -123,7 +123,7 @@ public final class InsertClauseShardingConditionEngine implements ShardingCondit
private List<ShardingCondition> createShardingConditionsWithInsertSelect(final InsertStatementContext sqlStatementContext, final List<Object> parameters) {
SelectStatementContext selectStatementContext = sqlStatementContext.getInsertSelectContext().getSelectStatementContext();
- return new LinkedList<>(new WhereClauseShardingConditionEngine(shardingRule, databaseMetaData).createShardingConditions(selectStatementContext, parameters));
+ return new LinkedList<>(new WhereClauseShardingConditionEngine(shardingRule, database).createShardingConditions(selectStatementContext, parameters));
}
private void appendGeneratedKeyConditions(final InsertStatementContext sqlStatementContext, final List<ShardingCondition> shardingConditions) {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/impl/WhereClauseShardingConditionEngine.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/impl/WhereClauseShardingConditionEngine.java
index 1a5166a7050..6b34ccb0453 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/impl/WhereClauseShardingConditionEngine.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/impl/WhereClauseShardingConditionEngine.java
@@ -22,7 +22,7 @@ import lombok.RequiredArgsConstructor;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.type.WhereAvailable;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.sharding.route.engine.condition.AlwaysFalseShardingCondition;
import org.apache.shardingsphere.sharding.route.engine.condition.Column;
@@ -60,7 +60,7 @@ public final class WhereClauseShardingConditionEngine implements ShardingConditi
private final ShardingRule shardingRule;
- private final ShardingSphereDatabaseMetaData databaseMetaData;
+ private final ShardingSphereDatabase database;
@Override
public List<ShardingCondition> createShardingConditions(final SQLStatementContext<?> sqlStatementContext, final List<Object> parameters) {
@@ -68,9 +68,9 @@ public final class WhereClauseShardingConditionEngine implements ShardingConditi
return Collections.emptyList();
}
Collection<ColumnSegment> columnSegments = ((WhereAvailable) sqlStatementContext).getColumnSegments();
- String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName());
ShardingSphereSchema schema = sqlStatementContext.getTablesContext().getSchemaName()
- .map(optional -> databaseMetaData.getDatabase().getSchema(optional)).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(optional -> database.getDatabaseMetaData().getSchema(optional)).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
Map<String, String> columnExpressionTableNames = sqlStatementContext.getTablesContext().findTableNamesByColumnSegment(columnSegments, schema);
List<ShardingCondition> result = new ArrayList<>();
for (WhereSegment each : ((WhereAvailable) sqlStatementContext).getWhereSegments()) {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactory.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactory.java
index 4de3d57236b..b81f0a5d220 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactory.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactory.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementConte
import org.apache.shardingsphere.infra.binder.type.TableAvailable;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.route.engine.condition.ShardingCondition;
import org.apache.shardingsphere.sharding.route.engine.condition.ShardingConditions;
import org.apache.shardingsphere.sharding.route.engine.condition.value.ShardingConditionValue;
@@ -77,31 +77,31 @@ public final class ShardingRouteEngineFactory {
* Create new instance of routing engine.
*
* @param shardingRule sharding rule
- * @param databaseMetaData database meta data
+ * @param database database
* @param sqlStatementContext SQL statement context
* @param shardingConditions shardingConditions
* @param props ShardingSphere properties
* @return created instance
*/
- public static ShardingRouteEngine newInstance(final ShardingRule shardingRule, final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatementContext<?> sqlStatementContext,
+ public static ShardingRouteEngine newInstance(final ShardingRule shardingRule, final ShardingSphereDatabase database, final SQLStatementContext<?> sqlStatementContext,
final ShardingConditions shardingConditions, final ConfigurationProperties props) {
SQLStatement sqlStatement = sqlStatementContext.getSqlStatement();
if (sqlStatement instanceof TCLStatement) {
return new ShardingDatabaseBroadcastRoutingEngine();
}
if (sqlStatement instanceof DDLStatement) {
- return getDDLRoutingEngine(shardingRule, databaseMetaData, sqlStatementContext);
+ return getDDLRoutingEngine(shardingRule, database, sqlStatementContext);
}
if (sqlStatement instanceof DALStatement) {
- return getDALRoutingEngine(shardingRule, databaseMetaData, sqlStatementContext);
+ return getDALRoutingEngine(shardingRule, database, sqlStatementContext);
}
if (sqlStatement instanceof DCLStatement) {
- return getDCLRoutingEngine(shardingRule, databaseMetaData, sqlStatementContext);
+ return getDCLRoutingEngine(shardingRule, database, sqlStatementContext);
}
- return getDQLRoutingEngine(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ return getDQLRoutingEngine(shardingRule, database, sqlStatementContext, shardingConditions, props);
}
- private static ShardingRouteEngine getDDLRoutingEngine(final ShardingRule shardingRule, final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatementContext<?> sqlStatementContext) {
+ private static ShardingRouteEngine getDDLRoutingEngine(final ShardingRule shardingRule, final ShardingSphereDatabase database, final SQLStatementContext<?> sqlStatementContext) {
SQLStatement sqlStatement = sqlStatementContext.getSqlStatement();
boolean functionStatement = sqlStatement instanceof CreateFunctionStatement || sqlStatement instanceof AlterFunctionStatement || sqlStatement instanceof DropFunctionStatement;
boolean procedureStatement = sqlStatement instanceof CreateProcedureStatement || sqlStatement instanceof AlterProcedureStatement || sqlStatement instanceof DropProcedureStatement;
@@ -109,7 +109,7 @@ public final class ShardingRouteEngineFactory {
return new ShardingDatabaseBroadcastRoutingEngine();
}
if (sqlStatement instanceof CreateTablespaceStatement || sqlStatement instanceof AlterTablespaceStatement || sqlStatement instanceof DropTablespaceStatement) {
- return new ShardingInstanceBroadcastRoutingEngine(databaseMetaData.getResource().getDataSourcesMetaData());
+ return new ShardingInstanceBroadcastRoutingEngine(database.getResource().getDataSourcesMetaData());
}
Collection<String> tableNames = sqlStatementContext instanceof TableAvailable
? ((TableAvailable) sqlStatementContext).getAllTables().stream().map(each -> each.getTableName().getIdentifier().getValue()).collect(Collectors.toSet())
@@ -118,10 +118,10 @@ public final class ShardingRouteEngineFactory {
if (!tableNames.isEmpty() && shardingRuleTableNames.isEmpty()) {
return new ShardingIgnoreRoutingEngine();
}
- return new ShardingTableBroadcastRoutingEngine(databaseMetaData, sqlStatementContext, shardingRuleTableNames);
+ return new ShardingTableBroadcastRoutingEngine(database, sqlStatementContext, shardingRuleTableNames);
}
- private static ShardingRouteEngine getDALRoutingEngine(final ShardingRule shardingRule, final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatementContext<?> sqlStatementContext) {
+ private static ShardingRouteEngine getDALRoutingEngine(final ShardingRule shardingRule, final ShardingSphereDatabase database, final SQLStatementContext<?> sqlStatementContext) {
SQLStatement sqlStatement = sqlStatementContext.getSqlStatement();
if (sqlStatement instanceof MySQLUseStatement) {
return new ShardingIgnoreRoutingEngine();
@@ -131,7 +131,7 @@ public final class ShardingRouteEngineFactory {
return new ShardingDatabaseBroadcastRoutingEngine();
}
if (isResourceGroupStatement(sqlStatement)) {
- return new ShardingInstanceBroadcastRoutingEngine(databaseMetaData.getResource().getDataSourcesMetaData());
+ return new ShardingInstanceBroadcastRoutingEngine(database.getResource().getDataSourcesMetaData());
}
Collection<String> tableNames = sqlStatementContext.getTablesContext().getTableNames();
Collection<String> shardingRuleTableNames = shardingRule.getShardingRuleTableNames(tableNames);
@@ -139,11 +139,11 @@ public final class ShardingRouteEngineFactory {
return new ShardingIgnoreRoutingEngine();
}
if (sqlStatement instanceof MySQLOptimizeTableStatement) {
- return new ShardingTableBroadcastRoutingEngine(databaseMetaData, sqlStatementContext, shardingRuleTableNames);
+ return new ShardingTableBroadcastRoutingEngine(database, sqlStatementContext, shardingRuleTableNames);
}
if (sqlStatement instanceof AnalyzeTableStatement) {
return shardingRuleTableNames.isEmpty() ? new ShardingDatabaseBroadcastRoutingEngine()
- : new ShardingTableBroadcastRoutingEngine(databaseMetaData, sqlStatementContext, shardingRuleTableNames);
+ : new ShardingTableBroadcastRoutingEngine(database, sqlStatementContext, shardingRuleTableNames);
}
if (!shardingRuleTableNames.isEmpty()) {
return new ShardingUnicastRoutingEngine(shardingRuleTableNames);
@@ -156,14 +156,14 @@ public final class ShardingRouteEngineFactory {
return sqlStatement instanceof MySQLCreateResourceGroupStatement || sqlStatement instanceof MySQLSetResourceGroupStatement;
}
- private static ShardingRouteEngine getDCLRoutingEngine(final ShardingRule shardingRule, final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatementContext<?> sqlStatementContext) {
+ private static ShardingRouteEngine getDCLRoutingEngine(final ShardingRule shardingRule, final ShardingSphereDatabase database, final SQLStatementContext<?> sqlStatementContext) {
if (isDCLForSingleTable(sqlStatementContext)) {
Collection<String> shardingRuleTableNames = shardingRule.getShardingRuleTableNames(sqlStatementContext.getTablesContext().getTableNames());
return !shardingRuleTableNames.isEmpty()
- ? new ShardingTableBroadcastRoutingEngine(databaseMetaData, sqlStatementContext, shardingRuleTableNames)
+ ? new ShardingTableBroadcastRoutingEngine(database, sqlStatementContext, shardingRuleTableNames)
: new ShardingIgnoreRoutingEngine();
} else {
- return new ShardingInstanceBroadcastRoutingEngine(databaseMetaData.getResource().getDataSourcesMetaData());
+ return new ShardingInstanceBroadcastRoutingEngine(database.getResource().getDataSourcesMetaData());
}
}
@@ -175,7 +175,7 @@ public final class ShardingRouteEngineFactory {
return false;
}
- private static ShardingRouteEngine getDQLRoutingEngine(final ShardingRule shardingRule, final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatementContext<?> sqlStatementContext,
+ private static ShardingRouteEngine getDQLRoutingEngine(final ShardingRule shardingRule, final ShardingSphereDatabase database, final SQLStatementContext<?> sqlStatementContext,
final ShardingConditions shardingConditions, final ConfigurationProperties props) {
Collection<String> tableNames = sqlStatementContext.getTablesContext().getTableNames();
if (shardingRule.isAllBroadcastTables(tableNames)) {
@@ -188,13 +188,13 @@ public final class ShardingRouteEngineFactory {
if (shardingLogicTableNames.isEmpty()) {
return new ShardingIgnoreRoutingEngine();
}
- return getDQLRouteEngineForShardingTable(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props, shardingLogicTableNames);
+ return getDQLRouteEngineForShardingTable(shardingRule, database, sqlStatementContext, shardingConditions, props, shardingLogicTableNames);
}
- private static ShardingRouteEngine getDQLRouteEngineForShardingTable(final ShardingRule shardingRule, final ShardingSphereDatabaseMetaData databaseMetaData,
+ private static ShardingRouteEngine getDQLRouteEngineForShardingTable(final ShardingRule shardingRule, final ShardingSphereDatabase database,
final SQLStatementContext<?> sqlStatementContext, final ShardingConditions shardingConditions,
final ConfigurationProperties props, final Collection<String> tableNames) {
- boolean allBindingTables = tableNames.size() > 1 && shardingRule.isAllBindingTables(databaseMetaData, sqlStatementContext, tableNames);
+ boolean allBindingTables = tableNames.size() > 1 && shardingRule.isAllBindingTables(database, sqlStatementContext, tableNames);
if (isShardingFederatedQuery(shardingRule, sqlStatementContext, shardingConditions, props, tableNames, allBindingTables)) {
return new ShardingFederatedRoutingEngine(tableNames);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/broadcast/ShardingTableBroadcastRoutingEngine.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/broadcast/ShardingTableBroadcastRoutingEngine.java
index f5e07a72d0f..1ae765f25cb 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/broadcast/ShardingTableBroadcastRoutingEngine.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/broadcast/ShardingTableBroadcastRoutingEngine.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.type.IndexAvailable;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
import org.apache.shardingsphere.infra.datanode.DataNode;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.QualifiedTable;
import org.apache.shardingsphere.infra.metadata.schema.util.IndexMetaDataUtil;
import org.apache.shardingsphere.infra.route.context.RouteContext;
@@ -45,7 +45,7 @@ import java.util.stream.Collectors;
@RequiredArgsConstructor
public final class ShardingTableBroadcastRoutingEngine implements ShardingRouteEngine {
- private final ShardingSphereDatabaseMetaData databaseMetaData;
+ private final ShardingSphereDatabase database;
private final SQLStatementContext<?> sqlStatementContext;
@@ -108,13 +108,14 @@ public final class ShardingTableBroadcastRoutingEngine implements ShardingRouteE
if (!shardingRuleTableNames.isEmpty()) {
return shardingRuleTableNames;
}
- return sqlStatementContext instanceof IndexAvailable ? getTableNames(databaseMetaData,
- ((IndexAvailable) sqlStatementContext).getIndexes(), sqlStatementContext.getDatabaseType()) : Collections.emptyList();
+ return sqlStatementContext instanceof IndexAvailable
+ ? getTableNames(database, sqlStatementContext.getDatabaseType(), ((IndexAvailable) sqlStatementContext).getIndexes())
+ : Collections.emptyList();
}
- private Collection<String> getTableNames(final ShardingSphereDatabaseMetaData databaseMetaData, final Collection<IndexSegment> indexes, final DatabaseType databaseType) {
+ private Collection<String> getTableNames(final ShardingSphereDatabase database, final DatabaseType databaseType, final Collection<IndexSegment> indexes) {
Collection<String> result = new LinkedList<>();
- for (QualifiedTable each : IndexMetaDataUtil.getTableNamesFromMetaData(databaseMetaData, indexes, databaseType)) {
+ for (QualifiedTable each : IndexMetaDataUtil.getTableNames(database, databaseType, indexes)) {
result.add(each.getTableName());
}
return result;
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ShardingStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ShardingStatementValidator.java
index 839335d1a65..67f9001d0d5 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ShardingStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ShardingStatementValidator.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -39,9 +39,9 @@ public interface ShardingStatementValidator<T extends SQLStatement> {
* @param shardingRule sharding rule
* @param sqlStatementContext SQL statement context
* @param parameters SQL parameters
- * @param databaseMetaData database meta data
+ * @param database database
*/
- void preValidate(ShardingRule shardingRule, SQLStatementContext<T> sqlStatementContext, List<Object> parameters, ShardingSphereDatabaseMetaData databaseMetaData);
+ void preValidate(ShardingRule shardingRule, SQLStatementContext<T> sqlStatementContext, List<Object> parameters, ShardingSphereDatabase database);
/**
* Validate whether sharding operation is supported after route.
@@ -49,10 +49,10 @@ public interface ShardingStatementValidator<T extends SQLStatement> {
* @param shardingRule sharding rule
* @param sqlStatementContext SQL statement context
* @param parameters SQL parameters
- * @param databaseMetaData database meta data
+ * @param database database
* @param props props
* @param routeContext route context
*/
- void postValidate(ShardingRule shardingRule, SQLStatementContext<T> sqlStatementContext, List<Object> parameters,
- ShardingSphereDatabaseMetaData databaseMetaData, ConfigurationProperties props, RouteContext routeContext);
+ void postValidate(ShardingRule shardingRule,
+ SQLStatementContext<T> sqlStatementContext, List<Object> parameters, ShardingSphereDatabase database, ConfigurationProperties props, RouteContext routeContext);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterIndexStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterIndexStatementValidator.java
index dfebcd5e73c..5c92e4514ed 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterIndexStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterIndexStatementValidator.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
@@ -38,12 +38,12 @@ import java.util.Optional;
public final class ShardingAlterIndexStatementValidator extends ShardingDDLStatementValidator<AlterIndexStatement> {
@Override
- public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<AlterIndexStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ public void preValidate(final ShardingRule shardingRule,
+ final SQLStatementContext<AlterIndexStatement> sqlStatementContext, final List<Object> parameters, final ShardingSphereDatabase database) {
Optional<IndexSegment> index = sqlStatementContext.getSqlStatement().getIndex();
- String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName());
ShardingSphereSchema schema = index.flatMap(optional -> optional.getOwner()
- .map(owner -> databaseMetaData.getDatabase().getSchema(owner.getIdentifier().getValue()))).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(owner -> database.getDatabaseMetaData().getSchema(owner.getIdentifier().getValue()))).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
if (index.isPresent() && !isSchemaContainsIndex(schema, index.get())) {
throw new ShardingSphereException("Index '%s' does not exist.", index.get().getIndexName().getIdentifier().getValue());
}
@@ -55,6 +55,6 @@ public final class ShardingAlterIndexStatementValidator extends ShardingDDLState
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<AlterIndexStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterTableStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterTableStatementValidator.java
index 1e2254324b0..f13557f99c6 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterTableStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterTableStatementValidator.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.type.TableAvailable;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
@@ -40,7 +40,7 @@ public final class ShardingAlterTableStatementValidator extends ShardingDDLState
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<AlterTableStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
Collection<String> tableNames = sqlStatementContext instanceof TableAvailable
? ((TableAvailable) sqlStatementContext).getAllTables().stream().map(each -> each.getTableName().getIdentifier().getValue()).collect(Collectors.toList())
: sqlStatementContext.getTablesContext().getTableNames();
@@ -56,7 +56,7 @@ public final class ShardingAlterTableStatementValidator extends ShardingDDLState
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<AlterTableStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
String primaryTable = sqlStatementContext.getSqlStatement().getTable().getTableName().getIdentifier().getValue();
if (isRouteUnitDataNodeDifferentSize(shardingRule, routeContext, primaryTable)) {
throw new ShardingSphereException("ALTER TABLE ... statement can not route correctly for tables %s.", sqlStatementContext.getTablesContext().getTableNames());
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterViewStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterViewStatementValidator.java
index 4cbf7add339..19c8efe4eb6 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterViewStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingAlterViewStatementValidator.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
@@ -38,7 +38,7 @@ public final class ShardingAlterViewStatementValidator extends ShardingDDLStatem
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<AlterViewStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
Optional<SelectStatement> selectStatement = AlterViewStatementHandler.getSelectStatement(sqlStatementContext.getSqlStatement());
if (selectStatement.isPresent()) {
TableExtractor extractor = new TableExtractor();
@@ -49,6 +49,6 @@ public final class ShardingAlterViewStatementValidator extends ShardingDDLStatem
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<AlterViewStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateFunctionStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateFunctionStatementValidator.java
index b54499912c9..7c42c9a2b42 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateFunctionStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateFunctionStatementValidator.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
@@ -41,7 +41,7 @@ public final class ShardingCreateFunctionStatementValidator extends ShardingDDLS
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<CreateFunctionStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
Optional<RoutineBodySegment> routineBodySegment = CreateFunctionStatementHandler.getRoutineBodySegment(sqlStatementContext.getSqlStatement());
if (!routineBodySegment.isPresent()) {
return;
@@ -49,15 +49,15 @@ public final class ShardingCreateFunctionStatementValidator extends ShardingDDLS
TableExtractor extractor = new TableExtractor();
Collection<SimpleTableSegment> existTables = extractor.extractExistTableFromRoutineBody(routineBodySegment.get());
validateShardingTable(shardingRule, existTables);
- String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName());
ShardingSphereSchema schema = sqlStatementContext.getSqlStatement().getFunctionName().flatMap(optional -> optional.getOwner()
- .map(owner -> databaseMetaData.getDatabase().getSchema(owner.getIdentifier().getValue()))).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(owner -> database.getDatabaseMetaData().getSchema(owner.getIdentifier().getValue()))).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
validateTableExist(schema, existTables);
validateTableNotExist(schema, extractor.extractNotExistTableFromRoutineBody(routineBodySegment.get()));
}
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<CreateFunctionStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateIndexStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateIndexStatementValidator.java
index d845bfc7816..11e60ebb43e 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateIndexStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateIndexStatementValidator.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.type.IndexAvailable;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
@@ -38,10 +38,10 @@ public final class ShardingCreateIndexStatementValidator extends ShardingDDLStat
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<CreateIndexStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
- String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ final List<Object> parameters, final ShardingSphereDatabase database) {
+ String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName());
ShardingSphereSchema schema = sqlStatementContext.getTablesContext().getSchemaName()
- .map(optional -> databaseMetaData.getDatabase().getSchema(optional)).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(optional -> database.getDatabaseMetaData().getSchema(optional)).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
validateTableExist(schema, Collections.singletonList(sqlStatementContext.getSqlStatement().getTable()));
String tableName = sqlStatementContext.getSqlStatement().getTable().getTableName().getIdentifier().getValue();
String indexName = ((IndexAvailable) sqlStatementContext).getIndexes().stream().map(each -> each.getIndexName().getIdentifier().getValue()).findFirst().orElse(null);
@@ -52,6 +52,6 @@ public final class ShardingCreateIndexStatementValidator extends ShardingDDLStat
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<CreateIndexStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateProcedureStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateProcedureStatementValidator.java
index 5be5a192a99..3965feaeb83 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateProcedureStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateProcedureStatementValidator.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
@@ -41,15 +41,15 @@ public final class ShardingCreateProcedureStatementValidator extends ShardingDDL
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<CreateProcedureStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
Optional<RoutineBodySegment> routineBodySegment = CreateProcedureStatementHandler.getRoutineBodySegment(sqlStatementContext.getSqlStatement());
if (!routineBodySegment.isPresent()) {
return;
}
TableExtractor extractor = new TableExtractor();
- String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName());
ShardingSphereSchema schema = sqlStatementContext.getSqlStatement().getProcedureName().flatMap(optional -> optional.getOwner()
- .map(owner -> databaseMetaData.getDatabase().getSchema(owner.getIdentifier().getValue()))).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(owner -> database.getDatabaseMetaData().getSchema(owner.getIdentifier().getValue()))).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
Collection<SimpleTableSegment> existTables = extractor.extractExistTableFromRoutineBody(routineBodySegment.get());
validateShardingTable(shardingRule, existTables);
validateTableExist(schema, existTables);
@@ -59,6 +59,6 @@ public final class ShardingCreateProcedureStatementValidator extends ShardingDDL
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<CreateProcedureStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateTableStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateTableStatementValidator.java
index 4c92aaeef06..a8139ee3db4 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateTableStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateTableStatementValidator.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
@@ -37,19 +37,19 @@ import java.util.List;
public final class ShardingCreateTableStatementValidator extends ShardingDDLStatementValidator<CreateTableStatement> {
@Override
- public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<CreateTableStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ public void preValidate(final ShardingRule shardingRule,
+ final SQLStatementContext<CreateTableStatement> sqlStatementContext, final List<Object> parameters, final ShardingSphereDatabase database) {
if (!CreateTableStatementHandler.containsNotExistClause(sqlStatementContext.getSqlStatement())) {
- String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName());
ShardingSphereSchema schema = sqlStatementContext.getTablesContext().getSchemaName()
- .map(optional -> databaseMetaData.getDatabase().getSchema(optional)).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(optional -> database.getDatabaseMetaData().getSchema(optional)).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
validateTableNotExist(schema, Collections.singletonList(sqlStatementContext.getSqlStatement().getTable()));
}
}
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<CreateTableStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
String primaryTable = sqlStatementContext.getSqlStatement().getTable().getTableName().getIdentifier().getValue();
if (isRouteUnitDataNodeDifferentSize(shardingRule, routeContext, primaryTable)) {
throw new ShardingSphereException("CREATE TABLE ... statement can not route correctly for tables %s.", sqlStatementContext.getTablesContext().getTableNames());
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateViewStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateViewStatementValidator.java
index d5ba0eb74f3..c2532bd6985 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateViewStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingCreateViewStatementValidator.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
@@ -37,7 +37,7 @@ public final class ShardingCreateViewStatementValidator extends ShardingDDLState
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<CreateViewStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
Optional<SelectStatement> selectStatement = sqlStatementContext.getSqlStatement().getSelect();
if (selectStatement.isPresent()) {
TableExtractor extractor = new TableExtractor();
@@ -48,6 +48,6 @@ public final class ShardingCreateViewStatementValidator extends ShardingDDLState
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<CreateViewStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingDropIndexStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingDropIndexStatementValidator.java
index 2da4ced1186..4aefc4ecc6d 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingDropIndexStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingDropIndexStatementValidator.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
@@ -40,15 +40,14 @@ import java.util.stream.Collectors;
public final class ShardingDropIndexStatementValidator extends ShardingDDLStatementValidator<DropIndexStatement> {
@Override
- public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<DropIndexStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<DropIndexStatement> sqlStatementContext, final List<Object> parameters, final ShardingSphereDatabase database) {
if (DropIndexStatementHandler.containsExistClause(sqlStatementContext.getSqlStatement())) {
return;
}
- String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName());
for (IndexSegment each : sqlStatementContext.getSqlStatement().getIndexes()) {
ShardingSphereSchema schema = each.getOwner().map(optional -> optional.getIdentifier().getValue())
- .map(optional -> databaseMetaData.getDatabase().getSchema(optional)).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(optional -> database.getDatabaseMetaData().getSchema(optional)).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
if (!isSchemaContainsIndex(schema, each)) {
throw new ShardingSphereException("Index '%s' does not exist.", each.getIndexName().getIdentifier().getValue());
}
@@ -57,16 +56,16 @@ public final class ShardingDropIndexStatementValidator extends ShardingDDLStatem
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<DropIndexStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
Collection<IndexSegment> indexSegments = sqlStatementContext.getSqlStatement().getIndexes();
Optional<String> logicTableName = DropIndexStatementHandler.getSimpleTableSegment(sqlStatementContext.getSqlStatement()).map(optional -> optional.getTableName().getIdentifier().getValue());
if (logicTableName.isPresent()) {
validateDropIndexRouteUnit(shardingRule, routeContext, indexSegments, logicTableName.get());
} else {
- String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName());
for (IndexSegment each : indexSegments) {
ShardingSphereSchema schema = each.getOwner().map(optional -> optional.getIdentifier().getValue())
- .map(optional -> databaseMetaData.getDatabase().getSchema(optional)).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(optional -> database.getDatabaseMetaData().getSchema(optional)).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
logicTableName = schema.getAllTableNames().stream().filter(tableName -> schema.get(tableName).getIndexes().containsKey(each.getIndexName().getIdentifier().getValue())).findFirst();
logicTableName.ifPresent(optional -> validateDropIndexRouteUnit(shardingRule, routeContext, indexSegments, optional));
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingDropTableStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingDropTableStatementValidator.java
index cf7dff44b8e..c4fda258137 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingDropTableStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingDropTableStatementValidator.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.datanode.DataNode;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
@@ -44,18 +44,18 @@ public final class ShardingDropTableStatementValidator extends ShardingDDLStatem
@Override
public void preValidate(final ShardingRule shardingRule,
- final SQLStatementContext<DropTableStatement> sqlStatementContext, final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final SQLStatementContext<DropTableStatement> sqlStatementContext, final List<Object> parameters, final ShardingSphereDatabase database) {
if (!DropTableStatementHandler.containsExistClause(sqlStatementContext.getSqlStatement())) {
- String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName());
ShardingSphereSchema schema = sqlStatementContext.getTablesContext().getSchemaName()
- .map(optional -> databaseMetaData.getDatabase().getSchema(optional)).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(optional -> database.getDatabaseMetaData().getSchema(optional)).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
validateTableExist(schema, sqlStatementContext.getTablesContext().getTables());
}
}
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<DropTableStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
checkTableInUsed(shardingRule, sqlStatementContext.getSqlStatement(), routeContext);
for (SimpleTableSegment each : sqlStatementContext.getSqlStatement().getTables()) {
if (isRouteUnitDataNodeDifferentSize(shardingRule, routeContext, each.getTableName().getIdentifier().getValue())) {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingPrepareStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingPrepareStatementValidator.java
index b5bdb427126..3f8ee81384f 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingPrepareStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingPrepareStatementValidator.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteUnit;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
@@ -37,12 +37,12 @@ public final class ShardingPrepareStatementValidator extends ShardingDDLStatemen
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<PrepareStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
}
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<PrepareStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
if (routeContext.getRouteUnits().isEmpty()) {
throw new ShardingSphereException("Can not get route result, please check your sharding table config.");
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingRenameTableStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingRenameTableStatementValidator.java
index 65bf026d37a..1e1c07c22db 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingRenameTableStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/impl/ShardingRenameTableStatementValidator.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.type.TableAvailable;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.ShardingDDLStatementValidator;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
@@ -40,7 +40,7 @@ public final class ShardingRenameTableStatementValidator extends ShardingDDLStat
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<RenameTableStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
Collection<String> tableNames = sqlStatementContext instanceof TableAvailable
? ((TableAvailable) sqlStatementContext).getAllTables().stream().map(each -> each.getTableName().getIdentifier().getValue()).collect(Collectors.toList())
: sqlStatementContext.getTablesContext().getTableNames();
@@ -56,7 +56,7 @@ public final class ShardingRenameTableStatementValidator extends ShardingDDLStat
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<RenameTableStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
for (RenameTableDefinitionSegment each : sqlStatementContext.getSqlStatement().getRenameTables()) {
String primaryTable = each.getTable().getTableName().getIdentifier().getValue();
if (isRouteUnitDataNodeDifferentSize(shardingRule, routeContext, primaryTable)) {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingCopyStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingCopyStatementValidator.java
index ba3ca1fbd9e..5b63b73ae53 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingCopyStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingCopyStatementValidator.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.dml.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.dml.ShardingDMLStatementValidator;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
@@ -35,7 +35,7 @@ public final class ShardingCopyStatementValidator extends ShardingDMLStatementVa
@Override
public void preValidate(final ShardingRule shardingRule,
- final SQLStatementContext<CopyStatement> sqlStatementContext, final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final SQLStatementContext<CopyStatement> sqlStatementContext, final List<Object> parameters, final ShardingSphereDatabase database) {
String tableName = sqlStatementContext.getSqlStatement().getTableSegment().getTableName().getIdentifier().getValue();
if (shardingRule.isShardingTable(tableName)) {
throw new ShardingSphereException("COPY statement can not support sharding table %s.", tableName);
@@ -44,6 +44,6 @@ public final class ShardingCopyStatementValidator extends ShardingDMLStatementVa
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<CopyStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final List<Object> parameters, final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingDeleteStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingDeleteStatementValidator.java
index 903107b77f8..078ed779d20 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingDeleteStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingDeleteStatementValidator.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.dml.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.dml.ShardingDMLStatementValidator;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
@@ -36,13 +36,13 @@ public final class ShardingDeleteStatementValidator extends ShardingDMLStatement
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<DeleteStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
validateMultipleTable(shardingRule, sqlStatementContext);
}
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<DeleteStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
if (DeleteStatementHandler.getLimitSegment(sqlStatementContext.getSqlStatement()).isPresent() && routeContext.getRouteUnits().size() > 1) {
throw new ShardingSphereException("DELETE ... LIMIT can not support sharding route to multiple data nodes.");
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingInsertStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingInsertStatementValidator.java
index 0fb61f18403..722aac4fadc 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingInsertStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingInsertStatementValidator.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.statement.dml.InsertStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.condition.ShardingConditions;
import org.apache.shardingsphere.sharding.route.engine.type.standard.ShardingStandardRoutingEngine;
@@ -52,7 +52,7 @@ public final class ShardingInsertStatementValidator extends ShardingDMLStatement
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<InsertStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
if (null == ((InsertStatementContext) sqlStatementContext).getInsertSelectContext()) {
validateMultipleTable(shardingRule, sqlStatementContext);
}
@@ -83,7 +83,7 @@ public final class ShardingInsertStatementValidator extends ShardingDMLStatement
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<InsertStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
Optional<SubquerySegment> insertSelect = sqlStatementContext.getSqlStatement().getInsertSelect();
if (insertSelect.isPresent() && shardingConditions.isNeedMerge()) {
boolean singleRoutingOrSameShardingCondition = routeContext.isSingleRouting() || shardingConditions.isSameShardingCondition();
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingSelectStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingSelectStatementValidator.java
index c745e2959df..636a598d7e4 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingSelectStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingSelectStatementValidator.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.dml.impl;
import lombok.RequiredArgsConstructor;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.validator.dml.ShardingDMLStatementValidator;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
@@ -36,11 +36,11 @@ public final class ShardingSelectStatementValidator extends ShardingDMLStatement
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<SelectStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
}
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<SelectStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingUpdateStatementValidator.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingUpdateStatementValidator.java
index 2570d620f38..c20fc6e09fc 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingUpdateStatementValidator.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/impl/ShardingUpdateStatementValidator.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.dml.impl;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.sharding.route.engine.condition.ShardingConditions;
import org.apache.shardingsphere.sharding.route.engine.type.standard.ShardingStandardRoutingEngine;
@@ -39,13 +39,13 @@ public final class ShardingUpdateStatementValidator extends ShardingDMLStatement
@Override
public void preValidate(final ShardingRule shardingRule, final SQLStatementContext<UpdateStatement> sqlStatementContext,
- final List<Object> parameters, final ShardingSphereDatabaseMetaData databaseMetaData) {
+ final List<Object> parameters, final ShardingSphereDatabase database) {
validateMultipleTable(shardingRule, sqlStatementContext);
}
@Override
public void postValidate(final ShardingRule shardingRule, final SQLStatementContext<UpdateStatement> sqlStatementContext, final List<Object> parameters,
- final ShardingSphereDatabaseMetaData databaseMetaData, final ConfigurationProperties props, final RouteContext routeContext) {
+ final ShardingSphereDatabase database, final ConfigurationProperties props, final RouteContext routeContext) {
String tableName = sqlStatementContext.getTablesContext().getTableNames().iterator().next();
Optional<ShardingConditions> shardingConditions = createShardingConditions(sqlStatementContext, shardingRule,
sqlStatementContext.getSqlStatement().getSetAssignment().getAssignments(), parameters);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/rule/ShardingRule.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/rule/ShardingRule.java
index 3b1ef846cf9..38b02b8624d 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/rule/ShardingRule.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/rule/ShardingRule.java
@@ -27,7 +27,7 @@ import org.apache.shardingsphere.infra.config.exception.ShardingSphereConfigurat
import org.apache.shardingsphere.infra.datanode.DataNode;
import org.apache.shardingsphere.infra.expr.InlineExpressionParser;
import org.apache.shardingsphere.infra.instance.InstanceContext;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.rule.identifier.scope.SchemaRule;
import org.apache.shardingsphere.infra.rule.identifier.type.DataNodeContainedRule;
@@ -374,21 +374,21 @@ public final class ShardingRule implements SchemaRule, DataNodeContainedRule, Ta
/**
* Judge whether logic table is all binding tables.
*
- * @param databaseMetaData database meta data
+ * @param database database
* @param sqlStatementContext sqlStatementContext
* @param logicTableNames logic table names
* @return whether logic table is all binding tables
*/
- public boolean isAllBindingTables(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatementContext<?> sqlStatementContext, final Collection<String> logicTableNames) {
+ public boolean isAllBindingTables(final ShardingSphereDatabase database, final SQLStatementContext<?> sqlStatementContext, final Collection<String> logicTableNames) {
if (!(sqlStatementContext instanceof SelectStatementContext && ((SelectStatementContext) sqlStatementContext).isContainsJoinQuery())) {
return isAllBindingTables(logicTableNames);
}
if (!isAllBindingTables(logicTableNames)) {
return false;
}
- String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(databaseMetaData.getDatabase().getName());
+ String defaultSchema = sqlStatementContext.getDatabaseType().getDefaultSchema(database.getName());
ShardingSphereSchema schema = sqlStatementContext.getTablesContext().getSchemaName()
- .map(optional -> databaseMetaData.getDatabase().getSchema(optional)).orElseGet(() -> databaseMetaData.getDatabase().getSchema(defaultSchema));
+ .map(optional -> database.getDatabaseMetaData().getSchema(optional)).orElseGet(() -> database.getDatabaseMetaData().getSchema(defaultSchema));
SelectStatementContext select = (SelectStatementContext) sqlStatementContext;
Collection<WhereSegment> joinSegments = WhereExtractUtil.getJoinWhereSegments(select.getSqlStatement());
return isJoinConditionContainsShardingColumns(schema, select, logicTableNames, joinSegments)
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/ShardingResultMergerEngineTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/ShardingResultMergerEngineTest.java
index e08713edcec..31288a62831 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/ShardingResultMergerEngineTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/ShardingResultMergerEngineTest.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.merge.engine.merger.impl.TransparentResultMerger;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.sharding.merge.dal.ShardingDALResultMerger;
import org.apache.shardingsphere.sharding.merge.dql.ShardingDQLResultMerger;
@@ -46,7 +46,6 @@ import org.apache.shardingsphere.sql.parser.sql.dialect.statement.sqlserver.dml.
import org.junit.Test;
import java.util.Collections;
-import java.util.Map;
import java.util.Properties;
import static org.hamcrest.CoreMatchers.instanceOf;
@@ -84,10 +83,10 @@ public final class ShardingResultMergerEngineTest {
private void assertNewInstanceWithSelectStatement(final SelectStatement selectStatement) {
ConfigurationProperties props = new ConfigurationProperties(new Properties());
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext sqlStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
+ SelectStatementContext sqlStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database),
Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
assertThat(new ShardingResultMergerEngine().newInstance(DefaultDatabase.LOGIC_NAME, DatabaseTypeFactory.getInstance("MySQL"), null, props,
sqlStatementContext), instanceOf(ShardingDQLResultMerger.class));
@@ -114,9 +113,8 @@ public final class ShardingResultMergerEngineTest {
}
private InsertStatementContext createInsertStatementContext(final InsertStatement insertStatement) {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
- Map<String, ShardingSphereDatabaseMetaData> databaseMetaDataMap = Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData);
- return new InsertStatementContext(databaseMetaDataMap, Collections.emptyList(), insertStatement, DefaultDatabase.LOGIC_NAME);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ return new InsertStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(), insertStatement, DefaultDatabase.LOGIC_NAME);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dal/ShardingDALResultMergerTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dal/ShardingDALResultMergerTest.java
index c2f0457b943..e039c6513e9 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dal/ShardingDALResultMergerTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dal/ShardingDALResultMergerTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.dialect.MySQLDatabaseType;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.merge.result.impl.transparent.TransparentMergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.merge.dal.common.SingleLocalDataMergedResult;
import org.apache.shardingsphere.sharding.merge.dal.show.LogicTablesMergedResult;
import org.apache.shardingsphere.sharding.merge.dal.show.ShowCreateTableMergedResult;
@@ -66,9 +66,9 @@ public final class ShardingDALResultMergerTest {
DALStatement dalStatement = new MySQLShowDatabasesStatement();
SQLStatementContext<?> sqlStatementContext = mockSQLStatementContext(dalStatement);
ShardingDALResultMerger resultMerger = new ShardingDALResultMerger(DefaultDatabase.LOGIC_NAME, null);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(queryResults, sqlStatementContext, databaseMetaData), instanceOf(SingleLocalDataMergedResult.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ assertThat(resultMerger.merge(queryResults, sqlStatementContext, database), instanceOf(SingleLocalDataMergedResult.class));
}
@Test
@@ -76,9 +76,9 @@ public final class ShardingDALResultMergerTest {
DALStatement dalStatement = new MySQLShowTablesStatement();
SQLStatementContext<?> sqlStatementContext = mockSQLStatementContext(dalStatement);
ShardingDALResultMerger resultMerger = new ShardingDALResultMerger(DefaultDatabase.LOGIC_NAME, null);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(queryResults, sqlStatementContext, databaseMetaData), instanceOf(LogicTablesMergedResult.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ assertThat(resultMerger.merge(queryResults, sqlStatementContext, database), instanceOf(LogicTablesMergedResult.class));
}
@Test
@@ -86,9 +86,9 @@ public final class ShardingDALResultMergerTest {
DALStatement dalStatement = new MySQLShowCreateTableStatement();
SQLStatementContext<?> sqlStatementContext = mockSQLStatementContext(dalStatement);
ShardingDALResultMerger resultMerger = new ShardingDALResultMerger(DefaultDatabase.LOGIC_NAME, null);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(queryResults, sqlStatementContext, databaseMetaData), instanceOf(ShowCreateTableMergedResult.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ assertThat(resultMerger.merge(queryResults, sqlStatementContext, database), instanceOf(ShowCreateTableMergedResult.class));
}
@Test
@@ -96,9 +96,9 @@ public final class ShardingDALResultMergerTest {
DALStatement dalStatement = new MySQLShowOtherStatement();
SQLStatementContext<?> sqlStatementContext = mockSQLStatementContext(dalStatement);
ShardingDALResultMerger resultMerger = new ShardingDALResultMerger(DefaultDatabase.LOGIC_NAME, null);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(queryResults, sqlStatementContext, databaseMetaData), instanceOf(TransparentMergedResult.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ assertThat(resultMerger.merge(queryResults, sqlStatementContext, database), instanceOf(TransparentMergedResult.class));
}
@Test
@@ -106,9 +106,9 @@ public final class ShardingDALResultMergerTest {
DALStatement dalStatement = new MySQLExplainStatement();
SQLStatementContext<?> sqlStatementContext = mockSQLStatementContext(dalStatement);
ShardingDALResultMerger resultMerger = new ShardingDALResultMerger(DefaultDatabase.LOGIC_NAME, mock(ShardingRule.class));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(queryResults, sqlStatementContext, databaseMetaData), instanceOf(TransparentMergedResult.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ assertThat(resultMerger.merge(queryResults, sqlStatementContext, database), instanceOf(TransparentMergedResult.class));
}
@Test
@@ -116,9 +116,9 @@ public final class ShardingDALResultMergerTest {
DALStatement dalStatement = new MySQLShowIndexStatement();
SQLStatementContext<?> sqlStatementContext = mockSQLStatementContext(dalStatement);
ShardingDALResultMerger resultMerger = new ShardingDALResultMerger(DefaultDatabase.LOGIC_NAME, mock(ShardingRule.class));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(queryResults, sqlStatementContext, databaseMetaData), instanceOf(ShowIndexMergedResult.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ assertThat(resultMerger.merge(queryResults, sqlStatementContext, database), instanceOf(ShowIndexMergedResult.class));
}
@Test
@@ -126,9 +126,9 @@ public final class ShardingDALResultMergerTest {
DALStatement dalStatement = new MySQLShowTableStatusStatement();
SQLStatementContext<?> sqlStatementContext = mockSQLStatementContext(dalStatement);
ShardingDALResultMerger resultMerger = new ShardingDALResultMerger(DefaultDatabase.LOGIC_NAME, mock(ShardingRule.class));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(queryResults, sqlStatementContext, databaseMetaData), instanceOf(ShowTableStatusMergedResult.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ assertThat(resultMerger.merge(queryResults, sqlStatementContext, database), instanceOf(ShowTableStatusMergedResult.class));
}
@SuppressWarnings("unchecked")
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMergerTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMergerTest.java
index 5f6e39bc326..e23ca1ab2e3 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMergerTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMergerTest.java
@@ -23,8 +23,8 @@ import org.apache.shardingsphere.infra.database.type.DatabaseType;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
-import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabaseMetaData;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
@@ -80,39 +80,39 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildIteratorStreamMergedResult() throws SQLException {
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
SelectStatement selectStatement = buildSelectStatement(new MySQLSelectStatement());
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData()), instanceOf(IteratorStreamMergedResult.class));
+ assertThat(resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase()), instanceOf(IteratorStreamMergedResult.class));
}
@Test
public void assertBuildIteratorStreamMergedResultWithLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
MySQLSelectStatement selectStatement = (MySQLSelectStatement) buildSelectStatement(new MySQLSelectStatement());
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralLimitValueSegment(0, 0, 1), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(Collections.singletonList(createQueryResult()), selectStatementContext, createDatabaseMetaData()), instanceOf(IteratorStreamMergedResult.class));
+ assertThat(resultMerger.merge(Collections.singletonList(createQueryResult()), selectStatementContext, createDatabase()), instanceOf(IteratorStreamMergedResult.class));
}
@Test
public void assertBuildIteratorStreamMergedResultWithMySQLLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
MySQLSelectStatement selectStatement = (MySQLSelectStatement) buildSelectStatement(new MySQLSelectStatement());
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralLimitValueSegment(0, 0, 1), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(LimitDecoratorMergedResult.class));
assertThat(((LimitDecoratorMergedResult) actual).getMergedResult(), instanceOf(IteratorStreamMergedResult.class));
}
@@ -120,7 +120,7 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildIteratorStreamMergedResultWithOracleLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("Oracle"));
- final ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ final ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
OracleSelectStatement selectStatement = (OracleSelectStatement) buildSelectStatement(new OracleSelectStatement());
selectStatement.setProjections(new ProjectionsSegment(0, 0));
WhereSegment whereSegment = mock(WhereSegment.class);
@@ -141,9 +141,9 @@ public final class ShardingDQLResultMergerTest {
when(subqueryTableSegment.getSubquery()).thenReturn(subquerySegment);
selectStatement.setFrom(subqueryTableSegment);
selectStatement.setWhere(whereSegment);
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database),
null, selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(RowNumberDecoratorMergedResult.class));
assertThat(((RowNumberDecoratorMergedResult) actual).getMergedResult(), instanceOf(IteratorStreamMergedResult.class));
}
@@ -151,14 +151,14 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildIteratorStreamMergedResultWithSQLServerLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("SQLServer"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
SQLServerSelectStatement selectStatement = (SQLServerSelectStatement) buildSelectStatement(new SQLServerSelectStatement());
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralLimitValueSegment(0, 0, 1), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(TopAndRowNumberDecoratorMergedResult.class));
assertThat(((TopAndRowNumberDecoratorMergedResult) actual).getMergedResult(), instanceOf(IteratorStreamMergedResult.class));
}
@@ -166,28 +166,28 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildOrderByStreamMergedResult() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
MySQLSelectStatement selectStatement = (MySQLSelectStatement) buildSelectStatement(new MySQLSelectStatement());
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData()), instanceOf(OrderByStreamMergedResult.class));
+ assertThat(resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase()), instanceOf(OrderByStreamMergedResult.class));
}
@Test
public void assertBuildOrderByStreamMergedResultWithMySQLLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
MySQLSelectStatement selectStatement = (MySQLSelectStatement) buildSelectStatement(new MySQLSelectStatement());
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralLimitValueSegment(0, 0, 1), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(LimitDecoratorMergedResult.class));
assertThat(((LimitDecoratorMergedResult) actual).getMergedResult(), instanceOf(OrderByStreamMergedResult.class));
}
@@ -195,7 +195,7 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildOrderByStreamMergedResultWithOracleLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("Oracle"));
- final ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ final ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
WhereSegment whereSegment = mock(WhereSegment.class);
BinaryOperationExpression binaryOperationExpression = mock(BinaryOperationExpression.class);
when(binaryOperationExpression.getLeft()).thenReturn(new ColumnSegment(0, 0, new IdentifierValue("row_id")));
@@ -217,9 +217,9 @@ public final class ShardingDQLResultMergerTest {
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setFrom(subqueryTableSegment);
selectStatement.setWhere(whereSegment);
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), null,
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), null,
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(RowNumberDecoratorMergedResult.class));
assertThat(((RowNumberDecoratorMergedResult) actual).getMergedResult(), instanceOf(OrderByStreamMergedResult.class));
}
@@ -227,15 +227,15 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildOrderByStreamMergedResultWithSQLServerLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("SQLServer"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
SQLServerSelectStatement selectStatement = (SQLServerSelectStatement) buildSelectStatement(new SQLServerSelectStatement());
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralRowNumberValueSegment(0, 0, 1, true), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(TopAndRowNumberDecoratorMergedResult.class));
assertThat(((TopAndRowNumberDecoratorMergedResult) actual).getMergedResult(), instanceOf(OrderByStreamMergedResult.class));
}
@@ -243,30 +243,30 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildGroupByStreamMergedResult() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
MySQLSelectStatement selectStatement = (MySQLSelectStatement) buildSelectStatement(new MySQLSelectStatement());
selectStatement.setGroupBy(new GroupBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData()), instanceOf(GroupByStreamMergedResult.class));
+ assertThat(resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase()), instanceOf(GroupByStreamMergedResult.class));
}
@Test
public void assertBuildGroupByStreamMergedResultWithMySQLLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
MySQLSelectStatement selectStatement = (MySQLSelectStatement) buildSelectStatement(new MySQLSelectStatement());
selectStatement.setGroupBy(new GroupBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralLimitValueSegment(0, 0, 1), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(LimitDecoratorMergedResult.class));
assertThat(((LimitDecoratorMergedResult) actual).getMergedResult(), instanceOf(GroupByStreamMergedResult.class));
}
@@ -274,7 +274,7 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildGroupByStreamMergedResultWithOracleLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("Oracle"));
- final ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ final ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
WhereSegment whereSegment = mock(WhereSegment.class);
BinaryOperationExpression binaryOperationExpression = mock(BinaryOperationExpression.class);
when(binaryOperationExpression.getLeft()).thenReturn(new ColumnSegment(0, 0, new IdentifierValue("row_id")));
@@ -297,9 +297,9 @@ public final class ShardingDQLResultMergerTest {
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setFrom(subqueryTableSegment);
selectStatement.setWhere(whereSegment);
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), null,
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), null,
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(RowNumberDecoratorMergedResult.class));
assertThat(((RowNumberDecoratorMergedResult) actual).getMergedResult(), instanceOf(GroupByStreamMergedResult.class));
}
@@ -307,16 +307,16 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildGroupByStreamMergedResultWithSQLServerLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("SQLServer"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
SQLServerSelectStatement selectStatement = (SQLServerSelectStatement) buildSelectStatement(new SQLServerSelectStatement());
selectStatement.setGroupBy(new GroupBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralRowNumberValueSegment(0, 0, 1, true), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(TopAndRowNumberDecoratorMergedResult.class));
assertThat(((TopAndRowNumberDecoratorMergedResult) actual).getMergedResult(), instanceOf(GroupByStreamMergedResult.class));
}
@@ -324,28 +324,28 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildGroupByMemoryMergedResult() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
MySQLSelectStatement selectStatement = (MySQLSelectStatement) buildSelectStatement(new MySQLSelectStatement());
selectStatement.setGroupBy(new GroupBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData()), instanceOf(GroupByStreamMergedResult.class));
+ assertThat(resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase()), instanceOf(GroupByStreamMergedResult.class));
}
@Test
public void assertBuildGroupByMemoryMergedResultWithMySQLLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
MySQLSelectStatement selectStatement = (MySQLSelectStatement) buildSelectStatement(new MySQLSelectStatement());
selectStatement.setGroupBy(new GroupBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralLimitValueSegment(0, 0, 1), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(LimitDecoratorMergedResult.class));
assertThat(((LimitDecoratorMergedResult) actual).getMergedResult(), instanceOf(GroupByStreamMergedResult.class));
}
@@ -353,7 +353,7 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildGroupByMemoryMergedResultWithOracleLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("Oracle"));
- final ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ final ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
WhereSegment whereSegment = mock(WhereSegment.class);
BinaryOperationExpression binaryOperationExpression = mock(BinaryOperationExpression.class);
when(binaryOperationExpression.getLeft()).thenReturn(new ColumnSegment(0, 0, new IdentifierValue("row_id")));
@@ -376,9 +376,9 @@ public final class ShardingDQLResultMergerTest {
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setFrom(subqueryTableSegment);
selectStatement.setWhere(whereSegment);
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), null,
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), null,
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(RowNumberDecoratorMergedResult.class));
assertThat(((RowNumberDecoratorMergedResult) actual).getMergedResult(), instanceOf(GroupByStreamMergedResult.class));
}
@@ -386,17 +386,17 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildGroupByMemoryMergedResultWithSQLServerLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("SQLServer"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
SQLServerSelectStatement selectStatement = (SQLServerSelectStatement) buildSelectStatement(new SQLServerSelectStatement());
ProjectionsSegment projectionsSegment = new ProjectionsSegment(0, 0);
selectStatement.setProjections(projectionsSegment);
selectStatement.setGroupBy(new GroupBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 1, OrderDirection.ASC, OrderDirection.ASC))));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralRowNumberValueSegment(0, 0, 1, true), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(TopAndRowNumberDecoratorMergedResult.class));
assertThat(((TopAndRowNumberDecoratorMergedResult) actual).getMergedResult(), instanceOf(GroupByMemoryMergedResult.class));
}
@@ -404,31 +404,31 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildGroupByMemoryMergedResultWithAggregationOnly() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
MySQLSelectStatement selectStatement = (MySQLSelectStatement) buildSelectStatement(new MySQLSelectStatement());
ProjectionsSegment projectionsSegment = new ProjectionsSegment(0, 0);
projectionsSegment.getProjections().add(new AggregationProjectionSegment(0, 0, AggregationType.COUNT, "(*)"));
selectStatement.setProjections(projectionsSegment);
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- assertThat(resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData()), instanceOf(GroupByMemoryMergedResult.class));
+ assertThat(resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase()), instanceOf(GroupByMemoryMergedResult.class));
}
@Test
public void assertBuildGroupByMemoryMergedResultWithAggregationOnlyWithMySQLLimit() throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
MySQLSelectStatement selectStatement = (MySQLSelectStatement) buildSelectStatement(new MySQLSelectStatement());
ProjectionsSegment projectionsSegment = new ProjectionsSegment(0, 0);
projectionsSegment.getProjections().add(new AggregationProjectionSegment(0, 0, AggregationType.COUNT, "(*)"));
selectStatement.setProjections(projectionsSegment);
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralLimitValueSegment(0, 0, 1), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
DatabaseType databaseType = DatabaseTypeFactory.getInstance("MySQL");
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(databaseType);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(LimitDecoratorMergedResult.class));
assertThat(((LimitDecoratorMergedResult) actual).getMergedResult(), instanceOf(GroupByMemoryMergedResult.class));
}
@@ -436,7 +436,7 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildGroupByMemoryMergedResultWithAggregationOnlyWithOracleLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("Oracle"));
- final ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ final ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
WhereSegment whereSegment = mock(WhereSegment.class);
BinaryOperationExpression binaryOperationExpression = mock(BinaryOperationExpression.class);
when(binaryOperationExpression.getLeft()).thenReturn(new ColumnSegment(0, 0, new IdentifierValue("row_id")));
@@ -459,9 +459,9 @@ public final class ShardingDQLResultMergerTest {
selectStatement.setProjections(projectionsSegment);
selectStatement.setFrom(subqueryTableSegment);
selectStatement.setWhere(whereSegment);
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), null,
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), null,
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(RowNumberDecoratorMergedResult.class));
assertThat(((RowNumberDecoratorMergedResult) actual).getMergedResult(), instanceOf(GroupByMemoryMergedResult.class));
}
@@ -469,16 +469,16 @@ public final class ShardingDQLResultMergerTest {
@Test
public void assertBuildGroupByMemoryMergedResultWithAggregationOnlyWithSQLServerLimit() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("SQLServer"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
SQLServerSelectStatement selectStatement = (SQLServerSelectStatement) buildSelectStatement(new SQLServerSelectStatement());
ProjectionsSegment projectionsSegment = new ProjectionsSegment(0, 0);
projectionsSegment.getProjections().add(new AggregationProjectionSegment(0, 0, AggregationType.COUNT, "(*)"));
selectStatement.setProjections(projectionsSegment);
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralRowNumberValueSegment(0, 0, 1, true), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabaseMetaData());
+ MergedResult actual = resultMerger.merge(createQueryResults(), selectStatementContext, createDatabase());
assertThat(actual, instanceOf(TopAndRowNumberDecoratorMergedResult.class));
assertThat(((TopAndRowNumberDecoratorMergedResult) actual).getMergedResult(), instanceOf(GroupByMemoryMergedResult.class));
}
@@ -501,14 +501,14 @@ public final class ShardingDQLResultMergerTest {
return result;
}
- private ShardingSphereDatabaseMetaData createDatabaseMetaData() {
+ private ShardingSphereDatabase createDatabase() {
ColumnMetaData columnMetaData1 = new ColumnMetaData("col1", 0, false, false, false);
ColumnMetaData columnMetaData2 = new ColumnMetaData("col2", 0, false, false, false);
ColumnMetaData columnMetaData3 = new ColumnMetaData("col3", 0, false, false, false);
TableMetaData tableMetaData = new TableMetaData("tbl", Arrays.asList(columnMetaData1, columnMetaData2, columnMetaData3), Collections.emptyList(), Collections.emptyList());
ShardingSphereSchema schema = new ShardingSphereSchema(Collections.singletonMap("tbl", tableMetaData));
- return new ShardingSphereDatabaseMetaData(DatabaseTypeFactory.getInstance("MySQL"), mock(ShardingSphereResource.class),
- mock(ShardingSphereRuleMetaData.class), new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.singletonMap(DefaultDatabase.LOGIC_NAME, schema)));
+ return new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, DatabaseTypeFactory.getInstance("MySQL"), mock(ShardingSphereResource.class),
+ mock(ShardingSphereRuleMetaData.class), new ShardingSphereDatabaseMetaData(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, schema)));
}
private SelectStatement buildSelectStatement(final SelectStatement result) {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByMemoryMergedResultTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByMemoryMergedResultTest.java
index 8914036a46b..cb13b859c3c 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByMemoryMergedResultTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByMemoryMergedResultTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.metadata.schema.model.TableMetaData;
import org.apache.shardingsphere.sharding.merge.dql.ShardingDQLResultMerger;
@@ -65,12 +65,12 @@ import static org.mockito.Mockito.when;
public final class GroupByMemoryMergedResultTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test
public void assertNextForResultSetsAllEmpty() throws SQLException {
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- MergedResult actual = resultMerger.merge(Arrays.asList(createQueryResult(), createQueryResult(), createQueryResult()), createSelectStatementContext(), databaseMetaData);
+ MergedResult actual = resultMerger.merge(Arrays.asList(createQueryResult(), createQueryResult(), createQueryResult()), createSelectStatementContext(), database);
assertTrue(actual.next());
assertThat(actual.getValue(1, Object.class), is(0));
assertNull(actual.getValue(2, Object.class));
@@ -95,7 +95,7 @@ public final class GroupByMemoryMergedResultTest {
when(queryResult3.getValue(4, Object.class)).thenReturn(2, 2, 3);
when(queryResult3.getValue(5, Object.class)).thenReturn(20, 20, 30);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- MergedResult actual = resultMerger.merge(Arrays.asList(queryResult1, queryResult2, queryResult3), createSelectStatementContext(), databaseMetaData);
+ MergedResult actual = resultMerger.merge(Arrays.asList(queryResult1, queryResult2, queryResult3), createSelectStatementContext(), database);
assertTrue(actual.next());
assertThat(actual.getValue(1, Object.class), is(new BigDecimal(30)));
assertThat(((BigDecimal) actual.getValue(2, Object.class)).intValue(), is(10));
@@ -119,13 +119,13 @@ public final class GroupByMemoryMergedResultTest {
selectStatement.setProjections(projectionsSegment);
selectStatement.setGroupBy(new GroupBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 3, OrderDirection.ASC, OrderDirection.ASC))));
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 3, OrderDirection.DESC, OrderDirection.ASC))));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
selectStatement.setProjections(projectionsSegment);
- return new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
+ return new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
}
- private SelectStatementContext createSelectStatementContext(final ShardingSphereDatabaseMetaData databaseMetaData) {
+ private SelectStatementContext createSelectStatementContext(final ShardingSphereDatabase database) {
SelectStatement selectStatement = new MySQLSelectStatement();
ProjectionsSegment projectionsSegment = new ProjectionsSegment(0, 0);
projectionsSegment.setDistinctRow(true);
@@ -134,7 +134,7 @@ public final class GroupByMemoryMergedResultTest {
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 3, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setFrom(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order"))));
selectStatement.setProjections(projectionsSegment);
- return new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
+ return new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
}
@Test
@@ -155,7 +155,7 @@ public final class GroupByMemoryMergedResultTest {
when(queryResult3.getValue(4, Object.class)).thenReturn(2, 2, 3);
when(queryResult3.getValue(5, Object.class)).thenReturn(20, 20, 30);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- MergedResult actual = resultMerger.merge(Arrays.asList(queryResult1, queryResult2, queryResult3), createSelectStatementContext(), databaseMetaData);
+ MergedResult actual = resultMerger.merge(Arrays.asList(queryResult1, queryResult2, queryResult3), createSelectStatementContext(), database);
assertTrue(actual.next());
assertThat(actual.getValue(1, Object.class), is(new BigDecimal(30)));
assertThat(((BigDecimal) actual.getValue(2, Object.class)).intValue(), is(10));
@@ -192,13 +192,13 @@ public final class GroupByMemoryMergedResultTest {
TableMetaData tableMetaData = mock(TableMetaData.class);
when(schema.get("t_order")).thenReturn(tableMetaData);
when(tableMetaData.getColumns()).thenReturn(Collections.emptyMap());
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
- when(databaseMetaData.getDatabase().getSchemas()).thenReturn(mockSchemas(schema));
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
+ when(database.getDatabaseMetaData().getSchemas()).thenReturn(mockSchemas(schema));
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
when(schema.getAllColumnNames("t_order")).thenReturn(Arrays.asList("order_id", "content"));
ShardingDQLResultMerger merger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- MergedResult actual = merger.merge(Arrays.asList(queryResult, queryResult, queryResult), createSelectStatementContext(databaseMetaData), databaseMetaData);
+ MergedResult actual = merger.merge(Arrays.asList(queryResult, queryResult, queryResult), createSelectStatementContext(database), database);
assertFalse(actual.next());
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByRowComparatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByRowComparatorTest.java
index 1dff5178afa..9498314f29b 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByRowComparatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByRowComparatorTest.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementConte
import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.merge.result.impl.memory.MemoryQueryResultRow;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.sql.parser.sql.common.constant.OrderDirection;
import org.apache.shardingsphere.sql.parser.sql.common.segment.dml.item.ProjectionsSegment;
@@ -80,8 +80,8 @@ public final class GroupByRowComparatorTest {
}
private void assertCompareToForAscWithOrderByItems(final SelectStatement selectStatement) throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
selectStatement.setGroupBy(new GroupBySegment(0, 0, Arrays.asList(
new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC),
new IndexOrderByItemSegment(0, 0, 2, OrderDirection.DESC, OrderDirection.ASC))));
@@ -89,7 +89,7 @@ public final class GroupByRowComparatorTest {
new IndexOrderByItemSegment(0, 0, 1, OrderDirection.ASC, OrderDirection.ASC),
new IndexOrderByItemSegment(0, 0, 2, OrderDirection.ASC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
GroupByRowComparator groupByRowComparator = new GroupByRowComparator(selectStatementContext, caseSensitives);
MemoryQueryResultRow o1 = new MemoryQueryResultRow(mockQueryResult("1", "2"));
@@ -123,8 +123,8 @@ public final class GroupByRowComparatorTest {
}
private void assertCompareToForDecsWithOrderByItems(final SelectStatement selectStatement) throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
selectStatement.setGroupBy(new GroupBySegment(0, 0, Arrays.asList(
new IndexOrderByItemSegment(0, 0, 1, OrderDirection.ASC, OrderDirection.ASC),
new IndexOrderByItemSegment(0, 0, 2, OrderDirection.ASC, OrderDirection.ASC))));
@@ -132,7 +132,7 @@ public final class GroupByRowComparatorTest {
new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC),
new IndexOrderByItemSegment(0, 0, 2, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
GroupByRowComparator groupByRowComparator = new GroupByRowComparator(selectStatementContext, caseSensitives);
MemoryQueryResultRow o1 = new MemoryQueryResultRow(mockQueryResult("1", "2"));
@@ -166,8 +166,8 @@ public final class GroupByRowComparatorTest {
}
private void assertCompareToForEqualWithOrderByItems(final SelectStatement selectStatement) throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
selectStatement.setGroupBy(new GroupBySegment(0, 0, Arrays.asList(
new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC),
new IndexOrderByItemSegment(0, 0, 2, OrderDirection.ASC, OrderDirection.ASC))));
@@ -175,7 +175,7 @@ public final class GroupByRowComparatorTest {
new IndexOrderByItemSegment(0, 0, 1, OrderDirection.ASC, OrderDirection.ASC),
new IndexOrderByItemSegment(0, 0, 2, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
GroupByRowComparator groupByRowComparator = new GroupByRowComparator(selectStatementContext, caseSensitives);
MemoryQueryResultRow o1 = new MemoryQueryResultRow(mockQueryResult("1", "2"));
@@ -209,14 +209,14 @@ public final class GroupByRowComparatorTest {
}
private void assertCompareToForAscWithGroupByItems(final SelectStatement selectStatement) throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
selectStatement.setGroupBy(new GroupBySegment(0, 0, Arrays.asList(
new IndexOrderByItemSegment(0, 0, 1, OrderDirection.ASC, OrderDirection.ASC),
new IndexOrderByItemSegment(0, 0, 2, OrderDirection.ASC, OrderDirection.ASC))));
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.emptyList()));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
GroupByRowComparator groupByRowComparator = new GroupByRowComparator(selectStatementContext, caseSensitives);
MemoryQueryResultRow o1 = new MemoryQueryResultRow(mockQueryResult("1", "2"));
@@ -250,14 +250,14 @@ public final class GroupByRowComparatorTest {
}
private void assertCompareToForDecsWithGroupByItems(final SelectStatement selectStatement) throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
selectStatement.setGroupBy(new GroupBySegment(0, 0, Arrays.asList(
new IndexOrderByItemSegment(0, 0, 1, OrderDirection.DESC, OrderDirection.ASC),
new IndexOrderByItemSegment(0, 0, 2, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.emptyList()));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
GroupByRowComparator groupByRowComparator = new GroupByRowComparator(selectStatementContext, caseSensitives);
MemoryQueryResultRow o1 = new MemoryQueryResultRow(mockQueryResult("1", "2"));
@@ -291,14 +291,14 @@ public final class GroupByRowComparatorTest {
}
private void assertCompareToForEqualWithGroupByItems(final SelectStatement selectStatement) throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
selectStatement.setGroupBy(new GroupBySegment(0, 0, Arrays.asList(
new IndexOrderByItemSegment(0, 0, 1, OrderDirection.ASC, OrderDirection.ASC),
new IndexOrderByItemSegment(0, 0, 2, OrderDirection.DESC, OrderDirection.ASC))));
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.emptyList()));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
selectStatement, DefaultDatabase.LOGIC_NAME);
GroupByRowComparator groupByRowComparator = new GroupByRowComparator(selectStatementContext, caseSensitives);
MemoryQueryResultRow o1 = new MemoryQueryResultRow(mockQueryResult("1", "2"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByStreamMergedResultTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByStreamMergedResultTest.java
index 0ffc6df36ab..ea32b384abc 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByStreamMergedResultTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/groupby/GroupByStreamMergedResultTest.java
@@ -22,8 +22,8 @@ import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
-import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabaseMetaData;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
@@ -161,25 +161,25 @@ public final class GroupByStreamMergedResultTest {
SimpleTableSegment tableSegment = new SimpleTableSegment(new TableNameSegment(10, 13, new IdentifierValue("tbl")));
MySQLSelectStatement selectStatement = new MySQLSelectStatement();
selectStatement.setFrom(tableSegment);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
ProjectionsSegment projectionsSegment = new ProjectionsSegment(0, 0);
projectionsSegment.getProjections().add(new AggregationProjectionSegment(0, 0, AggregationType.COUNT, "(*)"));
projectionsSegment.getProjections().add(new AggregationProjectionSegment(0, 0, AggregationType.AVG, "(num)"));
selectStatement.setProjections(projectionsSegment);
selectStatement.setGroupBy(new GroupBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 3, OrderDirection.ASC, OrderDirection.ASC))));
selectStatement.setOrderBy(new OrderBySegment(0, 0, Collections.singletonList(new IndexOrderByItemSegment(0, 0, 3, OrderDirection.ASC, OrderDirection.ASC))));
- return new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
+ return new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
}
- private ShardingSphereDatabaseMetaData createDatabaaseMetaData() {
+ private ShardingSphereDatabase createDatabaaseMetaData() {
ColumnMetaData columnMetaData1 = new ColumnMetaData("col1", 0, false, false, false);
ColumnMetaData columnMetaData2 = new ColumnMetaData("col2", 0, false, false, false);
ColumnMetaData columnMetaData3 = new ColumnMetaData("col3", 0, false, false, false);
TableMetaData tableMetaData = new TableMetaData("tbl", Arrays.asList(columnMetaData1, columnMetaData2, columnMetaData3), Collections.emptyList(), Collections.emptyList());
ShardingSphereSchema schema = new ShardingSphereSchema(Collections.singletonMap("tbl", tableMetaData));
- return new ShardingSphereDatabaseMetaData(DatabaseTypeFactory.getInstance("MySQL"), mock(ShardingSphereResource.class),
- mock(ShardingSphereRuleMetaData.class), new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.singletonMap(DefaultDatabase.LOGIC_NAME, schema)));
+ return new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, DatabaseTypeFactory.getInstance("MySQL"), mock(ShardingSphereResource.class),
+ mock(ShardingSphereRuleMetaData.class), new ShardingSphereDatabaseMetaData(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, schema)));
}
private QueryResult mockQueryResult() throws SQLException {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/iterator/IteratorStreamMergedResultTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/iterator/IteratorStreamMergedResultTest.java
index 5442251856e..3387829a470 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/iterator/IteratorStreamMergedResultTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/iterator/IteratorStreamMergedResultTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.merge.dql.ShardingDQLResultMerger;
import org.apache.shardingsphere.sql.parser.sql.common.segment.dml.item.ProjectionsSegment;
import org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dml.MySQLSelectStatement;
@@ -47,19 +47,19 @@ public final class IteratorStreamMergedResultTest {
@Before
public void setUp() {
MySQLSelectStatement selectStatement = new MySQLSelectStatement();
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatementContext = new SelectStatementContext(
- Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
+ Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
}
@Test
public void assertNextForResultSetsAllEmpty() throws SQLException {
List<QueryResult> queryResults = Arrays.asList(mock(QueryResult.class, RETURNS_DEEP_STUBS), mock(QueryResult.class, RETURNS_DEEP_STUBS), mock(QueryResult.class, RETURNS_DEEP_STUBS));
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, database);
assertFalse(actual.next());
}
@@ -70,9 +70,9 @@ public final class IteratorStreamMergedResultTest {
when(each.next()).thenReturn(true, false);
}
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, database);
assertTrue(actual.next());
assertTrue(actual.next());
assertTrue(actual.next());
@@ -84,9 +84,9 @@ public final class IteratorStreamMergedResultTest {
List<QueryResult> queryResults = Arrays.asList(mock(QueryResult.class, RETURNS_DEEP_STUBS), mock(QueryResult.class, RETURNS_DEEP_STUBS), mock(QueryResult.class, RETURNS_DEEP_STUBS));
when(queryResults.get(0).next()).thenReturn(true, false);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, database);
assertTrue(actual.next());
assertFalse(actual.next());
}
@@ -96,9 +96,9 @@ public final class IteratorStreamMergedResultTest {
List<QueryResult> queryResults = Arrays.asList(mock(QueryResult.class, RETURNS_DEEP_STUBS), mock(QueryResult.class, RETURNS_DEEP_STUBS), mock(QueryResult.class, RETURNS_DEEP_STUBS));
when(queryResults.get(1).next()).thenReturn(true, false);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, database);
assertTrue(actual.next());
assertFalse(actual.next());
}
@@ -108,9 +108,9 @@ public final class IteratorStreamMergedResultTest {
List<QueryResult> queryResults = Arrays.asList(mock(QueryResult.class, RETURNS_DEEP_STUBS), mock(QueryResult.class, RETURNS_DEEP_STUBS), mock(QueryResult.class, RETURNS_DEEP_STUBS));
when(queryResults.get(2).next()).thenReturn(true, false);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, database);
assertTrue(actual.next());
assertFalse(actual.next());
}
@@ -123,9 +123,9 @@ public final class IteratorStreamMergedResultTest {
when(queryResults.get(3).next()).thenReturn(true, false);
when(queryResults.get(5).next()).thenReturn(true, false);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ MergedResult actual = resultMerger.merge(queryResults, selectStatementContext, database);
assertTrue(actual.next());
assertTrue(actual.next());
assertTrue(actual.next());
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/orderby/OrderByStreamMergedResultTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/orderby/OrderByStreamMergedResultTest.java
index aee26bb42f0..674546ceed8 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/orderby/OrderByStreamMergedResultTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/orderby/OrderByStreamMergedResultTest.java
@@ -23,8 +23,8 @@ import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResultMetaData;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
-import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabaseMetaData;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
@@ -70,9 +70,9 @@ public final class OrderByStreamMergedResultTest {
new IndexOrderByItemSegment(0, 0, 1, OrderDirection.ASC, OrderDirection.ASC),
new IndexOrderByItemSegment(0, 0, 2, OrderDirection.ASC, OrderDirection.ASC))));
selectStatement.setProjections(new ProjectionsSegment(0, 0));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
selectStatementContext = new SelectStatementContext(
- Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
+ Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
}
@Test
@@ -195,12 +195,12 @@ public final class OrderByStreamMergedResultTest {
assertFalse(actual.next());
}
- private ShardingSphereDatabaseMetaData createDatabaseMetaData() {
+ private ShardingSphereDatabase createDatabaseMetaData() {
ColumnMetaData columnMetaData1 = new ColumnMetaData("col1", 0, false, false, true);
ColumnMetaData columnMetaData2 = new ColumnMetaData("col2", 0, false, false, false);
TableMetaData tableMetaData = new TableMetaData("tbl", Arrays.asList(columnMetaData1, columnMetaData2), Collections.emptyList(), Collections.emptyList());
ShardingSphereSchema schema = new ShardingSphereSchema(Collections.singletonMap("tbl", tableMetaData));
- return new ShardingSphereDatabaseMetaData(DatabaseTypeFactory.getInstance("MySQL"), mock(ShardingSphereResource.class),
- mock(ShardingSphereRuleMetaData.class), new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, Collections.singletonMap(DefaultDatabase.LOGIC_NAME, schema)));
+ return new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, DatabaseTypeFactory.getInstance("MySQL"), mock(ShardingSphereResource.class),
+ mock(ShardingSphereRuleMetaData.class), new ShardingSphereDatabaseMetaData(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, schema)));
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/orderby/OrderByValueTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/orderby/OrderByValueTest.java
index 2460a0a3c58..2ea2629ad16 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/orderby/OrderByValueTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/orderby/OrderByValueTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.merge.dql.orderby;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.binder.segment.select.orderby.OrderByItem;
import org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementContext;
@@ -83,10 +83,10 @@ public final class OrderByValueTest {
private void assertCompareToForAsc(final SelectStatement selectStatement) throws SQLException, NoSuchFieldException, IllegalAccessException {
ProjectionsSegment projectionsSegment = new ProjectionsSegment(0, 0);
selectStatement.setProjections(projectionsSegment);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
selectStatement.setOrderBy(createOrderBySegment());
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
- Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
+ SelectStatementContext selectStatementContext = new SelectStatementContext(
+ Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
ShardingSphereSchema schema = mock(ShardingSphereSchema.class);
QueryResult queryResult1 = createQueryResult("1", "2");
OrderByValue orderByValue1 = new OrderByValue(queryResult1, Arrays.asList(
@@ -136,9 +136,9 @@ public final class OrderByValueTest {
private void assertCompareToForDesc(final SelectStatement selectStatement) throws SQLException, NoSuchFieldException, IllegalAccessException {
ProjectionsSegment projectionsSegment = new ProjectionsSegment(0, 0);
selectStatement.setProjections(projectionsSegment);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
selectStatement.setOrderBy(createOrderBySegment());
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database),
Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
ShardingSphereSchema schema = mock(ShardingSphereSchema.class);
when(schema.get("table")).thenReturn(new TableMetaData());
@@ -190,9 +190,9 @@ public final class OrderByValueTest {
private void assertCompareToWhenEqual(final SelectStatement selectStatement) throws SQLException, NoSuchFieldException, IllegalAccessException {
ProjectionsSegment projectionsSegment = new ProjectionsSegment(0, 0);
selectStatement.setProjections(projectionsSegment);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
selectStatement.setOrderBy(createOrderBySegment());
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database),
Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
ShardingSphereSchema schema = mock(ShardingSphereSchema.class);
QueryResult queryResult1 = createQueryResult("1", "2");
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/LimitDecoratorMergedResultTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/LimitDecoratorMergedResultTest.java
index ab77f9695f3..5f6a4ffea34 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/LimitDecoratorMergedResultTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/LimitDecoratorMergedResultTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.merge.dql.ShardingDQLResultMerger;
import org.apache.shardingsphere.sql.parser.sql.common.segment.dml.item.ProjectionsSegment;
import org.apache.shardingsphere.sql.parser.sql.common.segment.dml.pagination.limit.LimitSegment;
@@ -44,29 +44,29 @@ public final class LimitDecoratorMergedResultTest {
@Test
public void assertNextForSkipAll() throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
MySQLSelectStatement selectStatement = new MySQLSelectStatement();
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralLimitValueSegment(0, 0, Integer.MAX_VALUE), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
- Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ SelectStatementContext selectStatementContext = new SelectStatementContext(
+ Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, databaseMetaData);
+ MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, database);
assertFalse(actual.next());
}
@Test
public void assertNextWithoutRowCount() throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
MySQLSelectStatement selectStatement = new MySQLSelectStatement();
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralLimitValueSegment(0, 0, 2), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
- selectStatement, DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ SelectStatementContext selectStatementContext = new SelectStatementContext(
+ Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, databaseMetaData);
+ MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, database);
for (int i = 0; i < 6; i++) {
assertTrue(actual.next());
}
@@ -75,15 +75,15 @@ public final class LimitDecoratorMergedResultTest {
@Test
public void assertNextWithRowCount() throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
MySQLSelectStatement selectStatement = new MySQLSelectStatement();
selectStatement.setProjections(new ProjectionsSegment(0, 0));
selectStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralLimitValueSegment(0, 0, 2), new NumberLiteralLimitValueSegment(0, 0, 2)));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database),
Collections.emptyList(), selectStatement, DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("MySQL"));
- MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, databaseMetaData);
+ MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, database);
assertTrue(actual.next());
assertTrue(actual.next());
assertFalse(actual.next());
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/RowNumberDecoratorMergedResultTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/RowNumberDecoratorMergedResultTest.java
index 7dc46c13e4f..03a966a56ac 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/RowNumberDecoratorMergedResultTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/RowNumberDecoratorMergedResultTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.merge.dql.ShardingDQLResultMerger;
import org.apache.shardingsphere.sql.parser.sql.common.segment.dml.column.ColumnSegment;
import org.apache.shardingsphere.sql.parser.sql.common.segment.dml.expr.BinaryOperationExpression;
@@ -74,24 +74,24 @@ public final class RowNumberDecoratorMergedResultTest {
selectStatement.setFrom(subqueryTableSegment);
selectStatement.setWhere(whereSegment);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("Oracle"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
SelectStatementContext selectStatementContext = new SelectStatementContext(
- Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), null, selectStatement, DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, databaseMetaData);
+ Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), null, selectStatement, DefaultDatabase.LOGIC_NAME);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, database);
assertFalse(actual.next());
}
@Test
public void assertNextWithoutOffsetWithoutRowCount() throws SQLException {
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("Oracle"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
OracleSelectStatement selectStatement = new OracleSelectStatement();
selectStatement.setProjections(new ProjectionsSegment(0, 0));
SelectStatementContext selectStatementContext = new SelectStatementContext(
- Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), null, selectStatement, DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, databaseMetaData);
+ Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), null, selectStatement, DefaultDatabase.LOGIC_NAME);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, database);
for (int i = 0; i < 8; i++) {
assertTrue(actual.next());
}
@@ -122,11 +122,11 @@ public final class RowNumberDecoratorMergedResultTest {
selectStatement.setFrom(subqueryTableSegment);
selectStatement.setWhere(whereSegment);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("Oracle"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
SelectStatementContext selectStatementContext = new SelectStatementContext(
- Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), null, selectStatement, DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, databaseMetaData);
+ Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), null, selectStatement, DefaultDatabase.LOGIC_NAME);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, database);
assertTrue(actual.next());
assertTrue(actual.next());
assertFalse(actual.next());
@@ -156,11 +156,10 @@ public final class RowNumberDecoratorMergedResultTest {
selectStatement.setFrom(subqueryTableSegment);
selectStatement.setWhere(whereSegment);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("Oracle"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- SelectStatementContext selectStatementContext = new SelectStatementContext(
- Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), null, selectStatement, DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), null, selectStatement, DefaultDatabase.LOGIC_NAME);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(), mockQueryResult(), mockQueryResult()), selectStatementContext, database);
assertTrue(actual.next());
assertTrue(actual.next());
assertTrue(actual.next());
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/TopAndRowNumberDecoratorMergedResultTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/TopAndRowNumberDecoratorMergedResultTest.java
index c9099d92bda..00488f480a6 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/TopAndRowNumberDecoratorMergedResultTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/merge/dql/pagination/TopAndRowNumberDecoratorMergedResultTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.sharding.merge.dql.ShardingDQLResultMerger;
import org.apache.shardingsphere.sql.parser.sql.common.segment.dml.item.ProjectionsSegment;
@@ -54,31 +54,31 @@ public final class TopAndRowNumberDecoratorMergedResultTest {
@Test
public void assertNextForSkipAll() throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
SQLServerSelectStatement sqlStatement = new SQLServerSelectStatement();
sqlStatement.setProjections(new ProjectionsSegment(0, 0));
sqlStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralRowNumberValueSegment(0, 0, Integer.MAX_VALUE, true), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database),
Collections.emptyList(), sqlStatement, DefaultDatabase.LOGIC_NAME);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("SQLServer"));
MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(),
- mockQueryResult(), mockQueryResult()), selectStatementContext, mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ mockQueryResult(), mockQueryResult()), selectStatementContext, mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
assertFalse(actual.next());
}
@Test
public void assertNextWithoutOffsetWithRowCount() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("SQLServer"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
SQLServerSelectStatement sqlStatement = new SQLServerSelectStatement();
sqlStatement.setProjections(new ProjectionsSegment(0, 0));
sqlStatement.setLimit(new LimitSegment(0, 0, null, new NumberLiteralLimitValueSegment(0, 0, 5)));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), Collections.emptyList(),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), Collections.emptyList(),
sqlStatement, DefaultDatabase.LOGIC_NAME);
MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(),
- mockQueryResult(), mockQueryResult()), selectStatementContext, mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ mockQueryResult(), mockQueryResult()), selectStatementContext, mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
for (int i = 0; i < 5; i++) {
assertTrue(actual.next());
}
@@ -87,16 +87,16 @@ public final class TopAndRowNumberDecoratorMergedResultTest {
@Test
public void assertNextWithOffsetWithoutRowCount() throws SQLException {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
SQLServerSelectStatement sqlStatement = new SQLServerSelectStatement();
sqlStatement.setProjections(new ProjectionsSegment(0, 0));
sqlStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralRowNumberValueSegment(0, 0, 2, true), null));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database),
Collections.emptyList(), sqlStatement, DefaultDatabase.LOGIC_NAME);
ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("SQLServer"));
MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(),
- mockQueryResult(), mockQueryResult()), selectStatementContext, mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ mockQueryResult(), mockQueryResult()), selectStatementContext, mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
for (int i = 0; i < 7; i++) {
assertTrue(actual.next());
}
@@ -106,15 +106,15 @@ public final class TopAndRowNumberDecoratorMergedResultTest {
@Test
public void assertNextWithOffsetBoundOpenedFalse() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("SQLServer"));
- final ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
+ final ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
SQLServerSelectStatement sqlStatement = new SQLServerSelectStatement();
sqlStatement.setProjections(new ProjectionsSegment(0, 0));
sqlStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralRowNumberValueSegment(0, 0, 2, false), new NumberLiteralLimitValueSegment(0, 0, 4)));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database),
Collections.emptyList(), sqlStatement, DefaultDatabase.LOGIC_NAME);
MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(),
- mockQueryResult(), mockQueryResult()), selectStatementContext, mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ mockQueryResult(), mockQueryResult()), selectStatementContext, mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
assertTrue(actual.next());
assertTrue(actual.next());
assertFalse(actual.next());
@@ -123,15 +123,15 @@ public final class TopAndRowNumberDecoratorMergedResultTest {
@Test
public void assertNextWithOffsetBoundOpenedTrue() throws SQLException {
final ShardingDQLResultMerger resultMerger = new ShardingDQLResultMerger(DatabaseTypeFactory.getInstance("SQLServer"));
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
SQLServerSelectStatement sqlStatement = new SQLServerSelectStatement();
sqlStatement.setProjections(new ProjectionsSegment(0, 0));
sqlStatement.setLimit(new LimitSegment(0, 0, new NumberLiteralRowNumberValueSegment(0, 0, 2, true), new NumberLiteralLimitValueSegment(0, 0, 4)));
- SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData),
+ SelectStatementContext selectStatementContext = new SelectStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database),
Collections.emptyList(), sqlStatement, DefaultDatabase.LOGIC_NAME);
MergedResult actual = resultMerger.merge(Arrays.asList(mockQueryResult(), mockQueryResult(),
- mockQueryResult(), mockQueryResult()), selectStatementContext, mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ mockQueryResult(), mockQueryResult()), selectStatementContext, mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
assertTrue(actual.next());
assertTrue(actual.next());
assertTrue(actual.next());
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilderTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilderTest.java
index 42c12905eb9..f43c61b668c 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilderTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilderTest.java
@@ -92,7 +92,7 @@ public class ShardingSchemaMetaDataBuilderTest {
mockOracleResultSet(connection);
mockPGResultSet(connection);
mockSQLServerResultSet(connection);
- mockDatabaseMetaData(connection);
+ mockDatabase(connection);
}
private ShardingRule createShardingRule() {
@@ -184,19 +184,19 @@ public class ShardingSchemaMetaDataBuilderTest {
return result;
}
- private void mockDatabaseMetaData(final Connection connection) throws SQLException {
- DatabaseMetaData databaseMetaData = mock(DatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(connection.getMetaData()).thenReturn(databaseMetaData);
+ private void mockDatabase(final Connection connection) throws SQLException {
+ DatabaseMetaData database = mock(DatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ when(connection.getMetaData()).thenReturn(database);
ResultSet dataTypeResultSet = createDataTypeResultSet();
- when(databaseMetaData.getTypeInfo()).thenReturn(dataTypeResultSet);
+ when(database.getTypeInfo()).thenReturn(dataTypeResultSet);
ResultSet tableResultSet1 = createTableResultSet();
ResultSet tableResultSet2 = createTableResultSet();
ResultSet columnResultSet1 = createColumnResultSet("t_order_0");
ResultSet columnResultSet2 = createColumnResultSet("t_order_1");
- when(databaseMetaData.getTables(any(), any(), eq("t_order_0"), eq(null))).thenReturn(tableResultSet1);
- when(databaseMetaData.getTables(any(), any(), eq("t_order_1"), eq(null))).thenReturn(tableResultSet2);
- when(databaseMetaData.getColumns(any(), any(), eq("t_order_0"), eq("%"))).thenReturn(columnResultSet1);
- when(databaseMetaData.getColumns(any(), any(), eq("t_order_1"), eq("%"))).thenReturn(columnResultSet2);
+ when(database.getTables(any(), any(), eq("t_order_0"), eq(null))).thenReturn(tableResultSet1);
+ when(database.getTables(any(), any(), eq("t_order_1"), eq(null))).thenReturn(tableResultSet2);
+ when(database.getColumns(any(), any(), eq("t_order_0"), eq("%"))).thenReturn(columnResultSet1);
+ when(database.getColumns(any(), any(), eq("t_order_1"), eq("%"))).thenReturn(columnResultSet2);
}
private ResultSet createTableResultSet() throws SQLException {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/InsertClauseShardingConditionEngineTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/InsertClauseShardingConditionEngineTest.java
index a502b1088dc..a37140c768c 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/InsertClauseShardingConditionEngineTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/InsertClauseShardingConditionEngineTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.binder.segment.insert.values.InsertSelect
import org.apache.shardingsphere.infra.binder.segment.insert.values.InsertValueContext;
import org.apache.shardingsphere.infra.binder.statement.dml.InsertStatementContext;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.route.engine.condition.ShardingCondition;
import org.apache.shardingsphere.sharding.route.engine.condition.engine.impl.InsertClauseShardingConditionEngine;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
@@ -66,7 +66,7 @@ public final class InsertClauseShardingConditionEngineTest {
@Before
public void setUp() {
InsertStatement insertStatement = mockInsertStatement();
- shardingConditionEngine = new InsertClauseShardingConditionEngine(shardingRule, mock(ShardingSphereDatabaseMetaData.class));
+ shardingConditionEngine = new InsertClauseShardingConditionEngine(shardingRule, mock(ShardingSphereDatabase.class));
when(insertStatementContext.getSqlStatement()).thenReturn(insertStatement);
when(insertStatementContext.getColumnNames()).thenReturn(Collections.singletonList("foo_col"));
when(insertStatementContext.getInsertValueContexts()).thenReturn(Collections.singletonList(createInsertValueContext()));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/ShardingConditionEngineFactoryTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/ShardingConditionEngineFactoryTest.java
index fb8d2f38c88..7874af2ee7d 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/ShardingConditionEngineFactoryTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/ShardingConditionEngineFactoryTest.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.binder.LogicSQL;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.statement.dml.InsertStatementContext;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.sharding.route.engine.condition.engine.impl.InsertClauseShardingConditionEngine;
import org.apache.shardingsphere.sharding.route.engine.condition.engine.impl.WhereClauseShardingConditionEngine;
@@ -45,14 +45,14 @@ public final class ShardingConditionEngineFactoryTest {
private LogicSQL logicSQL;
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShardingRule shardingRule;
@Before
public void setUp() {
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
}
@SuppressWarnings({"rawtypes", "unchecked"})
@@ -60,13 +60,13 @@ public final class ShardingConditionEngineFactoryTest {
public void assertCreateInsertClauseShardingConditionEngine() {
SQLStatementContext insertStatementContext = mock(InsertStatementContext.class);
when(logicSQL.getSqlStatementContext()).thenReturn(insertStatementContext);
- ShardingConditionEngine<?> actual = ShardingConditionEngineFactory.createShardingConditionEngine(logicSQL, databaseMetaData, shardingRule);
+ ShardingConditionEngine<?> actual = ShardingConditionEngineFactory.createShardingConditionEngine(logicSQL, database, shardingRule);
assertThat(actual, instanceOf(InsertClauseShardingConditionEngine.class));
}
@Test
public void assertCreateWhereClauseShardingConditionEngine() {
- ShardingConditionEngine<?> actual = ShardingConditionEngineFactory.createShardingConditionEngine(logicSQL, databaseMetaData, shardingRule);
+ ShardingConditionEngine<?> actual = ShardingConditionEngineFactory.createShardingConditionEngine(logicSQL, database, shardingRule);
assertThat(actual, instanceOf(WhereClauseShardingConditionEngine.class));
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactoryTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactoryTest.java
index ab5abd58b08..40dc84da27d 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactoryTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactoryTest.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementConte
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.sharding.route.engine.condition.ShardingConditions;
import org.apache.shardingsphere.sharding.route.engine.type.broadcast.ShardingDataSourceGroupBroadcastRoutingEngine;
@@ -87,7 +87,7 @@ public final class ShardingRouteEngineFactoryTest {
private ShardingRule shardingRule;
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private SQLStatementContext sqlStatementContext;
@@ -105,7 +105,7 @@ public final class ShardingRouteEngineFactoryTest {
@Before
public void setUp() {
when(sqlStatementContext.getTablesContext()).thenReturn(tablesContext);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
tableNames = new ArrayList<>();
when(tablesContext.getTableNames()).thenReturn(tableNames);
}
@@ -114,14 +114,14 @@ public final class ShardingRouteEngineFactoryTest {
public void assertNewInstanceForTCL() {
TCLStatement tclStatement = mock(TCLStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(tclStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingDatabaseBroadcastRoutingEngine.class));
}
@Test
public void assertNewInstanceForDDLWithShardingRule() {
when(sqlStatementContext.getSqlStatement()).thenReturn(mock(DDLStatement.class));
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingTableBroadcastRoutingEngine.class));
}
@@ -131,7 +131,7 @@ public final class ShardingRouteEngineFactoryTest {
when(shardingRule.getShardingRuleTableNames(tableNames)).thenReturn(tableNames);
DALStatement dalStatement = mock(DALStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(dalStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingUnicastRoutingEngine.class));
}
@@ -139,7 +139,7 @@ public final class ShardingRouteEngineFactoryTest {
public void assertNewInstanceForDALWithoutTables() {
DALStatement dalStatement = mock(DALStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(dalStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingDataSourceGroupBroadcastRoutingEngine.class));
}
@@ -147,7 +147,7 @@ public final class ShardingRouteEngineFactoryTest {
public void assertNewInstanceForDALShow() {
DALStatement dalStatement = mock(MySQLShowDatabasesStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(dalStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingDatabaseBroadcastRoutingEngine.class));
}
@@ -163,7 +163,7 @@ public final class ShardingRouteEngineFactoryTest {
private void assertNewInstanceForDALSet(final DALStatement dalStatement) {
when(sqlStatementContext.getSqlStatement()).thenReturn(dalStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingDatabaseBroadcastRoutingEngine.class));
}
@@ -200,14 +200,14 @@ public final class ShardingRouteEngineFactoryTest {
private void assertNewInstanceForDCLForSingleTableWithShardingRule(final GrantStatement grantStatement) {
grantStatement.getTables().add(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("tbl"))));
GrantStatementContext sqlStatementContext = new GrantStatementContext(grantStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingIgnoreRoutingEngine.class));
}
private void assertNewInstanceForDCLForSingleTableWithoutShardingRule(final GrantStatement grantStatement) {
grantStatement.getTables().add(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("tbl"))));
GrantStatementContext sqlStatementContext = new GrantStatementContext(grantStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingIgnoreRoutingEngine.class));
}
@@ -215,7 +215,7 @@ public final class ShardingRouteEngineFactoryTest {
public void assertNewInstanceForDCLForNoSingleTable() {
DCLStatement dclStatement = mock(DCLStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(dclStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingInstanceBroadcastRoutingEngine.class));
}
@@ -223,7 +223,7 @@ public final class ShardingRouteEngineFactoryTest {
public void assertNewInstanceForSelectWithoutSingleTable() {
SQLStatement sqlStatement = mock(MySQLSelectStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(sqlStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingUnicastRoutingEngine.class));
}
@@ -232,7 +232,7 @@ public final class ShardingRouteEngineFactoryTest {
when(shardingRule.isAllBroadcastTables(tableNames)).thenReturn(true);
SQLStatement sqlStatement = mock(InsertStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(sqlStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingDatabaseBroadcastRoutingEngine.class));
}
@@ -241,7 +241,7 @@ public final class ShardingRouteEngineFactoryTest {
when(shardingRule.isAllBroadcastTables(tableNames)).thenReturn(true);
SQLStatement sqlStatement = mock(MySQLSelectStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(sqlStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingUnicastRoutingEngine.class));
}
@@ -249,7 +249,7 @@ public final class ShardingRouteEngineFactoryTest {
public void assertNewInstanceForAlwaysFalse() {
SQLStatement sqlStatement = mock(SQLStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(sqlStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingUnicastRoutingEngine.class));
}
@@ -260,7 +260,7 @@ public final class ShardingRouteEngineFactoryTest {
tableNames.add("");
when(shardingRule.getShardingLogicTableNames(sqlStatementContext.getTablesContext().getTableNames())).thenReturn(tableNames);
when(shardingRule.isAllShardingTables(tableNames)).thenReturn(true);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingStandardRoutingEngine.class));
}
@@ -271,7 +271,7 @@ public final class ShardingRouteEngineFactoryTest {
tableNames.add("1");
tableNames.add("2");
when(shardingRule.getShardingLogicTableNames(tableNames)).thenReturn(tableNames);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingComplexRoutingEngine.class));
}
@@ -281,7 +281,7 @@ public final class ShardingRouteEngineFactoryTest {
when(sqlStatementContext.getSqlStatement()).thenReturn(dalStatement);
tableNames.add("table_1");
when(shardingRule.getShardingRuleTableNames(tableNames)).thenReturn(tableNames);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingUnicastRoutingEngine.class));
}
@@ -291,7 +291,7 @@ public final class ShardingRouteEngineFactoryTest {
when(sqlStatementContext.getSqlStatement()).thenReturn(dalStatement);
tableNames.add("table_1");
when(shardingRule.getShardingRuleTableNames(tableNames)).thenReturn(tableNames);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingUnicastRoutingEngine.class));
}
@@ -306,7 +306,7 @@ public final class ShardingRouteEngineFactoryTest {
when(shardingRule.getTableRule("t_order").getActualDatasourceNames()).thenReturn(Arrays.asList("ds_0", "ds_1"));
when(shardingConditions.isNeedMerge()).thenReturn(true);
when(shardingConditions.isSameShardingCondition()).thenReturn(false);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, createFederationConfigurationProperties());
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, createFederationConfigurationProperties());
assertThat(actual, instanceOf(ShardingFederatedRoutingEngine.class));
}
@@ -327,7 +327,7 @@ public final class ShardingRouteEngineFactoryTest {
when(shardingRule.isAllShardingTables(Collections.singletonList("t_order"))).thenReturn(true);
when(shardingConditions.isNeedMerge()).thenReturn(true);
when(shardingConditions.isSameShardingCondition()).thenReturn(true);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, createFederationConfigurationProperties());
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, createFederationConfigurationProperties());
assertThat(actual, instanceOf(ShardingStandardRoutingEngine.class));
}
@@ -335,7 +335,7 @@ public final class ShardingRouteEngineFactoryTest {
public void assertNewInstanceForCreateResourceGroup() {
MySQLCreateResourceGroupStatement resourceGroupStatement = mock(MySQLCreateResourceGroupStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(resourceGroupStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingInstanceBroadcastRoutingEngine.class));
}
@@ -343,7 +343,7 @@ public final class ShardingRouteEngineFactoryTest {
public void assertNewInstanceForSetResourceGroup() {
MySQLSetResourceGroupStatement resourceGroupStatement = mock(MySQLSetResourceGroupStatement.class);
when(sqlStatementContext.getSqlStatement()).thenReturn(resourceGroupStatement);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingInstanceBroadcastRoutingEngine.class));
}
@@ -353,7 +353,7 @@ public final class ShardingRouteEngineFactoryTest {
when(sqlStatementContext.getSqlStatement()).thenReturn(optimizeTableStatement);
tableNames.add("table_1");
when(shardingRule.getShardingRuleTableNames(tableNames)).thenReturn(tableNames);
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingTableBroadcastRoutingEngine.class));
}
@@ -363,7 +363,7 @@ public final class ShardingRouteEngineFactoryTest {
when(sqlStatementContext.getSqlStatement()).thenReturn(optimizeTableStatement);
tableNames.add("table_1");
when(shardingRule.getShardingRuleTableNames(tableNames)).thenReturn(Collections.emptyList());
- ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, databaseMetaData, sqlStatementContext, shardingConditions, props);
+ ShardingRouteEngine actual = ShardingRouteEngineFactory.newInstance(shardingRule, database, sqlStatementContext, shardingConditions, props);
assertThat(actual, instanceOf(ShardingIgnoreRoutingEngine.class));
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/broadcast/ShardingTableBroadcastRoutingEngineTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/broadcast/ShardingTableBroadcastRoutingEngineTest.java
index a9b132bad31..724fa0f78e9 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/broadcast/ShardingTableBroadcastRoutingEngineTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/broadcast/ShardingTableBroadcastRoutingEngineTest.java
@@ -22,8 +22,8 @@ import org.apache.shardingsphere.infra.binder.statement.ddl.DropIndexStatementCo
import org.apache.shardingsphere.infra.binder.type.IndexAvailable;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.dialect.MySQLDatabaseType;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
-import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabaseMetaData;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
@@ -61,7 +61,7 @@ public final class ShardingTableBroadcastRoutingEngineTest extends AbstractRouti
public void assertRouteForEmptyTable() {
Collection<String> tableNames = Collections.emptyList();
ShardingTableBroadcastRoutingEngine shardingTableBroadcastRoutingEngine =
- new ShardingTableBroadcastRoutingEngine(mock(ShardingSphereDatabaseMetaData.class), createSQLStatementContext(tableNames), tableNames);
+ new ShardingTableBroadcastRoutingEngine(mock(ShardingSphereDatabase.class), createSQLStatementContext(tableNames), tableNames);
RouteContext routeContext = shardingTableBroadcastRoutingEngine.route(createShardingRule(false));
assertRouteUnitWithoutTables(routeContext);
}
@@ -70,7 +70,7 @@ public final class ShardingTableBroadcastRoutingEngineTest extends AbstractRouti
public void assertRouteForNormalTable() {
Collection<String> tableNames = Collections.singletonList("t_order");
ShardingTableBroadcastRoutingEngine shardingTableBroadcastRoutingEngine =
- new ShardingTableBroadcastRoutingEngine(mock(ShardingSphereDatabaseMetaData.class), createSQLStatementContext(tableNames), tableNames);
+ new ShardingTableBroadcastRoutingEngine(mock(ShardingSphereDatabase.class), createSQLStatementContext(tableNames), tableNames);
RouteContext routeContext = shardingTableBroadcastRoutingEngine.route(createShardingRule(false));
assertThat(routeContext.getActualDataSourceNames().size(), is(2));
assertThat(routeContext.getRouteUnits().size(), is(4));
@@ -85,7 +85,7 @@ public final class ShardingTableBroadcastRoutingEngineTest extends AbstractRouti
public void assertRouteForBroadcastTable() {
Collection<String> tableNames = Collections.singletonList("t_order");
ShardingTableBroadcastRoutingEngine shardingTableBroadcastRoutingEngine =
- new ShardingTableBroadcastRoutingEngine(mock(ShardingSphereDatabaseMetaData.class), createSQLStatementContext(tableNames), tableNames);
+ new ShardingTableBroadcastRoutingEngine(mock(ShardingSphereDatabase.class), createSQLStatementContext(tableNames), tableNames);
RouteContext routeContext = shardingTableBroadcastRoutingEngine.route(createShardingRule(true));
assertThat(routeContext.getActualDataSourceNames().size(), is(2));
assertThat(routeContext.getRouteUnits().size(), is(2));
@@ -108,9 +108,9 @@ public final class ShardingTableBroadcastRoutingEngineTest extends AbstractRouti
when(sqlStatementContext.getDatabaseType()).thenReturn(new MySQLDatabaseType());
when(((IndexAvailable) sqlStatementContext).getIndexes()).thenReturn(Collections.singletonList(segment));
Map<String, ShardingSphereSchema> schemas = Collections.singletonMap(DefaultDatabase.LOGIC_NAME, schema);
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- new MySQLDatabaseType(), mock(ShardingSphereResource.class), mock(ShardingSphereRuleMetaData.class), new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, schemas));
- ShardingTableBroadcastRoutingEngine shardingTableBroadcastRoutingEngine = new ShardingTableBroadcastRoutingEngine(databaseMetaData, sqlStatementContext, tableNames);
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ new MySQLDatabaseType(), mock(ShardingSphereResource.class), mock(ShardingSphereRuleMetaData.class), new ShardingSphereDatabaseMetaData(schemas));
+ ShardingTableBroadcastRoutingEngine shardingTableBroadcastRoutingEngine = new ShardingTableBroadcastRoutingEngine(database, sqlStatementContext, tableNames);
RouteContext routeContext = shardingTableBroadcastRoutingEngine.route(createShardingRule(false));
assertThat(routeContext.getActualDataSourceNames().size(), is(2));
Iterator<RouteUnit> routeUnits = routeContext.getRouteUnits().iterator();
@@ -130,9 +130,9 @@ public final class ShardingTableBroadcastRoutingEngineTest extends AbstractRouti
Collection<String> tableNames = Collections.emptyList();
when(sqlStatementContext.getTablesContext().getTableNames()).thenReturn(tableNames);
Map<String, ShardingSphereSchema> schemas = Collections.singletonMap(DefaultDatabase.LOGIC_NAME, schema);
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- new MySQLDatabaseType(), mock(ShardingSphereResource.class), mock(ShardingSphereRuleMetaData.class), new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, schemas));
- ShardingTableBroadcastRoutingEngine shardingTableBroadcastRoutingEngine = new ShardingTableBroadcastRoutingEngine(databaseMetaData, sqlStatementContext, tableNames);
+ ShardingSphereDatabase database = new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME,
+ new MySQLDatabaseType(), mock(ShardingSphereResource.class), mock(ShardingSphereRuleMetaData.class), new ShardingSphereDatabaseMetaData(schemas));
+ ShardingTableBroadcastRoutingEngine shardingTableBroadcastRoutingEngine = new ShardingTableBroadcastRoutingEngine(database, sqlStatementContext, tableNames);
RouteContext routeContext = shardingTableBroadcastRoutingEngine.route(createShardingRule(false));
assertRouteUnitWithoutTables(routeContext);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
index b7d9c3ae4a1..c07827b0571 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
@@ -24,8 +24,8 @@ import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.database.type.dialect.MySQLDatabaseType;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
-import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabaseMetaData;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
@@ -67,12 +67,12 @@ public abstract class AbstractSQLRouteTest extends AbstractRoutingEngineTest {
ShardingSphereRuleMetaData ruleMetaData = new ShardingSphereRuleMetaData(Collections.emptyList(), Arrays.asList(shardingRule, singleTableRule));
ShardingSphereResource resource = mock(ShardingSphereResource.class, RETURNS_DEEP_STUBS);
when(resource.getDatabaseType()).thenReturn(new MySQLDatabaseType());
- ShardingSphereDatabaseMetaData databaseMetaData = new ShardingSphereDatabaseMetaData(
- DatabaseTypeFactory.getInstance("MySQL"), resource, ruleMetaData, new ShardingSphereDatabase(DefaultDatabase.LOGIC_NAME, schemas));
- Map<String, ShardingSphereDatabaseMetaData> databaseMetaDataMap = Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData);
- SQLStatementContext<?> sqlStatementContext = SQLStatementContextFactory.newInstance(databaseMetaDataMap, parameters, sqlStatementParserEngine.parse(sql, false), DefaultDatabase.LOGIC_NAME);
+ ShardingSphereDatabase database = new ShardingSphereDatabase(
+ DefaultDatabase.LOGIC_NAME, DatabaseTypeFactory.getInstance("MySQL"), resource, ruleMetaData, new ShardingSphereDatabaseMetaData(schemas));
+ Map<String, ShardingSphereDatabase> databaseMap = Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database);
+ SQLStatementContext<?> sqlStatementContext = SQLStatementContextFactory.newInstance(databaseMap, parameters, sqlStatementParserEngine.parse(sql, false), DefaultDatabase.LOGIC_NAME);
LogicSQL logicSQL = new LogicSQL(sqlStatementContext, sql, parameters);
- return new SQLRouteEngine(Arrays.asList(shardingRule, singleTableRule), props).route(logicSQL, databaseMetaData);
+ return new SQLRouteEngine(Arrays.asList(shardingRule, singleTableRule), props).route(logicSQL, database);
}
private Map<String, ShardingSphereSchema> buildSchemas() {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterIndexStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterIndexStatementValidatorTest.java
index 1a4a6b41e40..317bd70a724 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterIndexStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterIndexStatementValidatorTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl;
import org.apache.shardingsphere.infra.binder.statement.ddl.AlterIndexStatementContext;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.model.IndexMetaData;
import org.apache.shardingsphere.infra.metadata.schema.model.TableMetaData;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl.ShardingAlterIndexStatementValidator;
@@ -48,7 +48,7 @@ public final class ShardingAlterIndexStatementValidatorTest {
private ShardingRule shardingRule;
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test
public void assertPreValidateAlterIndexWhenIndexExistRenameIndexNotExistForPostgreSQL() {
@@ -58,11 +58,11 @@ public final class ShardingAlterIndexStatementValidatorTest {
TableMetaData tableMetaData = mock(TableMetaData.class);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
- when(databaseMetaData.getDatabase().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
when(indexes.containsKey("t_order_index")).thenReturn(true);
when(indexes.containsKey("t_order_index_new")).thenReturn(false);
- new ShardingAlterIndexStatementValidator().preValidate(shardingRule, new AlterIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ new ShardingAlterIndexStatementValidator().preValidate(shardingRule, new AlterIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
@@ -73,10 +73,10 @@ public final class ShardingAlterIndexStatementValidatorTest {
TableMetaData tableMetaData = mock(TableMetaData.class);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
- when(databaseMetaData.getDatabase().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
when(indexes.containsKey("t_order_index")).thenReturn(false);
- new ShardingAlterIndexStatementValidator().preValidate(shardingRule, new AlterIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ new ShardingAlterIndexStatementValidator().preValidate(shardingRule, new AlterIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
@@ -87,10 +87,10 @@ public final class ShardingAlterIndexStatementValidatorTest {
TableMetaData tableMetaData = mock(TableMetaData.class);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
- when(databaseMetaData.getDatabase().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
when(indexes.containsKey("t_order_index")).thenReturn(true);
when(indexes.containsKey("t_order_index_new")).thenReturn(true);
- new ShardingAlterIndexStatementValidator().preValidate(shardingRule, new AlterIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ new ShardingAlterIndexStatementValidator().preValidate(shardingRule, new AlterIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterTableStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterTableStatementValidatorTest.java
index 80ffc930420..c42a67b47a3 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterTableStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterTableStatementValidatorTest.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.statement.ddl.AlterTableStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
import org.apache.shardingsphere.infra.route.context.RouteUnit;
@@ -54,7 +54,7 @@ public final class ShardingAlterTableStatementValidatorTest {
private ShardingRule shardingRule;
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private RouteContext routeContext;
@@ -66,7 +66,7 @@ public final class ShardingAlterTableStatementValidatorTest {
sqlStatement.setRenameTable(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order_new"))));
SQLStatementContext<AlterTableStatement> sqlStatementContext = new AlterTableStatementContext(sqlStatement);
when(shardingRule.tableRuleExists(Arrays.asList("t_order", "t_order_new"))).thenReturn(true);
- new ShardingAlterTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ new ShardingAlterTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
@@ -77,7 +77,7 @@ public final class ShardingAlterTableStatementValidatorTest {
SQLStatementContext<AlterTableStatement> sqlStatementContext = new AlterTableStatementContext(sqlStatement);
when(shardingRule.tableRuleExists(Arrays.asList("t_order", "t_order_new"))).thenReturn(false);
when(shardingRule.isBroadcastTable("t_order")).thenReturn(true);
- new ShardingAlterTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ new ShardingAlterTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
@Test
@@ -91,7 +91,7 @@ public final class ShardingAlterTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_1", "ds_1"), Collections.singletonList(new RouteMapper("t_order", "t_order_0"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingAlterTableStatementValidator().postValidate(shardingRule, new AlterTableStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test(expected = ShardingSphereException.class)
@@ -104,7 +104,7 @@ public final class ShardingAlterTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_0", "ds_0"), Collections.singletonList(new RouteMapper("t_order", "t_order_0"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingAlterTableStatementValidator().postValidate(shardingRule, new AlterTableStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test
@@ -118,7 +118,7 @@ public final class ShardingAlterTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_1", "ds_1"), Collections.singletonList(new RouteMapper("t_config", "t_config"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingAlterTableStatementValidator().postValidate(shardingRule, new AlterTableStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test(expected = ShardingSphereException.class)
@@ -131,6 +131,6 @@ public final class ShardingAlterTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_0", "ds_0"), Collections.singletonList(new RouteMapper("t_config", "t_config"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingAlterTableStatementValidator().postValidate(shardingRule, new AlterTableStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterViewStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterViewStatementValidatorTest.java
index 591220f54ca..42af6a53cc1 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterViewStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterViewStatementValidatorTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl;
import org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl.ShardingAlterViewStatementValidator;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
import org.apache.shardingsphere.sql.parser.sql.common.segment.generic.table.SimpleTableSegment;
@@ -52,9 +52,9 @@ public final class ShardingAlterViewStatementValidatorTest {
MySQLAlterViewStatement sqlStatement = new MySQLAlterViewStatement();
sqlStatement.setSelect(selectStatement);
SQLStatementContext<AlterViewStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
when(shardingRule.isShardingTable("t_order")).thenReturn(false);
- new ShardingAlterViewStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ new ShardingAlterViewStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
@@ -63,9 +63,9 @@ public final class ShardingAlterViewStatementValidatorTest {
selectStatement.setFrom(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order"))));
MySQLAlterViewStatement sqlStatement = new MySQLAlterViewStatement();
sqlStatement.setSelect(selectStatement);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
SQLStatementContext<AlterViewStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
when(shardingRule.isShardingTable("t_order")).thenReturn(true);
- new ShardingAlterViewStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ new ShardingAlterViewStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateFunctionStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateFunctionStatementValidatorTest.java
index 720ebfd0768..0c78f84d690 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateFunctionStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateFunctionStatementValidatorTest.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContex
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.route.engine.exception.NoSuchTableException;
import org.apache.shardingsphere.sharding.route.engine.exception.TableExistsException;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl.ShardingCreateFunctionStatementValidator;
@@ -68,10 +68,10 @@ public final class ShardingCreateFunctionStatementValidatorTest {
MySQLCreateFunctionStatement sqlStatement = new MySQLCreateFunctionStatement();
sqlStatement.setRoutineBody(routineBody);
SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order_item")).thenReturn(true);
- new ShardingCreateFunctionStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order_item")).thenReturn(true);
+ new ShardingCreateFunctionStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
@@ -85,7 +85,7 @@ public final class ShardingCreateFunctionStatementValidatorTest {
MySQLCreateFunctionStatement sqlStatement = new MySQLCreateFunctionStatement();
sqlStatement.setRoutineBody(routineBody);
SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
- new ShardingCreateFunctionStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ new ShardingCreateFunctionStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
}
@Test(expected = NoSuchTableException.class)
@@ -99,7 +99,7 @@ public final class ShardingCreateFunctionStatementValidatorTest {
MySQLCreateFunctionStatement sqlStatement = new MySQLCreateFunctionStatement();
sqlStatement.setRoutineBody(routineBody);
SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
- new ShardingCreateFunctionStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ new ShardingCreateFunctionStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
}
@Test(expected = TableExistsException.class)
@@ -113,9 +113,9 @@ public final class ShardingCreateFunctionStatementValidatorTest {
MySQLCreateFunctionStatement sqlStatement = new MySQLCreateFunctionStatement();
sqlStatement.setRoutineBody(routineBody);
SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order")).thenReturn(true);
- new ShardingCreateFunctionStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order")).thenReturn(true);
+ new ShardingCreateFunctionStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateIndexStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateIndexStatementValidatorTest.java
index 2a2dfb5652d..9579b99aa60 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateIndexStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateIndexStatementValidatorTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl;
import org.apache.shardingsphere.infra.binder.statement.ddl.CreateIndexStatementContext;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.model.IndexMetaData;
import org.apache.shardingsphere.infra.metadata.schema.model.TableMetaData;
import org.apache.shardingsphere.sharding.route.engine.exception.NoSuchTableException;
@@ -52,20 +52,20 @@ public final class ShardingCreateIndexStatementValidatorTest {
private ShardingRule shardingRule;
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Test
public void assertPreValidateCreateIndexWhenTableExistIndexNotExistForPostgreSQL() {
PostgreSQLCreateIndexStatement sqlStatement = new PostgreSQLCreateIndexStatement();
sqlStatement.setTable(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order"))));
sqlStatement.setIndex(new IndexSegment(0, 0, new IndexNameSegment(0, 0, new IdentifierValue("t_order_index"))));
- when(databaseMetaData.getDatabase().getSchema("public").containsTable("t_order")).thenReturn(true);
+ when(database.getDatabaseMetaData().getSchema("public").containsTable("t_order")).thenReturn(true);
TableMetaData tableMetaData = mock(TableMetaData.class);
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
when(indexes.containsKey("t_order_index")).thenReturn(false);
- new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
@Test(expected = NoSuchTableException.class)
@@ -73,8 +73,8 @@ public final class ShardingCreateIndexStatementValidatorTest {
PostgreSQLCreateIndexStatement sqlStatement = new PostgreSQLCreateIndexStatement();
sqlStatement.setTable(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order"))));
sqlStatement.setIndex(new IndexSegment(0, 0, new IndexNameSegment(0, 0, new IdentifierValue("t_order_index"))));
- when(databaseMetaData.getDatabase().getSchema("public").containsTable("t_order")).thenReturn(false);
- new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").containsTable("t_order")).thenReturn(false);
+ new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
@@ -82,13 +82,13 @@ public final class ShardingCreateIndexStatementValidatorTest {
PostgreSQLCreateIndexStatement sqlStatement = new PostgreSQLCreateIndexStatement();
sqlStatement.setTable(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order"))));
sqlStatement.setIndex(new IndexSegment(0, 0, new IndexNameSegment(0, 0, new IdentifierValue("t_order_index"))));
- when(databaseMetaData.getDatabase().getSchema("public").containsTable("t_order")).thenReturn(true);
+ when(database.getDatabaseMetaData().getSchema("public").containsTable("t_order")).thenReturn(true);
TableMetaData tableMetaData = mock(TableMetaData.class);
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
when(indexes.containsKey("t_order_index")).thenReturn(true);
- new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
@Test
@@ -97,12 +97,12 @@ public final class ShardingCreateIndexStatementValidatorTest {
sqlStatement.setTable(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order"))));
sqlStatement.setColumns(Collections.singletonList(new ColumnSegment(0, 0, new IdentifierValue("content"))));
sqlStatement.setGeneratedIndexStartIndex(10);
- when(databaseMetaData.getDatabase().getSchema("public").containsTable("t_order")).thenReturn(true);
+ when(database.getDatabaseMetaData().getSchema("public").containsTable("t_order")).thenReturn(true);
TableMetaData tableMetaData = mock(TableMetaData.class);
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
- new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
@Test(expected = NoSuchTableException.class)
@@ -111,8 +111,8 @@ public final class ShardingCreateIndexStatementValidatorTest {
sqlStatement.setTable(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order"))));
sqlStatement.setColumns(Collections.singletonList(new ColumnSegment(0, 0, new IdentifierValue("content"))));
sqlStatement.setGeneratedIndexStartIndex(10);
- when(databaseMetaData.getDatabase().getSchema("public").containsTable("t_order")).thenReturn(false);
- new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").containsTable("t_order")).thenReturn(false);
+ new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
@@ -121,12 +121,12 @@ public final class ShardingCreateIndexStatementValidatorTest {
sqlStatement.setTable(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order"))));
sqlStatement.setColumns(Collections.singletonList(new ColumnSegment(0, 0, new IdentifierValue("content"))));
sqlStatement.setGeneratedIndexStartIndex(10);
- when(databaseMetaData.getDatabase().getSchema("public").containsTable("t_order")).thenReturn(true);
+ when(database.getDatabaseMetaData().getSchema("public").containsTable("t_order")).thenReturn(true);
TableMetaData tableMetaData = mock(TableMetaData.class);
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
when(indexes.containsKey("content_idx")).thenReturn(true);
- new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ new ShardingCreateIndexStatementValidator().preValidate(shardingRule, new CreateIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateProcedureStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateProcedureStatementValidatorTest.java
index 0237350453f..656709bab72 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateProcedureStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateProcedureStatementValidatorTest.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContex
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.route.engine.exception.NoSuchTableException;
import org.apache.shardingsphere.sharding.route.engine.exception.TableExistsException;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl.ShardingCreateProcedureStatementValidator;
@@ -67,12 +67,12 @@ public final class ShardingCreateProcedureStatementValidatorTest {
routineBody.getValidStatements().add(selectValidStatementSegment);
MySQLCreateProcedureStatement sqlStatement = new MySQLCreateProcedureStatement();
sqlStatement.setRoutineBody(routineBody);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order_item")).thenReturn(true);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order_item")).thenReturn(true);
when(shardingRule.isShardingTable("t_order_item")).thenReturn(false);
SQLStatementContext<CreateProcedureStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
- new ShardingCreateProcedureStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ new ShardingCreateProcedureStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
@@ -86,7 +86,7 @@ public final class ShardingCreateProcedureStatementValidatorTest {
MySQLCreateProcedureStatement sqlStatement = new MySQLCreateProcedureStatement();
sqlStatement.setRoutineBody(routineBody);
SQLStatementContext<CreateProcedureStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
- new ShardingCreateProcedureStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ new ShardingCreateProcedureStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
}
@Test(expected = NoSuchTableException.class)
@@ -100,7 +100,7 @@ public final class ShardingCreateProcedureStatementValidatorTest {
MySQLCreateProcedureStatement sqlStatement = new MySQLCreateProcedureStatement();
sqlStatement.setRoutineBody(routineBody);
SQLStatementContext<CreateProcedureStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
- new ShardingCreateProcedureStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ new ShardingCreateProcedureStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
}
@Test(expected = TableExistsException.class)
@@ -114,9 +114,9 @@ public final class ShardingCreateProcedureStatementValidatorTest {
MySQLCreateProcedureStatement sqlStatement = new MySQLCreateProcedureStatement();
sqlStatement.setRoutineBody(routineBody);
SQLStatementContext<CreateProcedureStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order")).thenReturn(true);
- new ShardingCreateProcedureStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order")).thenReturn(true);
+ new ShardingCreateProcedureStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateTableStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateTableStatementValidatorTest.java
index f4b181e5781..9c09c638eb5 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateTableStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateTableStatementValidatorTest.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.binder.statement.ddl.CreateTableStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
import org.apache.shardingsphere.infra.route.context.RouteUnit;
@@ -60,7 +60,7 @@ public final class ShardingCreateTableStatementValidatorTest {
private ShardingRule shardingRule;
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private RouteContext routeContext;
@@ -104,10 +104,10 @@ public final class ShardingCreateTableStatementValidatorTest {
private void assertPreValidateCreateTable(final CreateTableStatement sqlStatement, final String schemaName) {
SQLStatementContext<CreateTableStatement> sqlStatementContext = new CreateTableStatementContext(sqlStatement);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn("sharding_db");
- when(databaseMetaData.getDatabase().getSchema(schemaName).containsTable("t_order")).thenReturn(true);
- new ShardingCreateTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn("sharding_db");
+ when(database.getDatabaseMetaData().getSchema(schemaName).containsTable("t_order")).thenReturn(true);
+ new ShardingCreateTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
@Test
@@ -128,8 +128,8 @@ public final class ShardingCreateTableStatementValidatorTest {
private void assertPreValidateCreateTableIfNotExists(final CreateTableStatement sqlStatement) {
SQLStatementContext<CreateTableStatement> sqlStatementContext = new CreateTableStatementContext(sqlStatement);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- new ShardingCreateTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ new ShardingCreateTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
@Test
@@ -143,7 +143,7 @@ public final class ShardingCreateTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_1", "ds_1"), Collections.singletonList(new RouteMapper("t_order", "t_order_0"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingCreateTableStatementValidator().postValidate(shardingRule,
- new CreateTableStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ new CreateTableStatementContext(sqlStatement), Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test(expected = ShardingSphereException.class)
@@ -156,7 +156,7 @@ public final class ShardingCreateTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_0", "ds_0"), Collections.singletonList(new RouteMapper("t_order", "t_order_0"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingCreateTableStatementValidator().postValidate(shardingRule,
- new CreateTableStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ new CreateTableStatementContext(sqlStatement), Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test
@@ -170,7 +170,7 @@ public final class ShardingCreateTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_1", "ds_1"), Collections.singletonList(new RouteMapper("t_config", "t_config"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingCreateTableStatementValidator().postValidate(shardingRule,
- new CreateTableStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ new CreateTableStatementContext(sqlStatement), Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test(expected = ShardingSphereException.class)
@@ -183,6 +183,6 @@ public final class ShardingCreateTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_0", "ds_0"), Collections.singletonList(new RouteMapper("t_config", "t_config"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingCreateTableStatementValidator().postValidate(shardingRule,
- new CreateTableStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ new CreateTableStatementContext(sqlStatement), Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateViewStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateViewStatementValidatorTest.java
index f6379806d00..c2ae44326ab 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateViewStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateViewStatementValidatorTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl;
import org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl.ShardingCreateViewStatementValidator;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
import org.apache.shardingsphere.sql.parser.sql.common.segment.generic.table.SimpleTableSegment;
@@ -53,7 +53,7 @@ public final class ShardingCreateViewStatementValidatorTest {
sqlStatement.setSelect(selectStatement);
SQLStatementContext<CreateViewStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
when(shardingRule.isShardingTable("t_order")).thenReturn(false);
- new ShardingCreateViewStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class));
+ new ShardingCreateViewStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class));
}
@Test(expected = ShardingSphereException.class)
@@ -62,9 +62,9 @@ public final class ShardingCreateViewStatementValidatorTest {
selectStatement.setFrom(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order"))));
MySQLCreateViewStatement sqlStatement = new MySQLCreateViewStatement();
sqlStatement.setSelect(selectStatement);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
SQLStatementContext<CreateViewStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
when(shardingRule.isShardingTable("t_order")).thenReturn(true);
- new ShardingCreateViewStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ new ShardingCreateViewStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropIndexStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropIndexStatementValidatorTest.java
index aa75712f27c..5fc369f2cee 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropIndexStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropIndexStatementValidatorTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl;
import org.apache.shardingsphere.infra.binder.statement.ddl.DropIndexStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.model.IndexMetaData;
import org.apache.shardingsphere.infra.metadata.schema.model.TableMetaData;
import org.apache.shardingsphere.infra.route.context.RouteContext;
@@ -56,7 +56,7 @@ public final class ShardingDropIndexStatementValidatorTest {
private ShardingRule shardingRule;
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private RouteContext routeContext;
@@ -69,11 +69,11 @@ public final class ShardingDropIndexStatementValidatorTest {
TableMetaData tableMetaData = mock(TableMetaData.class);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
- when(databaseMetaData.getDatabase().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
when(indexes.containsKey("t_order_index")).thenReturn(true);
when(indexes.containsKey("t_order_index_new")).thenReturn(true);
- new ShardingDropIndexStatementValidator().preValidate(shardingRule, new DropIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ new ShardingDropIndexStatementValidator().preValidate(shardingRule, new DropIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
@@ -84,10 +84,10 @@ public final class ShardingDropIndexStatementValidatorTest {
TableMetaData tableMetaData = mock(TableMetaData.class);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
- when(databaseMetaData.getDatabase().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
when(indexes.containsKey("t_order_index")).thenReturn(false);
- new ShardingDropIndexStatementValidator().preValidate(shardingRule, new DropIndexStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData);
+ new ShardingDropIndexStatementValidator().preValidate(shardingRule, new DropIndexStatementContext(sqlStatement), Collections.emptyList(), database);
}
@Test
@@ -98,8 +98,8 @@ public final class ShardingDropIndexStatementValidatorTest {
TableMetaData tableMetaData = mock(TableMetaData.class);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
- when(databaseMetaData.getDatabase().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
when(indexes.containsKey("t_order_index")).thenReturn(true);
when(shardingRule.isShardingTable("t_order")).thenReturn(true);
when(shardingRule.getTableRule("t_order")).thenReturn(new TableRule(Arrays.asList("ds_0", "ds_1"), "t_order"));
@@ -108,7 +108,7 @@ public final class ShardingDropIndexStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_1", "ds_1"), Collections.singletonList(new RouteMapper("t_order", "t_order_0"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingDropIndexStatementValidator().postValidate(shardingRule, new DropIndexStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test(expected = ShardingSphereException.class)
@@ -119,8 +119,8 @@ public final class ShardingDropIndexStatementValidatorTest {
TableMetaData tableMetaData = mock(TableMetaData.class);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
- when(databaseMetaData.getDatabase().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
- when(databaseMetaData.getDatabase().getSchema("public").get("t_order")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_order"));
+ when(database.getDatabaseMetaData().getSchema("public").get("t_order")).thenReturn(tableMetaData);
when(indexes.containsKey("t_order_index")).thenReturn(true);
when(shardingRule.isShardingTable("t_order")).thenReturn(true);
when(shardingRule.getTableRule("t_order")).thenReturn(new TableRule(Arrays.asList("ds_0", "ds_1"), "t_order"));
@@ -128,7 +128,7 @@ public final class ShardingDropIndexStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_0", "ds_0"), Collections.singletonList(new RouteMapper("t_order", "t_order_0"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingDropIndexStatementValidator().postValidate(shardingRule, new DropIndexStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test
@@ -139,8 +139,8 @@ public final class ShardingDropIndexStatementValidatorTest {
TableMetaData tableMetaData = mock(TableMetaData.class);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
- when(databaseMetaData.getDatabase().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_config"));
- when(databaseMetaData.getDatabase().getSchema("public").get("t_config")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_config"));
+ when(database.getDatabaseMetaData().getSchema("public").get("t_config")).thenReturn(tableMetaData);
when(indexes.containsKey("t_config_index")).thenReturn(true);
when(shardingRule.isBroadcastTable("t_config")).thenReturn(true);
when(shardingRule.getTableRule("t_config")).thenReturn(new TableRule(Arrays.asList("ds_0", "ds_1"), "t_config"));
@@ -149,7 +149,7 @@ public final class ShardingDropIndexStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_1", "ds_1"), Collections.singletonList(new RouteMapper("t_config", "t_config"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingDropIndexStatementValidator().postValidate(shardingRule, new DropIndexStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test(expected = ShardingSphereException.class)
@@ -160,8 +160,8 @@ public final class ShardingDropIndexStatementValidatorTest {
TableMetaData tableMetaData = mock(TableMetaData.class);
Map<String, IndexMetaData> indexes = mock(HashMap.class);
when(tableMetaData.getIndexes()).thenReturn(indexes);
- when(databaseMetaData.getDatabase().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_config"));
- when(databaseMetaData.getDatabase().getSchema("public").get("t_config")).thenReturn(tableMetaData);
+ when(database.getDatabaseMetaData().getSchema("public").getAllTableNames()).thenReturn(Collections.singletonList("t_config"));
+ when(database.getDatabaseMetaData().getSchema("public").get("t_config")).thenReturn(tableMetaData);
when(indexes.containsKey("t_config_index")).thenReturn(true);
when(shardingRule.isBroadcastTable("t_config")).thenReturn(true);
when(shardingRule.getTableRule("t_config")).thenReturn(new TableRule(Arrays.asList("ds_0", "ds_1"), "t_config"));
@@ -169,6 +169,6 @@ public final class ShardingDropIndexStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_0", "ds_0"), Collections.singletonList(new RouteMapper("t_config", "t_config"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingDropIndexStatementValidator().postValidate(shardingRule, new DropIndexStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropTableStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropTableStatementValidatorTest.java
index dca17a7d520..1be2cfe0785 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropTableStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropTableStatementValidatorTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.binder.statement.ddl.DropTableStatementCo
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.datanode.DataNode;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
import org.apache.shardingsphere.infra.route.context.RouteUnit;
@@ -77,9 +77,9 @@ public final class ShardingDropTableStatementValidatorTest {
MySQLDropTableStatement sqlStatement = new MySQLDropTableStatement();
sqlStatement.getTables().add(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_order_item"))));
SQLStatementContext<DropTableStatement> sqlStatementContext = new CommonSQLStatementContext<>(sqlStatement);
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
ShardingDropTableStatementValidator validator = new ShardingDropTableStatementValidator();
- validator.preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ validator.preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
Collection<RouteUnit> routeUnits = new LinkedList<>();
RouteMapper dataSourceMapper = new RouteMapper("db", "db1");
Collection<RouteMapper> tableMapper = new LinkedList<>();
@@ -89,7 +89,7 @@ public final class ShardingDropTableStatementValidatorTest {
routeUnits.add(routeUnit);
RouteContext routeContext = mock(RouteContext.class);
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
- validator.postValidate(shardingRule, new DropTableStatementContext(sqlStatement), Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ validator.postValidate(shardingRule, new DropTableStatementContext(sqlStatement), Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
private TableRule generateShardingRule(final String tableName) {
@@ -122,7 +122,7 @@ public final class ShardingDropTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_1", "ds_1"), Collections.singletonList(new RouteMapper("t_order", "t_order_0"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingDropTableStatementValidator().postValidate(shardingRule, new DropTableStatementContext(sqlStatement),
- Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
}
@Test(expected = ShardingSphereException.class)
@@ -135,7 +135,7 @@ public final class ShardingDropTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_0", "ds_0"), Collections.singletonList(new RouteMapper("t_order", "t_order_0"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingDropTableStatementValidator().postValidate(shardingRule, new DropTableStatementContext(sqlStatement),
- Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
}
@Test
@@ -149,7 +149,7 @@ public final class ShardingDropTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_1", "ds_1"), Collections.singletonList(new RouteMapper("t_config", "t_config"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingDropTableStatementValidator().postValidate(shardingRule, new DropTableStatementContext(sqlStatement),
- Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
}
@Test(expected = ShardingSphereException.class)
@@ -162,6 +162,6 @@ public final class ShardingDropTableStatementValidatorTest {
routeUnits.add(new RouteUnit(new RouteMapper("ds_0", "ds_0"), Collections.singletonList(new RouteMapper("t_config", "t_config"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingDropTableStatementValidator().postValidate(shardingRule, new DropTableStatementContext(sqlStatement),
- Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingPrepareStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingPrepareStatementValidatorTest.java
index 0280e1490b8..062189c5ba6 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingPrepareStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingPrepareStatementValidatorTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.ddl;
import org.apache.shardingsphere.infra.binder.statement.ddl.PrepareStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
import org.apache.shardingsphere.infra.route.context.RouteUnit;
@@ -48,7 +48,7 @@ public final class ShardingPrepareStatementValidatorTest {
private ShardingRule shardingRule;
@Mock
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private RouteContext routeContext;
@@ -58,7 +58,7 @@ public final class ShardingPrepareStatementValidatorTest {
PrepareStatement sqlStatement = new PostgreSQLPrepareStatement();
when(routeContext.getRouteUnits()).thenReturn(Collections.emptyList());
new ShardingPrepareStatementValidator().postValidate(shardingRule, new PrepareStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test
@@ -69,7 +69,7 @@ public final class ShardingPrepareStatementValidatorTest {
Arrays.asList(new RouteMapper("t_order", "t_order_0"), new RouteMapper("t_order_item", "t_order_item_0"))));
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
new ShardingPrepareStatementValidator().postValidate(shardingRule, new PrepareStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
@Test(expected = ShardingSphereException.class)
@@ -82,6 +82,6 @@ public final class ShardingPrepareStatementValidatorTest {
when(routeContext.getRouteUnits()).thenReturn(routeUnits);
PrepareStatement sqlStatement = new PostgreSQLPrepareStatement();
new ShardingPrepareStatementValidator().postValidate(shardingRule, new PrepareStatementContext(sqlStatement),
- Collections.emptyList(), databaseMetaData, mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), database, mock(ConfigurationProperties.class), routeContext);
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingRenameTableStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingRenameTableStatementValidatorTest.java
index 11aeba8a10e..2f19dc9cfd4 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingRenameTableStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingRenameTableStatementValidatorTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.binder.statement.ddl.RenameTableStatement
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.datanode.DataNode;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteUnit;
import org.apache.shardingsphere.sharding.route.engine.validator.ddl.impl.ShardingRenameTableStatementValidator;
@@ -56,24 +56,24 @@ public final class ShardingRenameTableStatementValidatorTest {
@Test(expected = ShardingSphereException.class)
public void assertPreValidateShardingTable() {
SQLStatementContext<RenameTableStatement> sqlStatementContext = createRenameTableStatementContext("t_order", "t_user_order");
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
when(shardingRule.tableRuleExists(argThat(tableNames -> tableNames.contains("t_order") || tableNames.contains("t_user_order")))).thenReturn(true);
- new ShardingRenameTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ new ShardingRenameTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
public void assertPreValidateBroadcastTable() {
SQLStatementContext<RenameTableStatement> sqlStatementContext = createRenameTableStatementContext("t_order", "t_user_order");
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
when(shardingRule.isBroadcastTable(eq("t_order"))).thenReturn(true);
- new ShardingRenameTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ new ShardingRenameTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
@Test
public void assertPreValidateNormalCase() {
SQLStatementContext<RenameTableStatement> sqlStatementContext = createRenameTableStatementContext("t_not_sharding_table", "t_not_sharding_table_new");
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
- new ShardingRenameTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
+ new ShardingRenameTableStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database);
}
@Test(expected = ShardingSphereException.class)
@@ -85,9 +85,9 @@ public final class ShardingRenameTableStatementValidatorTest {
when(shardingRule.getTableRule("t_order")).thenReturn(tableRule);
when(shardingRule.isShardingTable("t_order")).thenReturn(true);
SQLStatementContext<RenameTableStatement> sqlStatementContext = createRenameTableStatementContext("t_order", "t_user_order");
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
ConfigurationProperties props = mock(ConfigurationProperties.class);
- new ShardingRenameTableStatementValidator().postValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData, props, routeContext);
+ new ShardingRenameTableStatementValidator().postValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database, props, routeContext);
}
@Test
@@ -99,9 +99,9 @@ public final class ShardingRenameTableStatementValidatorTest {
when(shardingRule.getTableRule("t_order")).thenReturn(tableRule);
when(shardingRule.isShardingTable("t_order")).thenReturn(true);
SQLStatementContext<RenameTableStatement> sqlStatementContext = createRenameTableStatementContext("t_order", "t_user_order");
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
ConfigurationProperties props = mock(ConfigurationProperties.class);
- new ShardingRenameTableStatementValidator().postValidate(shardingRule, sqlStatementContext, Collections.emptyList(), databaseMetaData, props, routeContext);
+ new ShardingRenameTableStatementValidator().postValidate(shardingRule, sqlStatementContext, Collections.emptyList(), database, props, routeContext);
}
private SQLStatementContext<RenameTableStatement> createRenameTableStatementContext(final String originTableName, final String newTableName) {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingDeleteStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingDeleteStatementValidatorTest.java
index 8373a70ff1f..0260a3d8b02 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingDeleteStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingDeleteStatementValidatorTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.route.engine.validator.dml;
import org.apache.shardingsphere.infra.binder.statement.dml.DeleteStatementContext;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.route.engine.validator.dml.impl.ShardingDeleteStatementValidator;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
import org.apache.shardingsphere.sql.parser.sql.common.segment.generic.table.DeleteMultiTableSegment;
@@ -86,6 +86,6 @@ public final class ShardingDeleteStatementValidatorTest {
Collection<String> tableNames = new HashSet<>(Arrays.asList("user", "order", "order_item"));
when(shardingRule.isAllShardingTables(tableNames)).thenReturn(false);
when(shardingRule.tableRuleExists(tableNames)).thenReturn(true);
- new ShardingDeleteStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class));
+ new ShardingDeleteStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class));
}
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingInsertStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingInsertStatementValidatorTest.java
index 03808576af4..91bd221bb14 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingInsertStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingInsertStatementValidatorTest.java
@@ -26,7 +26,7 @@ import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeEngine;
import org.apache.shardingsphere.infra.datanode.DataNode;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
@@ -88,13 +88,13 @@ public final class ShardingInsertStatementValidatorTest {
when(shardingRule.isAllShardingTables(tableNames)).thenReturn(false);
when(shardingRule.tableRuleExists(tableNames)).thenReturn(true);
new ShardingInsertStatementValidator(shardingConditions).preValidate(shardingRule,
- sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
}
private InsertStatementContext createInsertStatementContext(final List<Object> parameters, final InsertStatement insertStatement) {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
- return new InsertStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, databaseMetaData), parameters, insertStatement, DefaultDatabase.LOGIC_NAME);
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(mock(ShardingSphereSchema.class));
+ return new InsertStatementContext(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), parameters, insertStatement, DefaultDatabase.LOGIC_NAME);
}
@Test(expected = ShardingSphereException.class)
@@ -104,7 +104,7 @@ public final class ShardingInsertStatementValidatorTest {
SQLStatementContext<InsertStatement> sqlStatementContext = createInsertStatementContext(Collections.singletonList(1), createInsertSelectStatement());
sqlStatementContext.getTablesContext().getTableNames().addAll(createSingleTablesContext().getTableNames());
new ShardingInsertStatementValidator(shardingConditions).preValidate(shardingRule,
- sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
}
@Test
@@ -114,7 +114,7 @@ public final class ShardingInsertStatementValidatorTest {
SQLStatementContext<InsertStatement> sqlStatementContext = createInsertStatementContext(Collections.singletonList(1), createInsertSelectStatement());
sqlStatementContext.getTablesContext().getTableNames().addAll(createSingleTablesContext().getTableNames());
new ShardingInsertStatementValidator(shardingConditions).preValidate(shardingRule,
- sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
}
@Test(expected = ShardingSphereException.class)
@@ -127,7 +127,7 @@ public final class ShardingInsertStatementValidatorTest {
SQLStatementContext<InsertStatement> sqlStatementContext = createInsertStatementContext(Collections.singletonList(1), createInsertSelectStatement());
sqlStatementContext.getTablesContext().getTableNames().addAll(multiTablesContext.getTableNames());
new ShardingInsertStatementValidator(shardingConditions).preValidate(shardingRule,
- sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
}
@Test
@@ -138,7 +138,7 @@ public final class ShardingInsertStatementValidatorTest {
SQLStatementContext<InsertStatement> sqlStatementContext = createInsertStatementContext(Collections.singletonList(1), createInsertSelectStatement());
sqlStatementContext.getTablesContext().getTableNames().addAll(multiTablesContext.getTableNames());
new ShardingInsertStatementValidator(shardingConditions).preValidate(shardingRule,
- sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS));
+ sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS));
}
@Test
@@ -146,7 +146,7 @@ public final class ShardingInsertStatementValidatorTest {
SQLStatementContext<InsertStatement> sqlStatementContext = createInsertStatementContext(Collections.singletonList(1), createInsertStatement());
when(routeContext.isSingleRouting()).thenReturn(true);
new ShardingInsertStatementValidator(shardingConditions).postValidate(shardingRule, sqlStatementContext,
- Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
}
@Test
@@ -155,7 +155,7 @@ public final class ShardingInsertStatementValidatorTest {
when(routeContext.isSingleRouting()).thenReturn(false);
when(shardingRule.isBroadcastTable(sqlStatementContext.getSqlStatement().getTable().getTableName().getIdentifier().getValue())).thenReturn(true);
new ShardingInsertStatementValidator(shardingConditions).postValidate(shardingRule, sqlStatementContext,
- Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
}
@Test
@@ -165,7 +165,7 @@ public final class ShardingInsertStatementValidatorTest {
when(shardingRule.isBroadcastTable(sqlStatementContext.getSqlStatement().getTable().getTableName().getIdentifier().getValue())).thenReturn(false);
when(routeContext.getOriginalDataNodes()).thenReturn(getSingleRouteDataNodes());
new ShardingInsertStatementValidator(shardingConditions).postValidate(shardingRule, sqlStatementContext,
- Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
}
@Test(expected = IllegalStateException.class)
@@ -175,7 +175,7 @@ public final class ShardingInsertStatementValidatorTest {
when(shardingRule.isBroadcastTable(sqlStatementContext.getSqlStatement().getTable().getTableName().getIdentifier().getValue())).thenReturn(false);
when(routeContext.getOriginalDataNodes()).thenReturn(getMultipleRouteDataNodes());
new ShardingInsertStatementValidator(shardingConditions).postValidate(shardingRule, sqlStatementContext,
- Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
+ Collections.emptyList(), mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
}
@Test
@@ -185,7 +185,7 @@ public final class ShardingInsertStatementValidatorTest {
when(routeContext.isSingleRouting()).thenReturn(true);
InsertStatementContext insertStatementContext = createInsertStatementContext(parameters, createInsertStatement());
new ShardingInsertStatementValidator(mock(ShardingConditions.class)).postValidate(shardingRule,
- insertStatementContext, parameters, mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
+ insertStatementContext, parameters, mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), routeContext);
}
@Test
@@ -194,7 +194,7 @@ public final class ShardingInsertStatementValidatorTest {
List<Object> parameters = Collections.singletonList(1);
InsertStatementContext insertStatementContext = createInsertStatementContext(parameters, createInsertStatement());
new ShardingInsertStatementValidator(mock(ShardingConditions.class)).postValidate(shardingRule,
- insertStatementContext, parameters, mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), createSingleRouteContext());
+ insertStatementContext, parameters, mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), createSingleRouteContext());
}
@Test(expected = ShardingSphereException.class)
@@ -203,7 +203,7 @@ public final class ShardingInsertStatementValidatorTest {
List<Object> parameters = Collections.singletonList(1);
InsertStatementContext insertStatementContext = createInsertStatementContext(parameters, createInsertStatement());
new ShardingInsertStatementValidator(mock(ShardingConditions.class)).postValidate(shardingRule,
- insertStatementContext, parameters, mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), createFullRouteContext());
+ insertStatementContext, parameters, mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), mock(ConfigurationProperties.class), createFullRouteContext());
}
private void mockShardingRuleForUpdateShardingColumn() {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingUpdateStatementValidatorTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingUpdateStatementValidatorTest.java
index 3b43e48d41e..68ec4a8425e 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingUpdateStatementValidatorTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/dml/ShardingUpdateStatementValidatorTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.binder.statement.dml.UpdateStatementConte
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
import org.apache.shardingsphere.infra.route.context.RouteUnit;
@@ -74,7 +74,7 @@ public final class ShardingUpdateStatementValidatorTest {
Collection<String> tableNames = sqlStatementContext.getTablesContext().getTableNames();
when(shardingRule.isAllShardingTables(tableNames)).thenReturn(true);
when(shardingRule.tableRuleExists(tableNames)).thenReturn(true);
- new ShardingUpdateStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class));
+ new ShardingUpdateStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class));
}
@Test(expected = ShardingSphereException.class)
@@ -88,28 +88,28 @@ public final class ShardingUpdateStatementValidatorTest {
Collection<String> tableNames = sqlStatementContext.getTablesContext().getTableNames();
when(shardingRule.isAllShardingTables(tableNames)).thenReturn(false);
when(shardingRule.tableRuleExists(tableNames)).thenReturn(true);
- new ShardingUpdateStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class));
+ new ShardingUpdateStatementValidator().preValidate(shardingRule, sqlStatementContext, Collections.emptyList(), mock(ShardingSphereDatabase.class));
}
@Test
public void assertPostValidateWhenNotUpdateShardingColumn() {
UpdateStatementContext sqlStatementContext = new UpdateStatementContext(createUpdateStatement());
new ShardingUpdateStatementValidator().postValidate(shardingRule, sqlStatementContext, Collections.emptyList(),
- mock(ShardingSphereDatabaseMetaData.class), mock(ConfigurationProperties.class), mock(RouteContext.class));
+ mock(ShardingSphereDatabase.class), mock(ConfigurationProperties.class), mock(RouteContext.class));
}
@Test
public void assertPostValidateWhenUpdateShardingColumnWithSameRouteContext() {
mockShardingRuleForUpdateShardingColumn();
new ShardingUpdateStatementValidator().postValidate(shardingRule, new UpdateStatementContext(createUpdateStatement()),
- Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class), mock(ConfigurationProperties.class), createSingleRouteContext());
+ Collections.emptyList(), mock(ShardingSphereDatabase.class), mock(ConfigurationProperties.class), createSingleRouteContext());
}
@Test(expected = ShardingSphereException.class)
public void assertPostValidateWhenUpdateShardingColumnWithDifferentRouteContext() {
mockShardingRuleForUpdateShardingColumn();
new ShardingUpdateStatementValidator().postValidate(shardingRule, new UpdateStatementContext(createUpdateStatement()),
- Collections.emptyList(), mock(ShardingSphereDatabaseMetaData.class), mock(ConfigurationProperties.class), createFullRouteContext());
+ Collections.emptyList(), mock(ShardingSphereDatabase.class), mock(ConfigurationProperties.class), createFullRouteContext());
}
private void mockShardingRuleForUpdateShardingColumn() {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/rule/ShardingRuleTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/rule/ShardingRuleTest.java
index cbf0ebf24e0..5bc490c528f 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/rule/ShardingRuleTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/rule/ShardingRuleTest.java
@@ -27,7 +27,7 @@ import org.apache.shardingsphere.infra.database.DefaultDatabase;
import org.apache.shardingsphere.infra.database.type.DatabaseTypeEngine;
import org.apache.shardingsphere.infra.database.type.dialect.MySQLDatabaseType;
import org.apache.shardingsphere.infra.datanode.DataNode;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
import org.apache.shardingsphere.sharding.algorithm.keygen.SnowflakeKeyGenerateAlgorithm;
import org.apache.shardingsphere.sharding.algorithm.keygen.UUIDKeyGenerateAlgorithm;
@@ -525,7 +525,7 @@ public final class ShardingRuleTest {
public void assertIsAllBindingTableWithUpdateStatementContext() {
SQLStatementContext<?> sqlStatementContext = mock(UpdateStatementContext.class);
assertTrue(
- createMaximumShardingRule().isAllBindingTables(mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), sqlStatementContext, Arrays.asList("logic_Table", "sub_Logic_Table")));
+ createMaximumShardingRule().isAllBindingTables(mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), sqlStatementContext, Arrays.asList("logic_Table", "sub_Logic_Table")));
}
@Test
@@ -533,7 +533,7 @@ public final class ShardingRuleTest {
SelectStatementContext sqlStatementContext = mock(SelectStatementContext.class);
when(sqlStatementContext.isContainsJoinQuery()).thenReturn(false);
assertTrue(
- createMaximumShardingRule().isAllBindingTables(mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), sqlStatementContext, Arrays.asList("logic_Table", "sub_Logic_Table")));
+ createMaximumShardingRule().isAllBindingTables(mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), sqlStatementContext, Arrays.asList("logic_Table", "sub_Logic_Table")));
}
@Test
@@ -544,7 +544,7 @@ public final class ShardingRuleTest {
when(sqlStatementContext.getDatabaseType()).thenReturn(new MySQLDatabaseType());
when(sqlStatementContext.getTablesContext().getSchemaName()).thenReturn(Optional.empty());
assertFalse(
- createMaximumShardingRule().isAllBindingTables(mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), sqlStatementContext, Arrays.asList("logic_Table", "sub_Logic_Table")));
+ createMaximumShardingRule().isAllBindingTables(mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), sqlStatementContext, Arrays.asList("logic_Table", "sub_Logic_Table")));
}
@Test
@@ -563,10 +563,10 @@ public final class ShardingRuleTest {
when(sqlStatementContext.getTablesContext().getSchemaName()).thenReturn(Optional.empty());
ShardingSphereSchema schema = mock(ShardingSphereSchema.class);
when(sqlStatementContext.getTablesContext().findTableNamesByColumnSegment(Arrays.asList(leftDatabaseJoin, rightDatabaseJoin), schema)).thenReturn(createColumnTableNameMap());
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
- assertFalse(createMaximumShardingRule().isAllBindingTables(databaseMetaData, sqlStatementContext, Arrays.asList("logic_Table", "sub_Logic_Table")));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
+ assertFalse(createMaximumShardingRule().isAllBindingTables(database, sqlStatementContext, Arrays.asList("logic_Table", "sub_Logic_Table")));
}
@Test
@@ -587,11 +587,11 @@ public final class ShardingRuleTest {
TablesContext tablesContext = new TablesContext(tableSegments, Collections.emptyMap(), DatabaseTypeEngine.getDatabaseType("MySQL"));
when(sqlStatementContext.getTablesContext()).thenReturn(tablesContext);
when(sqlStatementContext.getDatabaseType()).thenReturn(new MySQLDatabaseType());
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME).getAllColumnNames("LOGIC_TABLE")).thenReturn(Arrays.asList("user_id", "order_id"));
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME).getAllColumnNames("SUB_LOGIC_TABLE")).thenReturn(Arrays.asList("uid", "order_id"));
- assertFalse(createMaximumShardingRule().isAllBindingTables(databaseMetaData, sqlStatementContext, Arrays.asList("LOGIC_TABLE", "SUB_LOGIC_TABLE")));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME).getAllColumnNames("LOGIC_TABLE")).thenReturn(Arrays.asList("user_id", "order_id"));
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME).getAllColumnNames("SUB_LOGIC_TABLE")).thenReturn(Arrays.asList("uid", "order_id"));
+ assertFalse(createMaximumShardingRule().isAllBindingTables(database, sqlStatementContext, Arrays.asList("LOGIC_TABLE", "SUB_LOGIC_TABLE")));
}
@Test
@@ -615,10 +615,10 @@ public final class ShardingRuleTest {
ShardingSphereSchema schema = mock(ShardingSphereSchema.class);
when(sqlStatementContext.getTablesContext().findTableNamesByColumnSegment(Arrays.asList(leftDatabaseJoin, rightDatabaseJoin), schema)).thenReturn(createColumnTableNameMap());
when(sqlStatementContext.getTablesContext().findTableNamesByColumnSegment(Arrays.asList(leftTableJoin, rightTableJoin), schema)).thenReturn(createColumnTableNameMap());
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getDatabase().getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
- when(databaseMetaData.getDatabase().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
- assertTrue(createMaximumShardingRule().isAllBindingTables(databaseMetaData, sqlStatementContext, Arrays.asList("logic_Table", "sub_Logic_Table")));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
+ when(database.getDatabaseMetaData().getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
+ assertTrue(createMaximumShardingRule().isAllBindingTables(database, sqlStatementContext, Arrays.asList("logic_Table", "sub_Logic_Table")));
}
@Test
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/CheckScalingQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/CheckScalingQueryResultSet.java
index b5c062d367b..6ccc0061ff5 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/CheckScalingQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/CheckScalingQueryResultSet.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.data.pipeline.api.RuleAlteredJobAPIFactory;
import org.apache.shardingsphere.data.pipeline.api.RuleAlteredJobAPI;
import org.apache.shardingsphere.data.pipeline.api.check.consistency.DataConsistencyCheckResult;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.CheckScalingStatement;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -42,7 +42,7 @@ public final class CheckScalingQueryResultSet implements DistSQLResultSet {
private Iterator<Collection<Object>> data;
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
CheckScalingStatement checkScalingStatement = (CheckScalingStatement) sqlStatement;
Map<String, DataConsistencyCheckResult> checkResultMap;
if (null == checkScalingStatement.getTypeStrategy()) {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShardingScalingRulesQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShardingScalingRulesQueryResultSet.java
index 70e034a3d40..0f9de8b60f2 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShardingScalingRulesQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShardingScalingRulesQueryResultSet.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.scaling.distsql.handler.query;
import com.google.gson.Gson;
import org.apache.shardingsphere.infra.config.rulealtered.OnRuleAlteredActionConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.ShowShardingScalingRulesStatement;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -41,8 +41,8 @@ public final class ShardingScalingRulesQueryResultSet implements DistSQLResultSe
private Iterator<Entry<String, OnRuleAlteredActionConfiguration>> data;
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ShardingRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().getConfigurations()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ShardingRuleConfiguration> ruleConfig = database.getRuleMetaData().getConfigurations()
.stream().filter(each -> each instanceof ShardingRuleConfiguration).map(each -> (ShardingRuleConfiguration) each).findAny();
data = ruleConfig.map(ShardingRuleConfiguration::getScaling).orElse(Collections.emptyMap()).entrySet().iterator();
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingCheckAlgorithmsQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingCheckAlgorithmsQueryResultSet.java
index f5c2a0e0e34..4cef20534fb 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingCheckAlgorithmsQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingCheckAlgorithmsQueryResultSet.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.scaling.distsql.handler.query;
import org.apache.shardingsphere.data.pipeline.api.RuleAlteredJobAPI;
import org.apache.shardingsphere.data.pipeline.api.RuleAlteredJobAPIFactory;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.ShowScalingCheckAlgorithmsStatement;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -39,7 +39,7 @@ public final class ShowScalingCheckAlgorithmsQueryResultSet implements DistSQLRe
private Iterator<Collection<Object>> data;
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
data = RULE_ALTERED_JOB_API.listDataConsistencyCheckAlgorithms().stream().map(
each -> (Collection<Object>) Arrays.<Object>asList(each.getType(), String.join(",", each.getSupportedDatabaseTypes()), each.getDescription())).collect(Collectors.toList()).iterator();
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingJobStatusQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingJobStatusQueryResultSet.java
index c30daac5946..86a718d6aa2 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingJobStatusQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingJobStatusQueryResultSet.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.scaling.distsql.handler.query;
import org.apache.shardingsphere.data.pipeline.api.RuleAlteredJobAPIFactory;
import org.apache.shardingsphere.data.pipeline.api.RuleAlteredJobAPI;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.ShowScalingStatusStatement;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -41,7 +41,7 @@ public final class ShowScalingJobStatusQueryResultSet implements DistSQLResultSe
private Iterator<Collection<Object>> data;
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
long currentTimeMillis = System.currentTimeMillis();
data = RULE_ALTERED_JOB_API.getProgress(((ShowScalingStatusStatement) sqlStatement).getJobId()).entrySet().stream()
.map(entry -> {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingListQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingListQueryResultSet.java
index 677b915fe2c..6448f11a558 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingListQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingListQueryResultSet.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.scaling.distsql.handler.query;
import org.apache.shardingsphere.data.pipeline.api.RuleAlteredJobAPIFactory;
import org.apache.shardingsphere.data.pipeline.api.RuleAlteredJobAPI;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.ShowScalingListStatement;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -40,7 +40,7 @@ public final class ShowScalingListQueryResultSet implements DistSQLResultSet {
private Iterator<Collection<Object>> data;
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
data = RULE_ALTERED_JOB_API.list().stream()
.map(each -> {
Collection<Object> result = new LinkedList<>();
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/CreateShardingScalingRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/CreateShardingScalingRuleStatementUpdater.java
index 94b7219af48..5de625df178 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/CreateShardingScalingRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/CreateShardingScalingRuleStatementUpdater.java
@@ -28,7 +28,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleExcep
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.handler.converter.ShardingScalingRuleStatementConverter;
import org.apache.shardingsphere.scaling.distsql.statement.CreateShardingScalingRuleStatement;
import org.apache.shardingsphere.scaling.distsql.statement.segment.ShardingScalingRuleConfigurationSegment;
@@ -44,9 +44,9 @@ import java.util.Properties;
public final class CreateShardingScalingRuleStatementUpdater implements RuleDefinitionCreateUpdater<CreateShardingScalingRuleStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateShardingScalingRuleStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final CreateShardingScalingRuleStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkDuplicate(databaseName, sqlStatement, currentRuleConfig);
checkAlgorithms(sqlStatement.getScalingRuleConfigSegment());
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/DisableShardingScalingRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/DisableShardingScalingRuleStatementUpdater.java
index 09865df913b..2ee96b21186 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/DisableShardingScalingRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/DisableShardingScalingRuleStatementUpdater.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDisabledException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.DisableShardingScalingRuleStatement;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
@@ -31,9 +31,9 @@ import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
public final class DisableShardingScalingRuleStatementUpdater implements RuleDefinitionAlterUpdater<DisableShardingScalingRuleStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DisableShardingScalingRuleStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final DisableShardingScalingRuleStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkExist(databaseName, sqlStatement, currentRuleConfig);
checkDisabled(databaseName, sqlStatement, currentRuleConfig);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/DropShardingScalingRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/DropShardingScalingRuleStatementUpdater.java
index 9565d168979..d84a670cedd 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/DropShardingScalingRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/DropShardingScalingRuleStatementUpdater.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.scaling.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.DropShardingScalingRuleStatement;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
@@ -30,12 +30,12 @@ import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
public final class DropShardingScalingRuleStatementUpdater implements RuleDefinitionDropUpdater<DropShardingScalingRuleStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropShardingScalingRuleStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final DropShardingScalingRuleStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
if (!isExistRuleConfig(currentRuleConfig) && sqlStatement.isContainsExistClause()) {
return;
}
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkStatement(databaseName, sqlStatement, currentRuleConfig);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/EnableShardingScalingRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/EnableShardingScalingRuleStatementUpdater.java
index 7535af3dd71..7859ea7975d 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/EnableShardingScalingRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/scaling/distsql/handler/update/EnableShardingScalingRuleStatementUpdater.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleEnabledException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.EnableShardingScalingRuleStatement;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
@@ -31,9 +31,9 @@ import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
public final class EnableShardingScalingRuleStatementUpdater implements RuleDefinitionAlterUpdater<EnableShardingScalingRuleStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final EnableShardingScalingRuleStatement sqlStatement,
+ public void checkSQLStatement(final ShardingSphereDatabase database, final EnableShardingScalingRuleStatement sqlStatement,
final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkExist(databaseName, sqlStatement, currentRuleConfig);
checkEnabled(databaseName, sqlStatement, currentRuleConfig);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/checker/ShardingTableRuleStatementChecker.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/checker/ShardingTableRuleStatementChecker.java
index 348f84f1166..da12bc6d5cf 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/checker/ShardingTableRuleStatementChecker.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/checker/ShardingTableRuleStatementChecker.java
@@ -27,7 +27,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmCo
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.expr.InlineExpressionParser;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.rule.identifier.type.DataSourceContainedRule;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
@@ -63,50 +63,50 @@ public final class ShardingTableRuleStatementChecker {
/**
* Check create sharing table rule statement.
*
- * @param databaseMetaData database meta data
+ * @param database database
* @param rules rules
* @param currentRuleConfig current rule configuration
* @throws DistSQLException definition violation exception
*/
- public static void checkCreation(final ShardingSphereDatabaseMetaData databaseMetaData, final Collection<AbstractTableRuleSegment> rules,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- check(databaseMetaData, rules, currentRuleConfig, true);
+ public static void checkCreation(final ShardingSphereDatabase database,
+ final Collection<AbstractTableRuleSegment> rules, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ check(database, rules, currentRuleConfig, true);
}
/**
* Check alter sharing table rule statement.
*
- * @param databaseMetaData database meta data
+ * @param database database
* @param rules rules
* @param currentRuleConfig current rule configuration
* @throws DistSQLException definition violation exception
*/
- public static void checkAlteration(final ShardingSphereDatabaseMetaData databaseMetaData, final Collection<AbstractTableRuleSegment> rules,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- check(databaseMetaData, rules, currentRuleConfig, false);
+ public static void checkAlteration(final ShardingSphereDatabase database,
+ final Collection<AbstractTableRuleSegment> rules, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ check(database, rules, currentRuleConfig, false);
}
- private static void check(final ShardingSphereDatabaseMetaData databaseMetaData, final Collection<AbstractTableRuleSegment> rules,
- final ShardingRuleConfiguration currentRuleConfig, final boolean isCreate) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ private static void check(final ShardingSphereDatabase database,
+ final Collection<AbstractTableRuleSegment> rules, final ShardingRuleConfiguration currentRuleConfig, final boolean isCreate) throws DistSQLException {
+ String databaseName = database.getName();
checkShardingTables(databaseName, rules, currentRuleConfig, isCreate);
- checkResources(databaseName, rules, databaseMetaData);
+ checkResources(databaseName, rules, database);
checkKeyGenerators(rules, currentRuleConfig);
Map<String, List<AbstractTableRuleSegment>> groupedTableRule = groupingByClassType(rules);
checkAutoTableRule(groupedTableRule.getOrDefault(AutoTableRuleSegment.class.getSimpleName(), Collections.emptyList()));
checkTableRule(databaseName, currentRuleConfig, groupedTableRule.getOrDefault(TableRuleSegment.class.getSimpleName(), Collections.emptyList()));
}
- private static void checkResources(final String databaseName, final Collection<AbstractTableRuleSegment> rules, final ShardingSphereDatabaseMetaData databaseMetaData) throws DistSQLException {
+ private static void checkResources(final String databaseName, final Collection<AbstractTableRuleSegment> rules, final ShardingSphereDatabase database) throws DistSQLException {
Collection<String> requiredResource = getRequiredResources(rules);
- Collection<String> notExistedResources = databaseMetaData.getResource().getNotExistedResources(requiredResource);
- Collection<String> logicResources = getLogicResources(databaseMetaData);
+ Collection<String> notExistedResources = database.getResource().getNotExistedResources(requiredResource);
+ Collection<String> logicResources = getLogicResources(database);
notExistedResources.removeIf(logicResources::contains);
DistSQLException.predictionThrow(notExistedResources.isEmpty(), () -> new RequiredResourceMissedException(databaseName, notExistedResources));
}
- private static Collection<String> getLogicResources(final ShardingSphereDatabaseMetaData databaseMetaData) {
- return databaseMetaData.getRuleMetaData().getRules().stream().filter(each -> each instanceof DataSourceContainedRule)
+ private static Collection<String> getLogicResources(final ShardingSphereDatabase database) {
+ return database.getRuleMetaData().getRules().stream().filter(each -> each instanceof DataSourceContainedRule)
.map(each -> ((DataSourceContainedRule) each).getDataSourceMapper().keySet()).flatMap(Collection::stream).collect(Collectors.toCollection(LinkedHashSet::new));
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/DefaultShardingStrategyQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/DefaultShardingStrategyQueryResultSet.java
index 18c6e9a6d46..9511b62aafb 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/DefaultShardingStrategyQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/DefaultShardingStrategyQueryResultSet.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.query;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.ShardingStrategyConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.enums.ShardingStrategyType;
@@ -44,8 +44,8 @@ public final class DefaultShardingStrategyQueryResultSet implements DistSQLResul
private Iterator<Entry<String, LinkedList<Object>>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ShardingRuleConfiguration> shardingRuleConfig = databaseMetaData.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class).stream().findAny();
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ShardingRuleConfiguration> shardingRuleConfig = database.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class).stream().findAny();
shardingRuleConfig.ifPresent(optional -> data = buildData(optional).entrySet().iterator());
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingAlgorithmsQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingAlgorithmsQueryResultSet.java
index 38b3189c3ea..6f8f8bf2120 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingAlgorithmsQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingAlgorithmsQueryResultSet.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.query;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.properties.PropertiesConverter;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.ShowShardingAlgorithmsStatement;
@@ -43,8 +43,8 @@ public final class ShardingAlgorithmsQueryResultSet implements DistSQLResultSet
private Iterator<Entry<String, ShardingSphereAlgorithmConfiguration>> data;
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ShardingRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().getConfigurations()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ShardingRuleConfiguration> ruleConfig = database.getRuleMetaData().getConfigurations()
.stream().filter(each -> each instanceof ShardingRuleConfiguration).map(each -> (ShardingRuleConfiguration) each).findAny();
data = ruleConfig.map(ShardingRuleConfiguration::getShardingAlgorithms).orElseGet(Collections::emptyMap).entrySet().iterator();
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingBindingTableRuleQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingBindingTableRuleQueryResultSet.java
index 5f876f0f342..2d0cc2e1a88 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingBindingTableRuleQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingBindingTableRuleQueryResultSet.java
@@ -17,7 +17,7 @@
package org.apache.shardingsphere.sharding.distsql.handler.query;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.ShowShardingBindingTableRulesStatement;
@@ -36,8 +36,8 @@ public final class ShardingBindingTableRuleQueryResultSet implements DistSQLResu
private Iterator<String> data;
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ShardingRuleConfiguration> shardingRuleConfig = databaseMetaData.getRuleMetaData().getConfigurations()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ShardingRuleConfiguration> shardingRuleConfig = database.getRuleMetaData().getConfigurations()
.stream().filter(each -> each instanceof ShardingRuleConfiguration).map(each -> (ShardingRuleConfiguration) each).findFirst();
data = shardingRuleConfig.map(each -> each.getBindingTableGroups().iterator()).orElseGet(Collections::emptyIterator);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingBroadcastTableRuleQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingBroadcastTableRuleQueryResultSet.java
index 10c6652c624..0faa0829e26 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingBroadcastTableRuleQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingBroadcastTableRuleQueryResultSet.java
@@ -17,7 +17,7 @@
package org.apache.shardingsphere.sharding.distsql.handler.query;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.ShowShardingBroadcastTableRulesStatement;
@@ -36,8 +36,8 @@ public final class ShardingBroadcastTableRuleQueryResultSet implements DistSQLRe
private Iterator<String> data;
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ShardingRuleConfiguration> shardingRuleConfig = databaseMetaData.getRuleMetaData().getConfigurations()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ShardingRuleConfiguration> shardingRuleConfig = database.getRuleMetaData().getConfigurations()
.stream().filter(each -> each instanceof ShardingRuleConfiguration).map(each -> (ShardingRuleConfiguration) each).findFirst();
data = shardingRuleConfig.map(optional -> optional.getBroadcastTables().iterator()).orElseGet(Collections::emptyIterator);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingKeyGeneratorsQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingKeyGeneratorsQueryResultSet.java
index 8fe4d6caa23..389efb0be5f 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingKeyGeneratorsQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingKeyGeneratorsQueryResultSet.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.query;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.ShowShardingKeyGeneratorsStatement;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -39,8 +39,8 @@ public final class ShardingKeyGeneratorsQueryResultSet implements DistSQLResultS
private Iterator<Entry<String, ShardingSphereAlgorithmConfiguration>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- databaseMetaData.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class)
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ database.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class)
.forEach(each -> data = each.getKeyGenerators().entrySet().iterator());
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableNodesQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableNodesQueryResultSet.java
index d3cf837b9af..e7a5f9f64b3 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableNodesQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableNodesQueryResultSet.java
@@ -21,7 +21,7 @@ import com.google.common.base.Strings;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
import org.apache.shardingsphere.infra.expr.InlineExpressionParser;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
@@ -55,8 +55,8 @@ public final class ShardingTableNodesQueryResultSet implements DistSQLResultSet
private Iterator<Entry<String, String>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- databaseMetaData.getRuleMetaData().getConfigurations().stream()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ database.getRuleMetaData().getConfigurations().stream()
.filter(each -> each instanceof ShardingRuleConfiguration)
.map(each -> (ShardingRuleConfiguration) each)
.forEach(each -> data = getData(each, (ShowShardingTableNodesStatement) sqlStatement).entrySet().iterator());
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 0c4cf363d55..af14801a26b 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
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.sharding.distsql.handler.query;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.properties.PropertiesConverter;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
@@ -53,9 +53,9 @@ public final class ShardingTableRuleQueryResultSet implements DistSQLResultSet {
private ShardingRuleConfiguration shardingRuleConfig;
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
String tableName = ((ShowShardingTableRulesStatement) sqlStatement).getTableName();
- Optional<ShardingRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().getConfigurations()
+ Optional<ShardingRuleConfiguration> ruleConfig = database.getRuleMetaData().getConfigurations()
.stream().filter(each -> each instanceof ShardingRuleConfiguration).map(each -> (ShardingRuleConfiguration) each).findAny();
if (Objects.isNull(tableName)) {
tables = ruleConfig.map(optional -> optional.getTables().iterator()).orElseGet(Collections::emptyIterator);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRulesUsedAlgorithmQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRulesUsedAlgorithmQueryResultSet.java
index f10f43052d2..2c7da1a11fd 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRulesUsedAlgorithmQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRulesUsedAlgorithmQueryResultSet.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.sharding.distsql.handler.query;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.ShowShardingTableRulesUsedAlgorithmStatement;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -37,11 +37,11 @@ public final class ShardingTableRulesUsedAlgorithmQueryResultSet implements Dist
private Iterator<Collection<Object>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
ShowShardingTableRulesUsedAlgorithmStatement statement = (ShowShardingTableRulesUsedAlgorithmStatement) sqlStatement;
Collection<Collection<Object>> data = new LinkedList<>();
- Collection<ShardingRuleConfiguration> shardingTableRules = databaseMetaData.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class);
- shardingTableRules.forEach(each -> requireResult(statement, databaseMetaData.getDatabase().getName(), data, each));
+ Collection<ShardingRuleConfiguration> shardingTableRules = database.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class);
+ shardingTableRules.forEach(each -> requireResult(statement, database.getName(), data, each));
this.data = data.iterator();
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRulesUsedKeyGeneratorQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRulesUsedKeyGeneratorQueryRes [...]
index 3182f5f3615..9533a0a923f 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRulesUsedKeyGeneratorQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/ShardingTableRulesUsedKeyGeneratorQueryResultSet.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.sharding.distsql.handler.query;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.ShowShardingTableRulesUsedKeyGeneratorStatement;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -38,11 +38,11 @@ public final class ShardingTableRulesUsedKeyGeneratorQueryResultSet implements D
private Iterator<Collection<Object>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
ShowShardingTableRulesUsedKeyGeneratorStatement statement = (ShowShardingTableRulesUsedKeyGeneratorStatement) sqlStatement;
List<Collection<Object>> result = new ArrayList<>();
- Collection<ShardingRuleConfiguration> shardingTableRules = databaseMetaData.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class);
- shardingTableRules.forEach(each -> requireResult(statement, databaseMetaData.getDatabase().getName(), result, each));
+ Collection<ShardingRuleConfiguration> shardingTableRules = database.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class);
+ shardingTableRules.forEach(each -> requireResult(statement, database.getName(), result, each));
data = result.iterator();
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/UnusedShardingAlgorithmsQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/UnusedShardingAlgorithmsQueryResultSet.java
index eaf492580dd..3d95137293d 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/UnusedShardingAlgorithmsQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/UnusedShardingAlgorithmsQueryResultSet.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.query;
import com.google.common.base.Strings;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.properties.PropertiesConverter;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.ShardingStrategyConfiguration;
@@ -56,8 +56,8 @@ public final class UnusedShardingAlgorithmsQueryResultSet implements DistSQLResu
private Iterator<Entry<String, ShardingSphereAlgorithmConfiguration>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ShardingRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().getConfigurations()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ShardingRuleConfiguration> ruleConfig = database.getRuleMetaData().getConfigurations()
.stream().filter(each -> each instanceof ShardingRuleConfiguration).map(each -> (ShardingRuleConfiguration) each).findAny();
ruleConfig.ifPresent(this::getUnusedShardingAlgorithms);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/UnusedShardingKeyGeneratorsQueryResultSet.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/UnusedShardingKeyGeneratorsQueryResultSet.java
index afa1d71599e..0b4eb49a6b1 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/UnusedShardingKeyGeneratorsQueryResultSet.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/query/UnusedShardingKeyGeneratorsQueryResultSet.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.query;
import com.google.common.base.Strings;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.properties.PropertiesConverter;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.keygen.KeyGenerateStrategyConfiguration;
@@ -56,8 +56,8 @@ public final class UnusedShardingKeyGeneratorsQueryResultSet implements DistSQLR
private Iterator<Entry<String, ShardingSphereAlgorithmConfiguration>> data = Collections.emptyIterator();
@Override
- public void init(final ShardingSphereDatabaseMetaData databaseMetaData, final SQLStatement sqlStatement) {
- Optional<ShardingRuleConfiguration> ruleConfig = databaseMetaData.getRuleMetaData().getConfigurations()
+ public void init(final ShardingSphereDatabase database, final SQLStatement sqlStatement) {
+ Optional<ShardingRuleConfiguration> ruleConfig = database.getRuleMetaData().getConfigurations()
.stream().filter(each -> each instanceof ShardingRuleConfiguration).map(each -> (ShardingRuleConfiguration) each).findAny();
ruleConfig.ifPresent(this::getUnusedKeyGenerators);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterDefaultShardingStrategyStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterDefaultShardingStrategyStatementUpdater.java
index d07a83011b4..7aee6e95ed7 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterDefaultShardingStrategyStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterDefaultShardingStrategyStatementUpdater.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmCo
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.ShardingStrategyConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.converter.ShardingTableRuleStatementConverter;
@@ -43,9 +43,9 @@ public final class AlterDefaultShardingStrategyStatementUpdater implements RuleD
private static final String TYPE = AlterDefaultShardingStrategyStatement.class.getName();
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterDefaultShardingStrategyStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final AlterDefaultShardingStrategyStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkAlgorithm(databaseName, currentRuleConfig, sqlStatement);
checkExist(databaseName, sqlStatement, currentRuleConfig);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingAlgorithmStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingAlgorithmStatementUpdater.java
index 18685307f8d..178a4c77d95 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingAlgorithmStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingAlgorithmStatementUpdater.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleExcep
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.converter.ShardingTableRuleStatementConverter;
import org.apache.shardingsphere.sharding.distsql.parser.segment.ShardingAlgorithmSegment;
@@ -41,11 +41,10 @@ import java.util.stream.Collectors;
public final class AlterShardingAlgorithmStatementUpdater implements RuleDefinitionAlterUpdater<AlterShardingAlgorithmStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterShardingAlgorithmStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final AlterShardingAlgorithmStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
Collection<String> requireNames = sqlStatement.getAlgorithmSegments().stream().map(ShardingAlgorithmSegment::getShardingAlgorithmName).collect(Collectors.toList());
- checkDuplicate(databaseName, requireNames);
+ checkDuplicate(database.getName(), requireNames);
checkExist(requireNames, currentRuleConfig);
checkAlgorithmType(sqlStatement);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingBindingTableRulesStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingBindingTableRulesStatementUpd [...]
index 878253781b3..81b52456313 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingBindingTableRulesStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingBindingTableRulesStatementUpdater.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleExcep
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDefinitionViolationException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
@@ -39,9 +39,9 @@ import java.util.stream.Collectors;
public final class AlterShardingBindingTableRulesStatementUpdater implements RuleDefinitionAlterUpdater<AlterShardingBindingTableRulesStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterShardingBindingTableRulesStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final AlterShardingBindingTableRulesStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkToBeAlertedBindingTables(databaseName, sqlStatement, currentRuleConfig);
checkToBeAlteredDuplicateBindingTables(databaseName, sqlStatement);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingBroadcastTableRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingBroadcastTableRuleStatementU [...]
index 93448a33dd2..d6086dedec4 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingBroadcastTableRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingBroadcastTableRuleStatementUpdater.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDefinitionViolationException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.AlterShardingBroadcastTableRulesStatement;
@@ -30,9 +30,9 @@ import org.apache.shardingsphere.sharding.distsql.parser.statement.AlterSharding
public final class AlterShardingBroadcastTableRuleStatementUpdater implements RuleDefinitionAlterUpdater<AlterShardingBroadcastTableRulesStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterShardingBroadcastTableRulesStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
- checkCurrentRuleConfiguration(databaseMetaData.getDatabase().getName(), currentRuleConfig);
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final AlterShardingBroadcastTableRulesStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
+ checkCurrentRuleConfiguration(database.getName(), currentRuleConfig);
}
private void checkCurrentRuleConfiguration(final String databaseName, final ShardingRuleConfiguration currentRuleConfig) throws RequiredRuleMissedException {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingKeyGeneratorStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingKeyGeneratorStatementUpdater.java
index 13fb9e8a6f5..17ddfa099dc 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingKeyGeneratorStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingKeyGeneratorStatementUpdater.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleExcep
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.converter.ShardingTableRuleStatementConverter;
import org.apache.shardingsphere.sharding.distsql.parser.segment.ShardingKeyGeneratorSegment;
@@ -41,9 +41,9 @@ import java.util.stream.Collectors;
public final class AlterShardingKeyGeneratorStatementUpdater implements RuleDefinitionAlterUpdater<AlterShardingKeyGeneratorStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterShardingKeyGeneratorStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final AlterShardingKeyGeneratorStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
Collection<String> requireNames = sqlStatement.getKeyGeneratorSegments().stream().map(ShardingKeyGeneratorSegment::getKeyGeneratorName).collect(Collectors.toList());
checkDuplicate(databaseName, requireNames);
checkExist(requireNames, currentRuleConfig);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingTableRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingTableRuleStatementUpdater.java
index c7eeedfd047..0dfae6adca9 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingTableRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/AlterShardingTableRuleStatementUpdater.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionAlterUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
@@ -37,10 +37,10 @@ import java.util.stream.Collectors;
public final class AlterShardingTableRuleStatementUpdater implements RuleDefinitionAlterUpdater<AlterShardingTableRuleStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final AlterShardingTableRuleStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- DistSQLException.predictionThrow(null != currentRuleConfig, () -> new RequiredRuleMissedException("Sharding", databaseMetaData.getDatabase().getName()));
- ShardingTableRuleStatementChecker.checkAlteration(databaseMetaData, sqlStatement.getRules(), currentRuleConfig);
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final AlterShardingTableRuleStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ DistSQLException.predictionThrow(null != currentRuleConfig, () -> new RequiredRuleMissedException("Sharding", database.getName()));
+ ShardingTableRuleStatementChecker.checkAlteration(database, sqlStatement.getRules(), currentRuleConfig);
}
@Override
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateDefaultShardingStrategyStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateDefaultShardingStrategyStatementUpdater.java
index 3fe0bae87d9..5075df2642b 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateDefaultShardingStrategyStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateDefaultShardingStrategyStatementUpdater.java
@@ -25,7 +25,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmCo
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.ShardingStrategyConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.enums.ShardingStrategyType;
@@ -44,9 +44,9 @@ public final class CreateDefaultShardingStrategyStatementUpdater implements Rule
private static final String TYPE = CreateDefaultShardingStrategyStatement.class.getName();
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateDefaultShardingStrategyStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final CreateDefaultShardingStrategyStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkAlgorithm(databaseName, currentRuleConfig, sqlStatement);
checkExist(databaseName, sqlStatement, currentRuleConfig);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingAlgorithmStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingAlgorithmStatementUpdater.java
index be913ce3744..a21afadbc51 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingAlgorithmStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingAlgorithmStatementUpdater.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.converter.ShardingTableRuleStatementConverter;
import org.apache.shardingsphere.sharding.distsql.parser.segment.ShardingAlgorithmSegment;
@@ -41,9 +41,9 @@ import java.util.stream.Collectors;
public final class CreateShardingAlgorithmStatementUpdater implements RuleDefinitionCreateUpdater<CreateShardingAlgorithmStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateShardingAlgorithmStatement sqlStatement,
+ public void checkSQLStatement(final ShardingSphereDatabase database, final CreateShardingAlgorithmStatement sqlStatement,
final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ String databaseName = database.getName();
checkDuplicate(databaseName, sqlStatement, currentRuleConfig);
checkAlgorithm(sqlStatement);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingBindingTableRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingBindingTableRuleStatementUpd [...]
index adcc72b8c58..d7080593912 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingBindingTableRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingBindingTableRuleStatementUpdater.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
@@ -39,9 +39,9 @@ import java.util.stream.Collectors;
public final class CreateShardingBindingTableRuleStatementUpdater implements RuleDefinitionCreateUpdater<CreateShardingBindingTableRulesStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateShardingBindingTableRulesStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final CreateShardingBindingTableRulesStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkToBeCreatedBindingTables(databaseName, sqlStatement, currentRuleConfig);
checkToBeCreatedDuplicateBindingTables(databaseName, sqlStatement, currentRuleConfig);
@@ -53,8 +53,8 @@ public final class CreateShardingBindingTableRuleStatementUpdater implements Rul
}
}
- private void checkToBeCreatedBindingTables(final String databaseName, final CreateShardingBindingTableRulesStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ private void checkToBeCreatedBindingTables(final String databaseName,
+ final CreateShardingBindingTableRulesStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
Collection<String> currentLogicTables = getCurrentLogicTables(currentRuleConfig);
Collection<String> notExistedBindingTables = sqlStatement.getBindingTables().stream()
.filter(each -> !containsIgnoreCase(currentLogicTables, each)).collect(Collectors.toSet());
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingBroadcastTableRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingBroadcastTableRuleStatemen [...]
index 8c9746be423..88de76b89e7 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingBroadcastTableRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingBroadcastTableRuleStatementUpdater.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDefinitionViolationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleInUsedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.CreateShardingBroadcastTableRulesStatement;
@@ -30,9 +30,9 @@ import org.apache.shardingsphere.sharding.distsql.parser.statement.CreateShardin
public final class CreateShardingBroadcastTableRuleStatementUpdater implements RuleDefinitionCreateUpdater<CreateShardingBroadcastTableRulesStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateShardingBroadcastTableRulesStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
- checkCurrentRuleConfiguration(databaseMetaData.getDatabase().getName(), currentRuleConfig);
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final CreateShardingBroadcastTableRulesStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
+ checkCurrentRuleConfiguration(database.getName(), currentRuleConfig);
}
private void checkCurrentRuleConfiguration(final String databaseName, final ShardingRuleConfiguration currentRuleConfig) throws RuleInUsedException {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingKeyGeneratorStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingKeyGeneratorStatementUpdater.java
index edf089d0077..6e1e16ea785 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingKeyGeneratorStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingKeyGeneratorStatementUpdater.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateKeyGeneratorException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.converter.ShardingTableRuleStatementConverter;
import org.apache.shardingsphere.sharding.distsql.parser.segment.ShardingKeyGeneratorSegment;
@@ -41,9 +41,9 @@ import java.util.stream.Collectors;
public final class CreateShardingKeyGeneratorStatementUpdater implements RuleDefinitionCreateUpdater<CreateShardingKeyGeneratorStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateShardingKeyGeneratorStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- checkDuplicate(databaseMetaData.getDatabase().getName(), sqlStatement, currentRuleConfig);
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final CreateShardingKeyGeneratorStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ checkDuplicate(database.getName(), sqlStatement, currentRuleConfig);
checkKeyGeneratorAlgorithm(sqlStatement);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingTableRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingTableRuleStatementUpdater.java
index 882ca57f9e0..e4424196cb8 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingTableRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingTableRuleStatementUpdater.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionCreateUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.checker.ShardingTableRuleStatementChecker;
import org.apache.shardingsphere.sharding.distsql.handler.converter.ShardingTableRuleStatementConverter;
@@ -31,9 +31,9 @@ import org.apache.shardingsphere.sharding.distsql.parser.statement.CreateShardin
public final class CreateShardingTableRuleStatementUpdater implements RuleDefinitionCreateUpdater<CreateShardingTableRuleStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final CreateShardingTableRuleStatement sqlStatement,
+ public void checkSQLStatement(final ShardingSphereDatabase database, final CreateShardingTableRuleStatement sqlStatement,
final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, sqlStatement.getRules(), currentRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, sqlStatement.getRules(), currentRuleConfig);
}
@Override
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropDefaultStrategyStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropDefaultStrategyStatementUpdater.java
index 568549fa08e..9a8c67bc83e 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropDefaultStrategyStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropDefaultStrategyStatementUpdater.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.ShardingStrategyConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.enums.ShardingStrategyLevelType;
@@ -34,12 +34,12 @@ import java.util.Optional;
public final class DropDefaultStrategyStatementUpdater implements RuleDefinitionDropUpdater<DropDefaultShardingStrategyStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropDefaultShardingStrategyStatement sqlStatement,
+ public void checkSQLStatement(final ShardingSphereDatabase database, final DropDefaultShardingStrategyStatement sqlStatement,
final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
if (!isExistRuleConfig(currentRuleConfig) && sqlStatement.isContainsExistClause()) {
return;
}
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkExist(databaseName, sqlStatement, currentRuleConfig);
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAlgorithmStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAlgorithmStatementUpdater.java
index 70c657e53a0..b8cd40e34ad 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAlgorithmStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAlgorithmStatementUpdater.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.AlgorithmInUsedExc
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDefinitionViolationException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.ShardingStrategyConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.DropShardingAlgorithmStatement;
@@ -37,12 +37,12 @@ import java.util.stream.Collectors;
public final class DropShardingAlgorithmStatementUpdater implements RuleDefinitionDropUpdater<DropShardingAlgorithmStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropShardingAlgorithmStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final DropShardingAlgorithmStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
if (null == currentRuleConfig && sqlStatement.isContainsExistClause()) {
return;
}
- String databaseName = databaseMetaData.getDatabase().getName();
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkToBeDroppedShardingAlgorithms(databaseName, sqlStatement, currentRuleConfig);
checkShardingAlgorithmsInUsed(databaseName, sqlStatement, currentRuleConfig);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingBindingTableRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingBindingTableRuleStatementUpdater.java
index 047b0bc6bc9..9cb8da6d44d 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingBindingTableRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingBindingTableRuleStatementUpdater.java
@@ -22,7 +22,7 @@ import com.google.common.base.Strings;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.segment.BindingTableRuleSegment;
import org.apache.shardingsphere.sharding.distsql.parser.statement.DropShardingBindingTableRulesStatement;
@@ -46,12 +46,12 @@ public final class DropShardingBindingTableRuleStatementUpdater implements RuleD
private Map<String, String> bindingTableRules = Collections.emptyMap();
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropShardingBindingTableRulesStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final DropShardingBindingTableRulesStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
if (!isExistRuleConfig(currentRuleConfig) && sqlStatement.isContainsExistClause()) {
return;
}
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
bindingTableRules = buildBindingTableRule(currentRuleConfig);
checkBindingTableRuleExist(databaseName, sqlStatement, bindingTableRules);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingBroadcastTableRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingBroadcastTableRuleStatementUpd [...]
index fa8db3e14f3..87c89fd69dc 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingBroadcastTableRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingBroadcastTableRuleStatementUpdater.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.DropShardingBroadcastTableRulesStatement;
@@ -33,9 +33,9 @@ import java.util.stream.Collectors;
public final class DropShardingBroadcastTableRuleStatementUpdater implements RuleDefinitionDropUpdater<DropShardingBroadcastTableRulesStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropShardingBroadcastTableRulesStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final DropShardingBroadcastTableRulesStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ String databaseName = database.getName();
if (!isExistRuleConfig(currentRuleConfig) && sqlStatement.isContainsExistClause()) {
return;
}
@@ -43,8 +43,8 @@ public final class DropShardingBroadcastTableRuleStatementUpdater implements Rul
checkBroadcastTableRuleExist(databaseName, sqlStatement, currentRuleConfig);
}
- private void checkBroadcastTableRuleExist(final String databaseName, final DropShardingBroadcastTableRulesStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ private void checkBroadcastTableRuleExist(final String databaseName,
+ final DropShardingBroadcastTableRulesStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
if (sqlStatement.isContainsExistClause()) {
return;
}
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingKeyGeneratorStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingKeyGeneratorStatementUpdater.java
index 0515392d1b4..61a848b230b 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingKeyGeneratorStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingKeyGeneratorStatementUpdater.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.KeyGeneratorInUsedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredKeyGeneratorMissedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.keygen.KeyGenerateStrategyConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.DropShardingKeyGeneratorStatement;
@@ -41,12 +41,12 @@ public final class DropShardingKeyGeneratorStatementUpdater implements RuleDefin
private static final String TYPE = DropShardingKeyGeneratorStatement.class.getName();
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropShardingKeyGeneratorStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final DropShardingKeyGeneratorStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws DistSQLException {
if (null == currentRuleConfig && sqlStatement.isContainsExistClause()) {
return;
}
- String databaseName = databaseMetaData.getDatabase().getName();
+ String databaseName = database.getName();
Collection<String> keyGeneratorNames = new LinkedList<>(sqlStatement.getKeyGeneratorNames());
checkExist(databaseName, keyGeneratorNames, currentRuleConfig, sqlStatement);
checkInUsed(databaseName, keyGeneratorNames, currentRuleConfig);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingTableRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingTableRuleStatementUpdater.java
index 1b502644cf2..19d27eb10ce 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingTableRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingTableRuleStatementUpdater.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissed
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDefinitionViolationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleInUsedException;
import org.apache.shardingsphere.infra.distsql.update.RuleDefinitionDropUpdater;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
@@ -42,12 +42,12 @@ import java.util.stream.Collectors;
public final class DropShardingTableRuleStatementUpdater implements RuleDefinitionDropUpdater<DropShardingTableRuleStatement, ShardingRuleConfiguration> {
@Override
- public void checkSQLStatement(final ShardingSphereDatabaseMetaData databaseMetaData, final DropShardingTableRuleStatement sqlStatement,
- final ShardingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
- String databaseName = databaseMetaData.getDatabase().getName();
+ public void checkSQLStatement(final ShardingSphereDatabase database,
+ final DropShardingTableRuleStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) throws RuleDefinitionViolationException {
if (!isExistRuleConfig(currentRuleConfig) && sqlStatement.isContainsExistClause()) {
return;
}
+ String databaseName = database.getName();
checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
checkToBeDroppedShardingTableNames(databaseName, sqlStatement, currentRuleConfig);
checkBindingTables(databaseName, sqlStatement, currentRuleConfig);
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShardingScalingRulesQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShardingScalingRulesQueryResultSetTest.java
index a4e8db4fd3c..eecad6d3099 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShardingScalingRulesQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShardingScalingRulesQueryResultSetTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmC
import org.apache.shardingsphere.infra.config.rulealtered.OnRuleAlteredActionConfiguration;
import org.apache.shardingsphere.infra.config.rulealtered.OnRuleAlteredActionConfiguration.InputConfiguration;
import org.apache.shardingsphere.infra.config.rulealtered.OnRuleAlteredActionConfiguration.OutputConfiguration;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.parser.statement.ShowShardingAlgorithmsStatement;
import org.junit.Test;
@@ -43,10 +43,10 @@ public final class ShardingScalingRulesQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
ShardingScalingRulesQueryResultSet resultSet = new ShardingScalingRulesQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingAlgorithmsStatement.class));
+ resultSet.init(database, mock(ShowShardingAlgorithmsStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(6));
assertThat(actual.get(0), is("scaling_name"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingCheckAlgorithmsQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingCheckAlgorithmsQueryResultSetTest.java
index 4f948ae1066..776d0bbd623 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingCheckAlgorithmsQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/query/ShowScalingCheckAlgorithmsQueryResultSetTest.java
@@ -17,7 +17,7 @@
package org.apache.shardingsphere.scaling.distsql.handler.query;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.ShowScalingCheckAlgorithmsStatement;
import org.apache.shardingsphere.scaling.distsql.util.PipelineContextUtil;
import org.junit.BeforeClass;
@@ -38,7 +38,7 @@ import static org.junit.Assert.assertTrue;
public final class ShowScalingCheckAlgorithmsQueryResultSetTest {
@Mock
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShowScalingCheckAlgorithmsStatement showScalingCheckAlgorithmsStatement;
@@ -51,7 +51,7 @@ public final class ShowScalingCheckAlgorithmsQueryResultSetTest {
@Test
public void assertGetRowData() {
ShowScalingCheckAlgorithmsQueryResultSet resultSet = new ShowScalingCheckAlgorithmsQueryResultSet();
- resultSet.init(databaseMetaData, showScalingCheckAlgorithmsStatement);
+ resultSet.init(database, showScalingCheckAlgorithmsStatement);
Collection<Object> algorithmTypes = new LinkedHashSet<>();
while (resultSet.next()) {
Collection<Object> actual = resultSet.getRowData();
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/CreateShardingScalingRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/CreateShardingScalingRuleStatementUpdaterTest.java
index 9f25be5f24f..45fd667d166 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/CreateShardingScalingRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/CreateShardingScalingRuleStatementUpdaterTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.CreateShardingScalingRuleStatement;
import org.apache.shardingsphere.scaling.distsql.statement.segment.InputOrOutputSegment;
import org.apache.shardingsphere.scaling.distsql.statement.segment.ShardingScalingRuleConfigurationSegment;
@@ -47,61 +47,61 @@ public final class CreateShardingScalingRuleStatementUpdaterTest {
private static final String LIMIT_TYPE_OUTPUT = "FIXTURE_OUTPUT";
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
private final CreateShardingScalingRuleStatementUpdater updater = new CreateShardingScalingRuleStatementUpdater();
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckWithoutShardingRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, new CreateShardingScalingRuleStatement("default_scaling", null), null);
+ updater.checkSQLStatement(database, new CreateShardingScalingRuleStatement("default_scaling", null), null);
}
@Test(expected = DuplicateRuleException.class)
public void assertCheckWithExist() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.getScaling().put("default_scaling", null);
- updater.checkSQLStatement(databaseMetaData, new CreateShardingScalingRuleStatement("default_scaling", null), currentRuleConfig);
+ updater.checkSQLStatement(database, new CreateShardingScalingRuleStatement("default_scaling", null), currentRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertCheckInvalidRateLimiter() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
CreateShardingScalingRuleStatement statement = new CreateShardingScalingRuleStatement("default_scaling", createConfigurationWithInvalidRateLimiter());
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertCheckInvalidStreamChannel() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
CreateShardingScalingRuleStatement statement = new CreateShardingScalingRuleStatement("default_scaling", createConfigurationWithInvalidStreamChannel());
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertCheckInvalidCompletionDetector() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
CreateShardingScalingRuleStatement statement = new CreateShardingScalingRuleStatement("default_scaling", createConfigurationWithInvalidCompletionDetector());
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertCheckInvalidDataConsistencyCalculator() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
CreateShardingScalingRuleStatement statement = new CreateShardingScalingRuleStatement("default_scaling", createConfigurationWithInvalidDataConsistencyCalculator());
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
}
@Test
public void assertCheckSuccessWithoutConfiguration() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
- updater.checkSQLStatement(databaseMetaData, new CreateShardingScalingRuleStatement("default_scaling", null), currentRuleConfig);
+ updater.checkSQLStatement(database, new CreateShardingScalingRuleStatement("default_scaling", null), currentRuleConfig);
}
@Test
public void assertCheckSuccessWithCompleteConfiguration() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
CreateShardingScalingRuleStatement statement = new CreateShardingScalingRuleStatement("default_scaling", createCompleteConfiguration());
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
}
@Test
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/DisabledShardingScalingRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/DisabledShardingScalingRuleStatementUpdater [...]
index e8ad71c3022..4e99ffdaeec 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/DisabledShardingScalingRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/DisabledShardingScalingRuleStatementUpdaterTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.scaling.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDisabledException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.DisableShardingScalingRuleStatement;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.junit.Before;
@@ -36,26 +36,26 @@ import static org.mockito.Mockito.when;
@RunWith(MockitoJUnitRunner.class)
public final class DisabledShardingScalingRuleStatementUpdaterTest {
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
-
private final DisableShardingScalingRuleStatementUpdater updater = new DisableShardingScalingRuleStatementUpdater();
+ @Mock(answer = Answers.RETURNS_DEEP_STUBS)
+ private ShardingSphereDatabase database;
+
@Before
public void before() {
- when(databaseMetaData.getDatabase().getName()).thenReturn("test");
+ when(database.getName()).thenReturn("test");
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckWithoutShardingRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("default_scaling"), null);
+ updater.checkSQLStatement(database, createSQLStatement("default_scaling"), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckNotExist() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.getScaling().put("default_scaling", null);
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("new_scaling"), currentRuleConfig);
+ updater.checkSQLStatement(database, createSQLStatement("new_scaling"), currentRuleConfig);
}
@Test(expected = RuleDisabledException.class)
@@ -63,7 +63,7 @@ public final class DisabledShardingScalingRuleStatementUpdaterTest {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
String scalingName = "default_scaling";
currentRuleConfig.getScaling().put(scalingName, null);
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(scalingName), currentRuleConfig);
+ updater.checkSQLStatement(database, createSQLStatement(scalingName), currentRuleConfig);
}
@Test
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/DropShardingScalingRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/DropShardingScalingRuleStatementUpdaterTest.java
index 9c993482e5f..76570a9114e 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/DropShardingScalingRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/DropShardingScalingRuleStatementUpdaterTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.scaling.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.DropShardingScalingRuleStatement;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.junit.Before;
@@ -36,38 +36,38 @@ import static org.mockito.Mockito.when;
@RunWith(MockitoJUnitRunner.class)
public final class DropShardingScalingRuleStatementUpdaterTest {
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
-
private final DropShardingScalingRuleStatementUpdater updater = new DropShardingScalingRuleStatementUpdater();
+ @Mock(answer = Answers.RETURNS_DEEP_STUBS)
+ private ShardingSphereDatabase database;
+
@Before
public void before() {
- when(databaseMetaData.getDatabase().getName()).thenReturn("test");
+ when(database.getName()).thenReturn("test");
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckWithoutShardingRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("default_scaling"), null);
+ updater.checkSQLStatement(database, createSQLStatement("default_scaling"), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckWithNotExist() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("default_scaling"), currentRuleConfig);
+ updater.checkSQLStatement(database, createSQLStatement("default_scaling"), currentRuleConfig);
}
@Test
public void assertCheckWithIfExists() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, new DropShardingScalingRuleStatement(true, "default_scaling"), new ShardingRuleConfiguration());
- updater.checkSQLStatement(databaseMetaData, new DropShardingScalingRuleStatement(true, "default_scaling"), null);
+ updater.checkSQLStatement(database, new DropShardingScalingRuleStatement(true, "default_scaling"), new ShardingRuleConfiguration());
+ updater.checkSQLStatement(database, new DropShardingScalingRuleStatement(true, "default_scaling"), null);
}
@Test
public void assertCheckSuccess() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.getScaling().put("default_scaling", null);
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("default_scaling"), currentRuleConfig);
+ updater.checkSQLStatement(database, createSQLStatement("default_scaling"), currentRuleConfig);
}
@Test
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/EnableShardingScalingRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/EnableShardingScalingRuleStatementUpdaterTest.java
index 54db32c19a5..4a5d238b590 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/EnableShardingScalingRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/scaling/distsql/handler/update/EnableShardingScalingRuleStatementUpdaterTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.scaling.distsql.handler.update;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleEnabledException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.scaling.distsql.statement.EnableShardingScalingRuleStatement;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.junit.Before;
@@ -39,25 +39,25 @@ import static org.mockito.Mockito.when;
public final class EnableShardingScalingRuleStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
private final EnableShardingScalingRuleStatementUpdater updater = new EnableShardingScalingRuleStatementUpdater();
@Before
public void before() {
- when(databaseMetaData.getDatabase().getName()).thenReturn("test");
+ when(database.getName()).thenReturn("test");
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckWithoutShardingRule() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("default_scaling"), null);
+ updater.checkSQLStatement(database, createSQLStatement("default_scaling"), null);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckNotExist() throws DistSQLException {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.getScaling().put("default_scaling", null);
- updater.checkSQLStatement(databaseMetaData, createSQLStatement("new_scaling"), currentRuleConfig);
+ updater.checkSQLStatement(database, createSQLStatement("new_scaling"), currentRuleConfig);
}
@Test(expected = RuleEnabledException.class)
@@ -66,7 +66,7 @@ public final class EnableShardingScalingRuleStatementUpdaterTest {
String scalingName = "default_scaling";
currentRuleConfig.getScaling().put(scalingName, null);
currentRuleConfig.setScalingName(scalingName);
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(scalingName), currentRuleConfig);
+ updater.checkSQLStatement(database, createSQLStatement(scalingName), currentRuleConfig);
}
@Test
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/checker/ShardingRuleStatementCheckerTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/checker/ShardingRuleStatementCheckerTest.java
index 4dcd2610bc8..89687e3f778 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/checker/ShardingRuleStatementCheckerTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/checker/ShardingRuleStatementCheckerTest.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.distsql.exception.resource.RequiredResour
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
@@ -62,7 +62,7 @@ import static org.mockito.Mockito.when;
public final class ShardingRuleStatementCheckerTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShardingSphereRuleMetaData shardingSphereRuleMetaData;
@@ -73,9 +73,9 @@ public final class ShardingRuleStatementCheckerTest {
@Before
public void before() {
- when(databaseMetaData.getDatabase().getName()).thenReturn("schema");
- when(databaseMetaData.getResource()).thenReturn(shardingSphereResource);
- when(databaseMetaData.getRuleMetaData()).thenReturn(shardingSphereRuleMetaData);
+ when(database.getName()).thenReturn("schema");
+ when(database.getResource()).thenReturn(shardingSphereResource);
+ when(database.getRuleMetaData()).thenReturn(shardingSphereRuleMetaData);
when(shardingSphereRuleMetaData.getRules()).thenReturn(Collections.emptyList());
}
@@ -84,10 +84,10 @@ public final class ShardingRuleStatementCheckerTest {
Collection<AbstractTableRuleSegment> rules = new LinkedList<>();
rules.add(createCompleteAutoTableRule());
rules.add(createCompleteTableRule());
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
rules.clear();
rules.add(new AutoTableRuleSegment("t_order", Arrays.asList("ds_0", "ds_1")));
- ShardingTableRuleStatementChecker.checkAlteration(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkAlteration(database, rules, shardingRuleConfig);
}
@Test(expected = DuplicateRuleException.class)
@@ -95,25 +95,25 @@ public final class ShardingRuleStatementCheckerTest {
List<AbstractTableRuleSegment> rules = Arrays.asList(
new AutoTableRuleSegment("t_order_duplicated", Arrays.asList("ds_0", "ds_1")),
new AutoTableRuleSegment("t_order_duplicated", Arrays.asList("ds_0", "ds_1")));
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
@Test(expected = DuplicateRuleException.class)
public void assertCheckCreationWithIdentical() throws DistSQLException {
List<AbstractTableRuleSegment> rules = Collections.singletonList(new AutoTableRuleSegment("t_order", Arrays.asList("ds_0", "ds_1")));
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckAlterationWithRuleRequiredMissed() throws DistSQLException {
List<AbstractTableRuleSegment> rules = Collections.singletonList(new AutoTableRuleSegment("t_order_required_missed", Arrays.asList("ds_0", "ds_1")));
- ShardingTableRuleStatementChecker.checkAlteration(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkAlteration(database, rules, shardingRuleConfig);
}
@Test(expected = RequiredResourceMissedException.class)
public void assertCheckCreationWithResourceRequiredMissed() throws DistSQLException {
List<AbstractTableRuleSegment> rules = Collections.singletonList(new AutoTableRuleSegment("t_product", Arrays.asList("ds_required_missed", "ds_1")));
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -121,7 +121,7 @@ public final class ShardingRuleStatementCheckerTest {
AutoTableRuleSegment autoTableRuleSegment = new AutoTableRuleSegment("t_product", Arrays.asList("ds_0", "ds_1"));
autoTableRuleSegment.setKeyGenerateStrategySegment(new KeyGenerateStrategySegment("product_id", new AlgorithmSegment("invalid", newProperties("invalid", "invalid"))));
List<AbstractTableRuleSegment> rules = Collections.singletonList(autoTableRuleSegment);
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -130,7 +130,7 @@ public final class ShardingRuleStatementCheckerTest {
autoTableRuleSegment.setShardingColumn("product_id");
autoTableRuleSegment.setShardingAlgorithmSegment(new AlgorithmSegment("invalid", newProperties("", "")));
List<AbstractTableRuleSegment> rules = Collections.singletonList(autoTableRuleSegment);
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -138,7 +138,7 @@ public final class ShardingRuleStatementCheckerTest {
TableRuleSegment tableRuleSegment = new TableRuleSegment("t_product", Arrays.asList("ds_0", "ds_1"));
tableRuleSegment.setTableStrategySegment(new ShardingStrategySegment("invalid", "product_id", "t_order_algorithm", null));
List<AbstractTableRuleSegment> rules = Collections.singletonList(tableRuleSegment);
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -146,7 +146,7 @@ public final class ShardingRuleStatementCheckerTest {
TableRuleSegment tableRuleSegment = new TableRuleSegment("t_product", Arrays.asList("ds_0", "ds_1"));
tableRuleSegment.setTableStrategySegment(new ShardingStrategySegment("complex", "product_id", "t_order_algorithm", null));
List<AbstractTableRuleSegment> rules = Collections.singletonList(tableRuleSegment);
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -154,7 +154,7 @@ public final class ShardingRuleStatementCheckerTest {
TableRuleSegment tableRuleSegment = new TableRuleSegment("t_product", Arrays.asList("ds_0", "ds_1"));
tableRuleSegment.setTableStrategySegment(new ShardingStrategySegment("standard", "product_id,user_id", "t_order_algorithm", null));
List<AbstractTableRuleSegment> rules = Collections.singletonList(tableRuleSegment);
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -162,7 +162,7 @@ public final class ShardingRuleStatementCheckerTest {
TableRuleSegment tableRuleSegment = new TableRuleSegment("t_product", Arrays.asList("ds_0", "ds_1"));
tableRuleSegment.setTableStrategySegment(new ShardingStrategySegment("hint", "product_id", "invalid", null));
List<AbstractTableRuleSegment> rules = Collections.singletonList(tableRuleSegment);
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -170,7 +170,7 @@ public final class ShardingRuleStatementCheckerTest {
TableRuleSegment tableRuleSegment = new TableRuleSegment("t_product", Arrays.asList("ds_0", "ds_1"));
tableRuleSegment.setTableStrategySegment(new ShardingStrategySegment("hint", "product_id", "invalid", null));
List<AbstractTableRuleSegment> rules = Collections.singletonList(tableRuleSegment);
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, null);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, null);
}
@Test
@@ -179,7 +179,7 @@ public final class ShardingRuleStatementCheckerTest {
AlgorithmSegment databaseAlgorithmSegment = getAutoCreativeAlgorithmSegment("inline", newProperties("algorithm-expression", "ds_${product_id% 2}"));
tableRuleSegment.setTableStrategySegment(new ShardingStrategySegment("standard", "product_id", null, databaseAlgorithmSegment));
List<AbstractTableRuleSegment> rules = Collections.singletonList(tableRuleSegment);
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -187,7 +187,7 @@ public final class ShardingRuleStatementCheckerTest {
TableRuleSegment tableRuleSegment = new TableRuleSegment("t_product", Arrays.asList("ds_0", "ds_1"));
tableRuleSegment.setTableStrategySegment(new ShardingStrategySegment("standard", "product_id", null, null));
List<AbstractTableRuleSegment> rules = Collections.singletonList(tableRuleSegment);
- ShardingTableRuleStatementChecker.checkCreation(databaseMetaData, rules, shardingRuleConfig);
+ ShardingTableRuleStatementChecker.checkCreation(database, rules, shardingRuleConfig);
}
private static ShardingRuleConfiguration createShardingRuleConfiguration() {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingAlgorithmsQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingAlgorithmsQueryResultSetTest.java
index dbb456498a1..0f64760e150 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingAlgorithmsQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingAlgorithmsQueryResultSetTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.query.ShardingAlgorithmsQueryResultSet;
import org.apache.shardingsphere.sharding.distsql.parser.statement.ShowShardingAlgorithmsStatement;
@@ -40,10 +40,10 @@ public final class ShardingAlgorithmsQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
ShardingAlgorithmsQueryResultSet resultSet = new ShardingAlgorithmsQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingAlgorithmsStatement.class));
+ resultSet.init(database, mock(ShowShardingAlgorithmsStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(3));
assertThat(actual.get(0), is("database_inline"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingBindingTableRuleQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingBindingTableRuleQueryResultSetTest.java
index 699051fe201..de6a43c6d28 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingBindingTableRuleQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingBindingTableRuleQueryResultSetTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.query.ShardingBindingTableRuleQueryResultSet;
@@ -39,10 +39,10 @@ public final class ShardingBindingTableRuleQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
ShardingBindingTableRuleQueryResultSet resultSet = new ShardingBindingTableRuleQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingBindingTableRulesStatement.class));
+ resultSet.init(database, mock(ShowShardingBindingTableRulesStatement.class));
Collection<Object> actual = resultSet.getRowData();
assertThat(actual.size(), is(1));
assertTrue(actual.contains("t_order,t_order_item"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingBroadcastTableRuleQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingBroadcastTableRuleQueryResultSetTest.java
index 429d28e029a..df2b032c8ac 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingBroadcastTableRuleQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingBroadcastTableRuleQueryResultSetTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.query.ShardingBroadcastTableRuleQueryResultSet;
import org.apache.shardingsphere.sharding.distsql.parser.statement.ShowShardingBroadcastTableRulesStatement;
@@ -38,10 +38,10 @@ public final class ShardingBroadcastTableRuleQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
ShardingBroadcastTableRuleQueryResultSet resultSet = new ShardingBroadcastTableRuleQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingBroadcastTableRulesStatement.class));
+ resultSet.init(database, mock(ShowShardingBroadcastTableRulesStatement.class));
Collection<Object> actual = resultSet.getRowData();
assertThat(actual.size(), is(1));
assertThat(actual, is(Collections.singleton("t_order")));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingDefaultShardingStrategyQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingDefaultShardingStrategyQueryResultSetTest.java
index 004eeaef6c6..5a9d1465992 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingDefaultShardingStrategyQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingDefaultShardingStrategyQueryResultSetTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.ComplexShardingStrategyConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.HintShardingStrategyConfiguration;
@@ -45,10 +45,10 @@ public final class ShardingDefaultShardingStrategyQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfiguration1()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfiguration1()));
DefaultShardingStrategyQueryResultSet resultSet = new DefaultShardingStrategyQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingAlgorithmsStatement.class));
+ resultSet.init(database, mock(ShowShardingAlgorithmsStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(6));
assertThat(actual.get(0), is("TABLE"));
@@ -65,9 +65,9 @@ public final class ShardingDefaultShardingStrategyQueryResultSetTest {
assertThat(actual.get(3), is("database_inline"));
assertThat(actual.get(4), is("INLINE"));
assertThat(actual.get(5).toString(), is("{algorithm-expression=ds_${user_id % 2}}"));
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfiguration2()));
+ when(database.getRuleMetaData().findRuleConfiguration(any())).thenReturn(Collections.singleton(createRuleConfiguration2()));
resultSet = new DefaultShardingStrategyQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingAlgorithmsStatement.class));
+ resultSet.init(database, mock(ShowShardingAlgorithmsStatement.class));
actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(6));
assertThat(actual.get(0), is("TABLE"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingKeyGeneratorsQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingKeyGeneratorsQueryResultSetTest.java
index 886351e380e..d39580b677f 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingKeyGeneratorsQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingKeyGeneratorsQueryResultSetTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.query.ShardingKeyGeneratorsQueryResultSet;
import org.apache.shardingsphere.sharding.distsql.parser.statement.ShowShardingKeyGeneratorsStatement;
@@ -40,10 +40,10 @@ public final class ShardingKeyGeneratorsQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class)).thenReturn(createRuleConfigurations());
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class)).thenReturn(createRuleConfigurations());
ShardingKeyGeneratorsQueryResultSet resultSet = new ShardingKeyGeneratorsQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingKeyGeneratorsStatement.class));
+ resultSet.init(database, mock(ShowShardingKeyGeneratorsStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(3));
assertThat(actual.get(0), is("snowflake"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingTableNodesQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingTableNodesQueryResultSetTest.java
index fb77250e695..bab5e8b268e 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingTableNodesQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingTableNodesQueryResultSetTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
@@ -44,10 +44,10 @@ public final class ShardingTableNodesQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
DistSQLResultSet resultSet = new ShardingTableNodesQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingTableNodesStatement.class));
+ resultSet.init(database, mock(ShowShardingTableNodesStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(2));
assertThat(actual.get(0), is("t_order"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingTableRuleQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingTableRuleQueryResultSetTest.java
index 87ed625cd37..d844b8b58bf 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingTableRuleQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingTableRuleQueryResultSetTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.keygen.KeyGenerateStrategyConfiguration;
@@ -45,10 +45,10 @@ public final class ShardingTableRuleQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
DistSQLResultSet resultSet = new ShardingTableRuleQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingTableRulesStatement.class));
+ resultSet.init(database, mock(ShowShardingTableRulesStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(14));
assertThat(actual.get(0), is("t_order"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShowShardingTableRulesUsedAlgorithmQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShowShardingTableRulesUsedAlgorithmQueryResultSetTest.java
index e38169db6b6..9cf2f171fd2 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShowShardingTableRulesUsedAlgorithmQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShowShardingTableRulesUsedAlgorithmQueryResultSetTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
@@ -46,20 +46,20 @@ public final class ShowShardingTableRulesUsedAlgorithmQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class)).thenReturn(Collections.singleton(createRuleConfiguration()));
- when(databaseMetaData.getDatabase().getName()).thenReturn("sharding_db");
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class)).thenReturn(Collections.singleton(createRuleConfiguration()));
+ when(database.getName()).thenReturn("sharding_db");
DistSQLResultSet resultSet = new ShardingTableRulesUsedAlgorithmQueryResultSet();
ShowShardingTableRulesUsedAlgorithmStatement statement = mock(ShowShardingTableRulesUsedAlgorithmStatement.class);
when(statement.getAlgorithmName()).thenReturn(Optional.of("t_order_inline"));
- resultSet.init(databaseMetaData, statement);
+ resultSet.init(database, statement);
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(3));
assertThat(actual.get(0), is("sharding_db"));
assertThat(actual.get(1), is("table"));
assertThat(actual.get(2), is("t_order"));
when(statement.getAlgorithmName()).thenReturn(Optional.of("auto_mod"));
- resultSet.init(databaseMetaData, statement);
+ resultSet.init(database, statement);
actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(3));
assertThat(actual.get(0), is("sharding_db"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShowShardingTableRulesUsedKeyGeneratorQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShowShardingTableRulesUsedKeyGeneratorQueryResultS [...]
index cb50e2dc60a..1d46d887791 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShowShardingTableRulesUsedKeyGeneratorQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShowShardingTableRulesUsedKeyGeneratorQueryResultSetTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
@@ -46,13 +46,13 @@ public final class ShowShardingTableRulesUsedKeyGeneratorQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class)).thenReturn(Collections.singleton(createRuleConfiguration()));
- when(databaseMetaData.getDatabase().getName()).thenReturn("sharding_db");
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().findRuleConfiguration(ShardingRuleConfiguration.class)).thenReturn(Collections.singleton(createRuleConfiguration()));
+ when(database.getName()).thenReturn("sharding_db");
DistSQLResultSet resultSet = new ShardingTableRulesUsedKeyGeneratorQueryResultSet();
ShowShardingTableRulesUsedKeyGeneratorStatement statement = mock(ShowShardingTableRulesUsedKeyGeneratorStatement.class);
when(statement.getKeyGeneratorName()).thenReturn(Optional.of("snowflake"));
- resultSet.init(databaseMetaData, statement);
+ resultSet.init(database, statement);
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(3));
assertThat(actual.get(0), is("sharding_db"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/UnusedShardingAlgorithmsQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/UnusedShardingAlgorithmsQueryResultSetTest.java
index 9f839f9e183..ee86e689037 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/UnusedShardingAlgorithmsQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/UnusedShardingAlgorithmsQueryResultSetTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.StandardShardingStrategyConfiguration;
@@ -42,10 +42,10 @@ public final class UnusedShardingAlgorithmsQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
UnusedShardingAlgorithmsQueryResultSet resultSet = new UnusedShardingAlgorithmsQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingAlgorithmsStatement.class));
+ resultSet.init(database, mock(ShowShardingAlgorithmsStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(3));
assertThat(actual.get(0), is("database_inline"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/UnusedShardingKeyGeneratorsQueryResultSetTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/UnusedShardingKeyGeneratorsQueryResultSetTest.java
index c8dc6aea46d..cb2b7b34e89 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/UnusedShardingKeyGeneratorsQueryResultSetTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/query/UnusedShardingKeyGeneratorsQueryResultSetTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.query;
import org.apache.shardingsphere.infra.config.RuleConfiguration;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.keygen.KeyGenerateStrategyConfiguration;
@@ -42,10 +42,10 @@ public final class UnusedShardingKeyGeneratorsQueryResultSetTest {
@Test
public void assertGetRowData() {
- ShardingSphereDatabaseMetaData databaseMetaData = mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS);
- when(databaseMetaData.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
+ ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
+ when(database.getRuleMetaData().getConfigurations()).thenReturn(Collections.singleton(createRuleConfiguration()));
UnusedShardingKeyGeneratorsQueryResultSet resultSet = new UnusedShardingKeyGeneratorsQueryResultSet();
- resultSet.init(databaseMetaData, mock(ShowShardingAlgorithmsStatement.class));
+ resultSet.init(database, mock(ShowShardingAlgorithmsStatement.class));
List<Object> actual = new ArrayList<>(resultSet.getRowData());
assertThat(actual.size(), is(3));
assertThat(actual.get(0), is("uuid_key_generator"));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterDefaultShardingStrategyStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterDefaultShardingStrategyStatementUpdaterTest.java
index 87b4a9d1b50..d05d32f1998 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterDefaultShardingStrategyStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterDefaultShardingStrategyStatementUpdaterTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.StandardShardingStrategyConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.update.AlterDefaultShardingStrategyStatementUpdater;
@@ -44,24 +44,24 @@ import static org.mockito.Mockito.when;
public final class AlterDefaultShardingStrategyStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
private final AlterDefaultShardingStrategyStatementUpdater updater = new AlterDefaultShardingStrategyStatementUpdater();
@Before
public void before() {
- when(databaseMetaData.getDatabase().getName()).thenReturn("test");
+ when(database.getName()).thenReturn("test");
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertExecuteWithInvalidStrategyType() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, new AlterDefaultShardingStrategyStatement("TABLE", "invalidType", null, "order_id_algorithm", null), new ShardingRuleConfiguration());
+ updater.checkSQLStatement(database, new AlterDefaultShardingStrategyStatement("TABLE", "invalidType", null, "order_id_algorithm", null), new ShardingRuleConfiguration());
}
@Test(expected = RequiredRuleMissedException.class)
public void assertExecuteWithoutCurrentConfiguration() throws DistSQLException {
AlterDefaultShardingStrategyStatement statement = new AlterDefaultShardingStrategyStatement("TABLE", "standard", "order_id", "order_id_algorithm", null);
- updater.checkSQLStatement(databaseMetaData, statement, null);
+ updater.checkSQLStatement(database, statement, null);
}
@Test(expected = RequiredAlgorithmMissedException.class)
@@ -70,7 +70,7 @@ public final class AlterDefaultShardingStrategyStatementUpdaterTest {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.setDefaultTableShardingStrategy(new StandardShardingStrategyConfiguration("order_id", "orderAlgorithm"));
currentRuleConfig.getShardingAlgorithms().put("not_exist_algorithm", null);
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -79,7 +79,7 @@ public final class AlterDefaultShardingStrategyStatementUpdaterTest {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.setDefaultTableShardingStrategy(new StandardShardingStrategyConfiguration("order_id", "orderAlgorithm"));
currentRuleConfig.getShardingAlgorithms().put("order_id_algorithm", null);
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
}
@Test
@@ -88,7 +88,7 @@ public final class AlterDefaultShardingStrategyStatementUpdaterTest {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.setDefaultTableShardingStrategy(new StandardShardingStrategyConfiguration("order_id", "orderAlgorithm"));
currentRuleConfig.getShardingAlgorithms().put("order_id_algorithm", null);
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
ShardingRuleConfiguration toBeAlteredRuleConfig = updater.buildToBeAlteredRuleConfiguration(statement);
updater.updateCurrentRuleConfiguration(currentRuleConfig, toBeAlteredRuleConfig);
StandardShardingStrategyConfiguration defaultTableShardingStrategy = (StandardShardingStrategyConfiguration) currentRuleConfig.getDefaultTableShardingStrategy();
@@ -102,7 +102,7 @@ public final class AlterDefaultShardingStrategyStatementUpdaterTest {
AlterDefaultShardingStrategyStatement statement = new AlterDefaultShardingStrategyStatement("DATABASE", "standard", "user_id", null, databaseAlgorithmSegment);
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.setDefaultDatabaseShardingStrategy(new StandardShardingStrategyConfiguration("order_id", "orderAlgorithm"));
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
ShardingRuleConfiguration toBeAlteredRuleConfig = updater.buildToBeAlteredRuleConfiguration(statement);
updater.updateCurrentRuleConfiguration(currentRuleConfig, toBeAlteredRuleConfig);
StandardShardingStrategyConfiguration defaultDatabaseShardingStrategy = (StandardShardingStrategyConfiguration) currentRuleConfig.getDefaultDatabaseShardingStrategy();
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingAlgorithmStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingAlgorithmStatementUpdaterTest.java
index e5316ca4d6b..2334a2fe344 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingAlgorithmStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingAlgorithmStatementUpdaterTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.update.AlterShardingAlgorithmStatementUpdater;
import org.apache.shardingsphere.sharding.distsql.parser.segment.ShardingAlgorithmSegment;
@@ -45,14 +45,14 @@ import static org.mockito.Mockito.when;
@RunWith(MockitoJUnitRunner.class)
public final class AlterShardingAlgorithmStatementUpdaterTest {
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
-
private final AlterShardingAlgorithmStatementUpdater updater = new AlterShardingAlgorithmStatementUpdater();
+ @Mock(answer = Answers.RETURNS_DEEP_STUBS)
+ private ShardingSphereDatabase database;
+
@Before
public void before() {
- when(databaseMetaData.getDatabase().getName()).thenReturn("test");
+ when(database.getName()).thenReturn("test");
}
@Test(expected = DuplicateRuleException.class)
@@ -60,7 +60,7 @@ public final class AlterShardingAlgorithmStatementUpdaterTest {
Properties props = new Properties();
props.put("input_key", "input_value");
ShardingAlgorithmSegment algorithmSegment = new ShardingAlgorithmSegment("input_algorithm_name", new AlgorithmSegment("input_algorithm_name", props));
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(algorithmSegment, algorithmSegment), null);
+ updater.checkSQLStatement(database, createSQLStatement(algorithmSegment, algorithmSegment), null);
}
@Test(expected = RequiredAlgorithmMissedException.class)
@@ -70,7 +70,7 @@ public final class AlterShardingAlgorithmStatementUpdaterTest {
ShardingAlgorithmSegment algorithmSegment = new ShardingAlgorithmSegment("not_exist_algorithm_name", new AlgorithmSegment("input_algorithm_name", props));
ShardingRuleConfiguration shardingRuleConfig = new ShardingRuleConfiguration();
shardingRuleConfig.getShardingAlgorithms().put("exist_algorithm_name", new ShardingSphereAlgorithmConfiguration("hash_mod", props));
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(algorithmSegment), shardingRuleConfig);
+ updater.checkSQLStatement(database, createSQLStatement(algorithmSegment), shardingRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -80,7 +80,7 @@ public final class AlterShardingAlgorithmStatementUpdaterTest {
ShardingAlgorithmSegment algorithmSegment = new ShardingAlgorithmSegment("exist_algorithm_name", new AlgorithmSegment("input_algorithm_name", props));
ShardingRuleConfiguration ruleConfig = new ShardingRuleConfiguration();
ruleConfig.getShardingAlgorithms().put("exist_algorithm_name", new ShardingSphereAlgorithmConfiguration("invalid_algorithm", props));
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(algorithmSegment), ruleConfig);
+ updater.checkSQLStatement(database, createSQLStatement(algorithmSegment), ruleConfig);
}
@Test
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingBindingTableRulesStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingBindingTableRulesStatementUpdaterTest.java
index 646bef75cf8..9566ae1787f 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingBindingTableRulesStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingBindingTableRulesStatementUpdaterTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.update;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDefinitionViolationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.update.AlterShardingBindingTableRulesStatementUpdater;
@@ -40,27 +40,27 @@ import java.util.List;
public final class AlterShardingBindingTableRulesStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
private final AlterShardingBindingTableRulesStatementUpdater updater = new AlterShardingBindingTableRulesStatementUpdater();
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutCurrentRule() throws RuleDefinitionViolationException {
- updater.checkSQLStatement(databaseMetaData, createSQLStatement(), null);
+ updater.checkSQLStatement(database, createSQLStatement(), null);
}
@Test(expected = DuplicateRuleException.class)
public void assertCheckSQLStatementWithDuplicateTables() throws RuleDefinitionViolationException {
List<BindingTableRuleSegment> segments = Arrays.asList(new BindingTableRuleSegment("t_order,t_order_item"), new BindingTableRuleSegment("t_order,t_order_item"));
AlterShardingBindingTableRulesStatement statement = new AlterShardingBindingTableRulesStatement(segments);
- updater.checkSQLStatement(databaseMetaData, statement, createCurrentRuleConfiguration());
+ updater.checkSQLStatement(database, statement, createCurrentRuleConfiguration());
}
@Test(expected = DuplicateRuleException.class)
public void assertCheckSQLStatementWithDifferentCaseDuplicateTables() throws RuleDefinitionViolationException {
List<BindingTableRuleSegment> segments = Arrays.asList(new BindingTableRuleSegment("T_ORDER,T_ORDER_ITEM"), new BindingTableRuleSegment("t_order,t_order_item"));
AlterShardingBindingTableRulesStatement statement = new AlterShardingBindingTableRulesStatement(segments);
- updater.checkSQLStatement(databaseMetaData, statement, createCurrentRuleConfiguration());
+ updater.checkSQLStatement(database, statement, createCurrentRuleConfiguration());
}
private AlterShardingBindingTableRulesStatement createSQLStatement() {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingBroadcastTableRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingBroadcastTableRuleStatementUpdaterTest.java
index 57a41267621..a50e283ae59 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingBroadcastTableRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingBroadcastTableRuleStatementUpdaterTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.sharding.distsql.update;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RuleDefinitionViolationException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.distsql.handler.update.AlterShardingBroadcastTableRuleStatementUpdater;
import org.apache.shardingsphere.sharding.distsql.parser.statement.AlterShardingBroadcastTableRulesStatement;
import org.junit.Test;
@@ -35,7 +35,7 @@ public final class AlterShardingBroadcastTableRuleStatementUpdaterTest {
@Test(expected = RequiredRuleMissedException.class)
public void assertCheckSQLStatementWithoutCurrentRule() throws RuleDefinitionViolationException {
- updater.checkSQLStatement(mock(ShardingSphereDatabaseMetaData.class, RETURNS_DEEP_STUBS), createSQLStatement(), null);
+ updater.checkSQLStatement(mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS), createSQLStatement(), null);
}
private AlterShardingBroadcastTableRulesStatement createSQLStatement() {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingKeyGeneratorStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingKeyGeneratorStatementUpdaterTest.java
index d3c531ec371..db3895081e0 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingKeyGeneratorStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingKeyGeneratorStatementUpdaterTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredAlgorithmMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.update.AlterShardingKeyGeneratorStatementUpdater;
import org.apache.shardingsphere.sharding.distsql.parser.segment.ShardingKeyGeneratorSegment;
@@ -49,17 +49,17 @@ public final class AlterShardingKeyGeneratorStatementUpdaterTest {
private final AlterShardingKeyGeneratorStatementUpdater updater = new AlterShardingKeyGeneratorStatementUpdater();
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Before
public void before() {
- when(databaseMetaData.getDatabase().getName()).thenReturn("test");
+ when(database.getName()).thenReturn("test");
}
@Test(expected = DuplicateRuleException.class)
public void assertExecuteWithDuplicate() throws DistSQLException {
ShardingKeyGeneratorSegment keyGeneratorSegment = new ShardingKeyGeneratorSegment("input_key_generator_name", new AlgorithmSegment("snowflake", createProperties()));
- updater.checkSQLStatement(databaseMetaData, new AlterShardingKeyGeneratorStatement(Arrays.asList(keyGeneratorSegment, keyGeneratorSegment)), null);
+ updater.checkSQLStatement(database, new AlterShardingKeyGeneratorStatement(Arrays.asList(keyGeneratorSegment, keyGeneratorSegment)), null);
}
@Test(expected = RequiredAlgorithmMissedException.class)
@@ -68,7 +68,7 @@ public final class AlterShardingKeyGeneratorStatementUpdaterTest {
ShardingKeyGeneratorSegment keyGeneratorSegment = new ShardingKeyGeneratorSegment("not_exist_key_generator_name", new AlgorithmSegment("snowflake", props));
ShardingRuleConfiguration ruleConfig = new ShardingRuleConfiguration();
ruleConfig.getKeyGenerators().put("exist_key_generator_name", new ShardingSphereAlgorithmConfiguration("hash_mod", props));
- updater.checkSQLStatement(databaseMetaData, new AlterShardingKeyGeneratorStatement(Collections.singletonList(keyGeneratorSegment)), ruleConfig);
+ updater.checkSQLStatement(database, new AlterShardingKeyGeneratorStatement(Collections.singletonList(keyGeneratorSegment)), ruleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -77,7 +77,7 @@ public final class AlterShardingKeyGeneratorStatementUpdaterTest {
ShardingKeyGeneratorSegment keyGeneratorSegment = new ShardingKeyGeneratorSegment("exist_key_generator_name", new AlgorithmSegment("snowflake", props));
ShardingRuleConfiguration ruleConfig = new ShardingRuleConfiguration();
ruleConfig.getKeyGenerators().put("exist_key_generator_name", new ShardingSphereAlgorithmConfiguration("invalid_type", props));
- updater.checkSQLStatement(databaseMetaData, new AlterShardingKeyGeneratorStatement(Collections.singletonList(keyGeneratorSegment)), ruleConfig);
+ updater.checkSQLStatement(database, new AlterShardingKeyGeneratorStatement(Collections.singletonList(keyGeneratorSegment)), ruleConfig);
}
@Test
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingTableRuleStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingTableRuleStatementUpdaterTest.java
index 393eba65f0b..cf23ed26fbd 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingTableRuleStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingTableRuleStatementUpdaterTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.sharding.distsql.update;
import org.apache.shardingsphere.distsql.parser.segment.AlgorithmSegment;
import org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithmConfiguration;
import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
import org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
@@ -58,7 +58,7 @@ import static org.mockito.Mockito.when;
public final class AlterShardingTableRuleStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
@Mock
private ShardingSphereRuleMetaData shardingSphereRuleMetaData;
@@ -71,16 +71,16 @@ public final class AlterShardingTableRuleStatementUpdaterTest {
@Before
public void before() {
- when(databaseMetaData.getDatabase().getName()).thenReturn("schema");
- when(databaseMetaData.getResource()).thenReturn(shardingSphereResource);
- when(databaseMetaData.getRuleMetaData()).thenReturn(shardingSphereRuleMetaData);
+ when(database.getName()).thenReturn("schema");
+ when(database.getResource()).thenReturn(shardingSphereResource);
+ when(database.getRuleMetaData()).thenReturn(shardingSphereRuleMetaData);
when(shardingSphereRuleMetaData.getRules()).thenReturn(Collections.emptyList());
}
@Test
public void assertUpdate() throws DistSQLException {
AlterShardingTableRuleStatement statement = new AlterShardingTableRuleStatement(Arrays.asList(createCompleteAutoTableRule("t_order_item"), createCompleteTableRule("t_order")));
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
ShardingRuleConfiguration toBeAlteredRuleConfig = updater.buildToBeAlteredRuleConfiguration(statement);
updater.updateCurrentRuleConfiguration(currentRuleConfig, toBeAlteredRuleConfig);
assertThat(currentRuleConfig.getTables().size(), is(1));
@@ -105,7 +105,7 @@ public final class AlterShardingTableRuleStatementUpdaterTest {
@Test
public void assertUpdateWithDifferentCase() throws DistSQLException {
AlterShardingTableRuleStatement statement = new AlterShardingTableRuleStatement(Arrays.asList(createCompleteAutoTableRule("T_ORDER_ITEM"), createCompleteTableRule("T_ORDER")));
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
ShardingRuleConfiguration toBeAlteredRuleConfig = updater.buildToBeAlteredRuleConfiguration(statement);
updater.updateCurrentRuleConfiguration(currentRuleConfig, toBeAlteredRuleConfig);
assertThat(currentRuleConfig.getTables().size(), is(1));
@@ -130,7 +130,7 @@ public final class AlterShardingTableRuleStatementUpdaterTest {
@Test
public void assertUpdateTableType() throws DistSQLException {
AlterShardingTableRuleStatement statement = new AlterShardingTableRuleStatement(Arrays.asList(createCompleteAutoTableRule("t_order"), createCompleteTableRule("t_order_item")));
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
ShardingRuleConfiguration toBeAlteredRuleConfig = updater.buildToBeAlteredRuleConfiguration(statement);
updater.updateCurrentRuleConfiguration(currentRuleConfig, toBeAlteredRuleConfig);
assertThat(currentRuleConfig.getTables().size(), is(1));
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/CreateDefaultShardingStrategyStatementUpdaterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/CreateDefaultShardingStrategyStatementUpdaterTest.java
index c04a4eaca61..dad99fc626e 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/CreateDefaultShardingStrategyStatementUpdaterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/update/CreateDefaultShardingStrategyStatementUpdaterTest.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.distsql.exception.DistSQLException;
import org.apache.shardingsphere.infra.distsql.exception.rule.DuplicateRuleException;
import org.apache.shardingsphere.infra.distsql.exception.rule.InvalidAlgorithmConfigurationException;
import org.apache.shardingsphere.infra.distsql.exception.rule.RequiredRuleMissedException;
-import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabaseMetaData;
+import org.apache.shardingsphere.infra.metadata.ShardingSphereDatabase;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.StandardShardingStrategyConfiguration;
import org.apache.shardingsphere.sharding.distsql.handler.update.CreateDefaultShardingStrategyStatementUpdater;
@@ -44,24 +44,24 @@ import static org.mockito.Mockito.when;
public final class CreateDefaultShardingStrategyStatementUpdaterTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private ShardingSphereDatabaseMetaData databaseMetaData;
+ private ShardingSphereDatabase database;
private final CreateDefaultShardingStrategyStatementUpdater updater = new CreateDefaultShardingStrategyStatementUpdater();
@Before
public void before() {
- when(databaseMetaData.getDatabase().getName()).thenReturn("test");
+ when(database.getName()).thenReturn("test");
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
public void assertExecuteWithInvalidStrategyType() throws DistSQLException {
- updater.checkSQLStatement(databaseMetaData, new CreateDefaultShardingStrategyStatement("TABLE", "invalidType", null, "order_id_algorithm", null), new ShardingRuleConfiguration());
+ updater.checkSQLStatement(database, new CreateDefaultShardingStrategyStatement("TABLE", "invalidType", null, "order_id_algorithm", null), new ShardingRuleConfiguration());
}
@Test(expected = RequiredRuleMissedException.class)
public void assertExecuteWithoutCurrentConfiguration() throws DistSQLException {
CreateDefaultShardingStrategyStatement statement = new CreateDefaultShardingStrategyStatement("TABLE", "standard", "order_id", "order_id_algorithm", null);
- updater.checkSQLStatement(databaseMetaData, statement, null);
+ updater.checkSQLStatement(database, statement, null);
}
@Test(expected = DuplicateRuleException.class)
@@ -70,7 +70,7 @@ public final class CreateDefaultShardingStrategyStatementUpdaterTest {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.setDefaultTableShardingStrategy(new StandardShardingStrategyConfiguration("order_id", "orderAlgorithm"));
currentRuleConfig.getShardingAlgorithms().put("order_id_algorithm", null);
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
}
@Test(expected = InvalidAlgorithmConfigurationException.class)
@@ -79,7 +79,7 @@ public final class CreateDefaultShardingStrategyStatementUpdaterTest {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.setDefaultTableShardingStrategy(new StandardShardingStrategyConfiguration("order_id", "orderAlgorithm"));
currentRuleConfig.getShardingAlgorithms().put("order_id_algorithm", null);
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
}
@Test
@@ -88,7 +88,7 @@ public final class CreateDefaultShardingStrategyStatementUpdaterTest {
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
currentRuleConfig.setDefaultDatabaseShardingStrategy(new StandardShardingStrategyConfiguration("order_id", "orderAlgorithm"));
currentRuleConfig.getShardingAlgorithms().put("order_id_algorithm", null);
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
+ updater.checkSQLStatement(database, statement, currentRuleConfig);
ShardingRuleConfiguration toBeCreatedRuleConfig = updater.buildToBeCreatedRuleConfiguration(statement);
updater.updateCurrentRuleConfiguration(currentRuleConfig, toBeCreatedRuleConfig);
StandardShardingStrategyConfiguration defaultTableShardingStrategy = (StandardShardingStrategyConfiguration) currentRuleConfig.getDefaultTableShardingStrategy();
@@ -101,7 +101,7 @@ public final class CreateDefaultShardingStrategyStatementUpdaterTest {
AlgorithmSegment databaseAlgorithmSegment = getAutoCreativeAlgorithmSegment("inline", newProperties("algorithm-expression", "ds_${user_id% 2}"));
CreateDefaultShardingStrategyStatement statement = new CreateDefaultShardingStrategyStatement("DATABASE", "standard", "user_id", null, databaseAlgorithmSegment);
ShardingRuleConfiguration currentRuleConfig = new ShardingRuleConfiguration();
- updater.checkSQLStatement(databaseMetaData, statement, currentRuleConfig);
... 10334 lines suppressed ...