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

zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 0cfa3a6a7ea Refactor CreateSchemaPushDownMetaDataRefresher (#34527)
0cfa3a6a7ea is described below

commit 0cfa3a6a7ead1eecbf5fd19a35219532b94ad8f1
Author: Liang Zhang <zhangli...@apache.org>
AuthorDate: Wed Jan 29 11:39:02 2025 +0800

    Refactor CreateSchemaPushDownMetaDataRefresher (#34527)
---
 .../type/schema/CreateSchemaPushDownMetaDataRefresher.java       | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git 
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/refresher/metadata/pushdown/type/schema/CreateSchemaPushDownMetaDataRefresher.java
 
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/refresher/metadata/pushdown/type/schema/CreateSchemaPushDownMetaDataRefresher.java
index cb2f9dd8103..57ed9b87bd4 100644
--- 
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/refresher/metadata/pushdown/type/schema/CreateSchemaPushDownMetaDataRefresher.java
+++ 
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/refresher/metadata/pushdown/type/schema/CreateSchemaPushDownMetaDataRefresher.java
@@ -23,8 +23,10 @@ import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
 import 
org.apache.shardingsphere.mode.metadata.refresher.metadata.pushdown.PushDownMetaDataRefresher;
 import 
org.apache.shardingsphere.mode.persist.service.MetaDataManagerPersistService;
 import 
org.apache.shardingsphere.sql.parser.statement.core.statement.ddl.CreateSchemaStatement;
+import 
org.apache.shardingsphere.sql.parser.statement.core.value.identifier.IdentifierValue;
 
 import java.util.Collection;
+import java.util.Optional;
 
 /**
  * Create schema push down meta data refresher.
@@ -34,8 +36,11 @@ public final class CreateSchemaPushDownMetaDataRefresher 
implements PushDownMeta
     @Override
     public void refresh(final MetaDataManagerPersistService 
metaDataManagerPersistService, final ShardingSphereDatabase database, final 
Collection<String> logicDataSourceNames,
                         final String schemaName, final DatabaseType 
databaseType, final CreateSchemaStatement sqlStatement, final 
ConfigurationProperties props) {
-        (sqlStatement.getSchemaName().isPresent() ? 
sqlStatement.getSchemaName() : sqlStatement.getUsername())
-                .ifPresent(optional -> 
metaDataManagerPersistService.createSchema(database.getName(), 
optional.getValue().toLowerCase()));
+        getSchemaName(sqlStatement).ifPresent(optional -> 
metaDataManagerPersistService.createSchema(database.getName(), 
optional.getValue().toLowerCase()));
+    }
+    
+    private static Optional<IdentifierValue> getSchemaName(final 
CreateSchemaStatement sqlStatement) {
+        return sqlStatement.getSchemaName().isPresent() ? 
sqlStatement.getSchemaName() : sqlStatement.getUsername();
     }
     
     @Override

Reply via email to