27
27
import org .apache .shardingsphere .proxy .backend .distsql .export .ExportedMetaData ;
28
28
29
29
import java .util .Collection ;
30
- import java .util .LinkedList ;
30
+ import java .util .LinkedHashMap ;
31
+ import java .util .Map ;
32
+ import java .util .Map .Entry ;
31
33
32
34
/**
33
35
* Metadata import executor.
@@ -52,13 +54,13 @@ public MetaDataImportExecutor(final ContextManager contextManager) {
52
54
* @param exportedMetaData exported metadata
53
55
*/
54
56
public void importClusterConfigurations (final ExportedMetaData exportedMetaData ) {
55
- Collection <YamlProxyDatabaseConfiguration > databaseConfigs = getYamlProxyDatabaseConfigurations (exportedMetaData );
56
- importServerConfiguration (exportedMetaData );
57
- importDatabaseConfigurations (databaseConfigs );
57
+ Map <String , YamlProxyDatabaseConfiguration > databaseConfigs = getYamlProxyDatabaseConfigurations (exportedMetaData );
58
+ YamlProxyServerConfiguration yamlServerConfig = getYamlServerConfig (exportedMetaData );
59
+ importServerConfiguration (yamlServerConfig );
60
+ importDatabaseConfigurations (databaseConfigs .values ());
58
61
}
59
62
60
- private void importServerConfiguration (final ExportedMetaData exportedMetaData ) {
61
- YamlProxyServerConfiguration yamlServerConfig = YamlEngine .unmarshal (exportedMetaData .getRules () + System .lineSeparator () + exportedMetaData .getProps (), YamlProxyServerConfiguration .class );
63
+ private void importServerConfiguration (final YamlProxyServerConfiguration yamlServerConfig ) {
62
64
if (null == yamlServerConfig ) {
63
65
return ;
64
66
}
@@ -77,14 +79,18 @@ private void importProps(final YamlProxyServerConfiguration yamlServerConfig) {
77
79
contextManager .getPersistServiceFacade ().getModePersistServiceFacade ().getMetaDataManagerPersistService ().alterProperties (yamlServerConfig .getProps ());
78
80
}
79
81
80
- private Collection < YamlProxyDatabaseConfiguration > getYamlProxyDatabaseConfigurations (final ExportedMetaData exportedMetaData ) {
81
- Collection < YamlProxyDatabaseConfiguration > result = new LinkedList <>();
82
- for (String each : exportedMetaData .getDatabases ().values ()) {
83
- result .add ( YamlEngine .unmarshal (each , YamlProxyDatabaseConfiguration .class ));
82
+ private Map < String , YamlProxyDatabaseConfiguration > getYamlProxyDatabaseConfigurations (final ExportedMetaData exportedMetaData ) {
83
+ Map < String , YamlProxyDatabaseConfiguration > result = new LinkedHashMap <>();
84
+ for (Entry < String , String > entry : exportedMetaData .getDatabases ().entrySet ()) {
85
+ result .put ( entry . getKey (), YamlEngine .unmarshal (entry . getValue () , YamlProxyDatabaseConfiguration .class ));
84
86
}
85
87
return result ;
86
88
}
87
89
90
+ private YamlProxyServerConfiguration getYamlServerConfig (final ExportedMetaData exportedMetaData ) {
91
+ return YamlEngine .unmarshal (exportedMetaData .getRules () + System .lineSeparator () + exportedMetaData .getProps (), YamlProxyServerConfiguration .class );
92
+ }
93
+
88
94
/**
89
95
* Import database configurations.
90
96
*
0 commit comments