Skip to content

Commit

Permalink
Rename DataSourceProperties to DataSourcePoolProperties (#28041)
Browse files Browse the repository at this point in the history
  • Loading branch information
terrymanu committed Aug 11, 2023
1 parent 9821479 commit 0d62a4b
Show file tree
Hide file tree
Showing 96 changed files with 791 additions and 1,077 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
package org.apache.shardingsphere.infra.config.database;

import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourceProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolProperties;
import org.apache.shardingsphere.infra.datasource.storage.StorageResource;

import javax.sql.DataSource;
Expand Down Expand Up @@ -52,9 +52,9 @@ public interface DatabaseConfiguration {
StorageResource getStorageResource();

/**
* Get data source props map.
* Get data source pool properties map.
*
* @return data source props map
* @return data source pool properties map
*/
Map<String, DataSourceProperties> getDataSourcePropsMap();
Map<String, DataSourcePoolProperties> getDataSourcePoolPropertiesMap();
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@
import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
import org.apache.shardingsphere.infra.datasource.pool.config.DataSourceConfiguration;
import org.apache.shardingsphere.infra.datasource.pool.creator.DataSourcePoolCreator;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourceProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePropertiesCreator;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolPropertiesCreator;
import org.apache.shardingsphere.infra.datasource.storage.StorageResource;

import javax.sql.DataSource;
Expand All @@ -40,12 +40,12 @@ public final class DataSourceGeneratedDatabaseConfiguration implements DatabaseC

private final Collection<RuleConfiguration> ruleConfigurations;

private final Map<String, DataSourceProperties> dataSourcePropsMap;
private final Map<String, DataSourcePoolProperties> dataSourcePoolPropertiesMap;

public DataSourceGeneratedDatabaseConfiguration(final Map<String, DataSourceConfiguration> dataSourceConfigs, final Collection<RuleConfiguration> ruleConfigs) {
ruleConfigurations = ruleConfigs;
dataSourcePropsMap = DataSourcePropertiesCreator.createFromConfiguration(dataSourceConfigs);
this.storageResource = DataSourcePoolCreator.createStorageResource(dataSourcePropsMap);
dataSourcePoolPropertiesMap = DataSourcePoolPropertiesCreator.createFromConfiguration(dataSourceConfigs);
this.storageResource = DataSourcePoolCreator.createStorageResource(dataSourcePoolPropertiesMap);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,11 @@
package org.apache.shardingsphere.infra.config.database.impl;

import lombok.Getter;
import lombok.RequiredArgsConstructor;
import org.apache.shardingsphere.infra.config.database.DatabaseConfiguration;
import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourceProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePropertiesCreator;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolPropertiesCreator;
import org.apache.shardingsphere.infra.datasource.storage.StorageResource;
import org.apache.shardingsphere.infra.datasource.storage.StorageResourceUtils;

Expand All @@ -35,31 +36,25 @@
/**
* Data source provided database configuration.
*/
@RequiredArgsConstructor
@Getter
public final class DataSourceProvidedDatabaseConfiguration implements DatabaseConfiguration {

private final StorageResource storageResource;

private final Collection<RuleConfiguration> ruleConfigurations;

private final Map<String, DataSourceProperties> dataSourcePropsMap;
private final Map<String, DataSourcePoolProperties> dataSourcePoolPropertiesMap;

public DataSourceProvidedDatabaseConfiguration(final Map<String, DataSource> dataSources, final Collection<RuleConfiguration> ruleConfigurations) {
this.ruleConfigurations = ruleConfigurations;
this.storageResource = new StorageResource(StorageResourceUtils.getStorageNodeDataSources(dataSources), StorageResourceUtils.getStorageUnitNodeMappers(dataSources));
dataSourcePropsMap = createDataSourcePropertiesMap(dataSources);
dataSourcePoolPropertiesMap = createDataSourcePoolPropertiesMap(dataSources);
}

public DataSourceProvidedDatabaseConfiguration(final StorageResource storageResource, final Collection<RuleConfiguration> ruleConfigurations,
final Map<String, DataSourceProperties> dataSourcePropsMap) {
this.ruleConfigurations = ruleConfigurations;
this.storageResource = storageResource;
this.dataSourcePropsMap = dataSourcePropsMap;
}

private Map<String, DataSourceProperties> createDataSourcePropertiesMap(final Map<String, DataSource> dataSources) {
private Map<String, DataSourcePoolProperties> createDataSourcePoolPropertiesMap(final Map<String, DataSource> dataSources) {
return dataSources.entrySet().stream().collect(Collectors
.toMap(Entry::getKey, entry -> DataSourcePropertiesCreator.create(entry.getValue()), (oldValue, currentValue) -> oldValue, LinkedHashMap::new));
.toMap(Entry::getKey, entry -> DataSourcePoolPropertiesCreator.create(entry.getValue()), (oldValue, currentValue) -> oldValue, LinkedHashMap::new));
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
package org.apache.shardingsphere.infra.instance.mode;

import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourceProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolProperties;
import org.apache.shardingsphere.infra.metadata.database.schema.pojo.AlterSchemaMetaDataPOJO;
import org.apache.shardingsphere.infra.metadata.database.schema.pojo.AlterSchemaPOJO;
import org.apache.shardingsphere.infra.metadata.version.MetaDataVersion;
Expand Down Expand Up @@ -82,19 +82,19 @@ public interface ModeContextManager {
* Register storage units.
*
* @param databaseName database name
* @param toBeRegisterStorageUnitProps to be register storage unit props
* @param toBeRegisteredProps to be registered storage unit properties
* @throws SQLException SQL exception
*/
void registerStorageUnits(String databaseName, Map<String, DataSourceProperties> toBeRegisterStorageUnitProps) throws SQLException;
void registerStorageUnits(String databaseName, Map<String, DataSourcePoolProperties> toBeRegisteredProps) throws SQLException;

/**
* Alter storage units.
*
* @param databaseName database name
* @param toBeUpdatedStorageUnitProps to be updated storage unit props
* @param toBeUpdatedProps to be updated storage unit properties
* @throws SQLException SQL exception
*/
void alterStorageUnits(String databaseName, Map<String, DataSourceProperties> toBeUpdatedStorageUnitProps) throws SQLException;
void alterStorageUnits(String databaseName, Map<String, DataSourcePoolProperties> toBeUpdatedProps) throws SQLException;

/**
* Unregister storage units.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeRegistry;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourceProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolProperties;
import org.apache.shardingsphere.infra.datasource.storage.StorageResource;
import org.apache.shardingsphere.infra.instance.InstanceContext;
import org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
Expand Down Expand Up @@ -118,14 +118,13 @@ public static ShardingSphereDatabase create(final String name, final DatabaseTyp
*/
public static ShardingSphereDatabase create(final String name, final DatabaseType protocolType, final DatabaseConfiguration databaseConfig,
final Collection<ShardingSphereRule> rules, final Map<String, ShardingSphereSchema> schemas) {
ResourceMetaData resourceMetaData = createResourceMetaData(name, databaseConfig.getStorageResource(), databaseConfig.getDataSourcePropsMap());
ResourceMetaData resourceMetaData = createResourceMetaData(name, databaseConfig.getStorageResource(), databaseConfig.getDataSourcePoolPropertiesMap());
RuleMetaData ruleMetaData = new RuleMetaData(rules);
return new ShardingSphereDatabase(name, protocolType, resourceMetaData, ruleMetaData, schemas);
}

private static ResourceMetaData createResourceMetaData(final String databaseName, final StorageResource storageResource,
final Map<String, DataSourceProperties> dataSourcePropsMap) {
return new ResourceMetaData(databaseName, storageResource, dataSourcePropsMap);
private static ResourceMetaData createResourceMetaData(final String databaseName, final StorageResource storageResource, final Map<String, DataSourcePoolProperties> propsMap) {
return new ResourceMetaData(databaseName, storageResource, propsMap);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@
import org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.datasource.pool.destroyer.DataSourcePoolDestroyer;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourceProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePropertiesCreator;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolPropertiesCreator;
import org.apache.shardingsphere.infra.datasource.storage.StorageNode;
import org.apache.shardingsphere.infra.datasource.storage.StorageResource;
import org.apache.shardingsphere.infra.datasource.storage.StorageResourceUtils;
Expand Down Expand Up @@ -51,12 +51,12 @@ public ResourceMetaData(final Map<String, DataSource> dataSources) {
public ResourceMetaData(final String databaseName, final Map<String, DataSource> dataSources) {
storageNodeDataSources = StorageResourceUtils.getStorageNodeDataSources(dataSources);
storageUnitMetaData = new StorageUnitMetaData(databaseName, storageNodeDataSources,
DataSourcePropertiesCreator.create(dataSources), StorageResourceUtils.getStorageUnitNodeMappers(dataSources));
DataSourcePoolPropertiesCreator.create(dataSources), StorageResourceUtils.getStorageUnitNodeMappers(dataSources));
}

public ResourceMetaData(final String databaseName, final StorageResource storageResource, final Map<String, DataSourceProperties> dataSourcePropsMap) {
public ResourceMetaData(final String databaseName, final StorageResource storageResource, final Map<String, DataSourcePoolProperties> propsMap) {
storageNodeDataSources = storageResource.getStorageNodeDataSources();
storageUnitMetaData = new StorageUnitMetaData(databaseName, storageNodeDataSources, dataSourcePropsMap, storageResource.getStorageUnitNodeMappers());
storageUnitMetaData = new StorageUnitMetaData(databaseName, storageNodeDataSources, propsMap, storageResource.getStorageUnitNodeMappers());
}

/**
Expand Down Expand Up @@ -84,7 +84,7 @@ public Map<String, DatabaseType> getStorageTypes() {
*/
public Collection<String> getAllInstanceDataSourceNames() {
Collection<String> result = new LinkedList<>();
for (Entry<String, ConnectionProperties> entry : storageUnitMetaData.getConnectionPropsMap().entrySet()) {
for (Entry<String, ConnectionProperties> entry : storageUnitMetaData.getConnectionPropertiesMap().entrySet()) {
if (!isExisted(entry.getKey(), result)) {
result.add(entry.getKey());
}
Expand All @@ -93,8 +93,8 @@ public Collection<String> getAllInstanceDataSourceNames() {
}

private boolean isExisted(final String dataSourceName, final Collection<String> existedDataSourceNames) {
return existedDataSourceNames.stream().anyMatch(each -> storageUnitMetaData.getConnectionPropsMap().get(dataSourceName)
.isInSameDatabaseInstance(storageUnitMetaData.getConnectionPropsMap().get(each)));
return existedDataSourceNames.stream().anyMatch(each -> storageUnitMetaData.getConnectionPropertiesMap().get(dataSourceName)
.isInSameDatabaseInstance(storageUnitMetaData.getConnectionPropertiesMap().get(each)));
}

/**
Expand All @@ -104,7 +104,7 @@ private boolean isExisted(final String dataSourceName, final Collection<String>
* @return connection properties
*/
public ConnectionProperties getConnectionProperties(final String dataSourceName) {
return storageUnitMetaData.getConnectionPropsMap().get(dataSourceName);
return storageUnitMetaData.getConnectionPropertiesMap().get(dataSourceName);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@
import org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.datasource.CatalogSwitchableDataSource;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourceProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePropertiesCreator;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolProperties;
import org.apache.shardingsphere.infra.datasource.pool.props.DataSourcePoolPropertiesCreator;
import org.apache.shardingsphere.infra.datasource.storage.StorageNode;
import org.apache.shardingsphere.infra.datasource.storage.StorageUnitNodeMapper;
import org.apache.shardingsphere.infra.state.datasource.DataSourceStateManager;
Expand All @@ -45,22 +45,22 @@ public final class StorageUnitMetaData {

private final Map<String, DataSource> dataSources;

private final Map<String, DataSourceProperties> dataSourcePropsMap;
private final Map<String, DataSourcePoolProperties> dataSourcePoolPropertiesMap;

private final Map<String, DatabaseType> storageTypes;

private final Map<String, StorageUnitNodeMapper> unitNodeMappers;

private final Map<String, ConnectionProperties> connectionPropsMap;
private final Map<String, ConnectionProperties> connectionPropertiesMap;

public StorageUnitMetaData(final String databaseName, final Map<StorageNode, DataSource> storageNodeDataSources,
final Map<String, DataSourceProperties> dataSourcePropsMap, final Map<String, StorageUnitNodeMapper> unitNodeMappers) {
final Map<String, DataSourcePoolProperties> dataSourcePoolPropertiesMap, final Map<String, StorageUnitNodeMapper> unitNodeMappers) {
this.unitNodeMappers = unitNodeMappers;
this.dataSources = getStorageUnitDataSources(storageNodeDataSources, unitNodeMappers);
this.dataSourcePropsMap = dataSourcePropsMap;
this.dataSourcePoolPropertiesMap = dataSourcePoolPropertiesMap;
Map<StorageNode, DataSource> enabledStorageNodeDataSources = getEnabledStorageNodeDataSources(databaseName, storageNodeDataSources);
storageTypes = createStorageTypes(enabledStorageNodeDataSources, unitNodeMappers);
connectionPropsMap = createConnectionPropertiesMap(enabledStorageNodeDataSources, storageTypes, unitNodeMappers);
connectionPropertiesMap = createConnectionPropertiesMap(enabledStorageNodeDataSources, storageTypes, unitNodeMappers);
}

private Map<StorageNode, DataSource> getEnabledStorageNodeDataSources(final String databaseName, final Map<StorageNode, DataSource> storageNodeDataSources) {
Expand Down Expand Up @@ -97,7 +97,7 @@ private Map<String, ConnectionProperties> createConnectionPropertiesMap(final Ma
Map<String, ConnectionProperties> result = new LinkedHashMap<>(unitNodeMappers.size(), 1F);
for (Entry<String, StorageUnitNodeMapper> entry : unitNodeMappers.entrySet()) {
if (enabledStorageNodeDataSources.containsKey(entry.getValue().getStorageNode())) {
Map<String, Object> standardProps = DataSourcePropertiesCreator.create(enabledStorageNodeDataSources.get(entry.getValue().getStorageNode()))
Map<String, Object> standardProps = DataSourcePoolPropertiesCreator.create(enabledStorageNodeDataSources.get(entry.getValue().getStorageNode()))
.getConnectionPropertySynonyms().getStandardProperties();
DatabaseType storageType = storageTypes.get(entry.getKey());
ConnectionPropertiesParser parser = DatabaseTypedSPILoader.getService(ConnectionPropertiesParser.class, storageType);
Expand Down
Loading

0 comments on commit 0d62a4b

Please sign in to comment.