Browse Source

rename connector enum

AE86 1 year ago
parent
commit
5abe9c60df

+ 5 - 7
dbsyncer-biz/src/main/java/org/dbsyncer/biz/checker/impl/connector/ConnectorChecker.java

@@ -16,10 +16,10 @@ import org.dbsyncer.parser.model.Connector;
 import org.dbsyncer.storage.constant.ConfigConstant;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.util.Assert;
 
+import javax.annotation.Resource;
 import java.util.List;
 import java.util.Map;
 
@@ -33,13 +33,13 @@ public class ConnectorChecker extends AbstractChecker {
 
     private final Logger logger = LoggerFactory.getLogger(getClass());
 
-    @Autowired
+    @Resource
     private Manager manager;
 
-    @Autowired
+    @Resource
     private LogService logService;
 
-    @Autowired
+    @Resource
     private Map<String, ConnectorConfigChecker> map;
 
     @Override
@@ -95,10 +95,8 @@ public class ConnectorChecker extends AbstractChecker {
     }
 
     private AbstractConnectorConfig getConfig(String connectorType) {
-        Class<AbstractConnectorConfig> configClass = (Class<AbstractConnectorConfig>) ConnectorEnum.getConfigClass(connectorType);
-        Assert.notNull(configClass, String.format("不支持该连接器类型:%s", connectorType));
         try {
-            AbstractConnectorConfig config = configClass.newInstance();
+            AbstractConnectorConfig config = ConnectorEnum.getConnectorEnum(connectorType).getConfigClass().newInstance();
             config.setConnectorType(connectorType);
             return config;
         } catch (Exception e) {

+ 1 - 1
dbsyncer-biz/src/main/java/org/dbsyncer/biz/checker/impl/connector/DqlMysqlConfigChecker.java → dbsyncer-biz/src/main/java/org/dbsyncer/biz/checker/impl/connector/DqlMySQLConfigChecker.java

@@ -11,7 +11,7 @@ import java.util.Map;
  * @date 2020/1/8 15:17
  */
 @Component
-public class DqlMysqlConfigChecker extends AbstractDataBaseConfigChecker {
+public class DqlMySQLConfigChecker extends AbstractDataBaseConfigChecker {
 
     @Override
     public void modify(DatabaseConfig connectorConfig, Map<String, String> params) {

+ 1 - 1
dbsyncer-biz/src/main/java/org/dbsyncer/biz/checker/impl/connector/MysqlConfigChecker.java → dbsyncer-biz/src/main/java/org/dbsyncer/biz/checker/impl/connector/MySQLConfigChecker.java

@@ -8,6 +8,6 @@ import org.springframework.stereotype.Component;
  * @date 2020/1/8 15:17
  */
 @Component
-public class MysqlConfigChecker extends AbstractDataBaseConfigChecker {
+public class MySQLConfigChecker extends AbstractDataBaseConfigChecker {
 
 }

+ 2 - 1
dbsyncer-biz/src/main/java/org/dbsyncer/biz/checker/impl/group/ProjectGroupChecker.java

@@ -11,6 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.util.Assert;
 
+import javax.annotation.Resource;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.Map;
@@ -23,7 +24,7 @@ import java.util.Map;
 @Component
 public class ProjectGroupChecker extends AbstractChecker {
 
-    @Autowired
+    @Resource
     private Manager manager;
 
     /**

+ 9 - 5
dbsyncer-biz/src/main/java/org/dbsyncer/biz/checker/impl/mapping/MappingChecker.java

@@ -3,7 +3,11 @@ package org.dbsyncer.biz.checker.impl.mapping;
 import org.dbsyncer.biz.checker.AbstractChecker;
 import org.dbsyncer.biz.checker.MappingConfigChecker;
 import org.dbsyncer.biz.checker.impl.tablegroup.TableGroupChecker;
-import org.dbsyncer.common.util.*;
+import org.dbsyncer.common.util.BooleanUtil;
+import org.dbsyncer.common.util.CollectionUtils;
+import org.dbsyncer.common.util.JsonUtil;
+import org.dbsyncer.common.util.NumberUtil;
+import org.dbsyncer.common.util.StringUtil;
 import org.dbsyncer.listener.config.ListenerConfig;
 import org.dbsyncer.listener.enums.ListenerTypeEnum;
 import org.dbsyncer.manager.Manager;
@@ -15,10 +19,10 @@ import org.dbsyncer.parser.model.TableGroup;
 import org.dbsyncer.storage.constant.ConfigConstant;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.util.Assert;
 
+import javax.annotation.Resource;
 import java.time.Instant;
 import java.util.HashMap;
 import java.util.List;
@@ -36,13 +40,13 @@ public class MappingChecker extends AbstractChecker {
 
     private final Logger logger = LoggerFactory.getLogger(getClass());
 
-    @Autowired
+    @Resource
     private Manager manager;
 
-    @Autowired
+    @Resource
     private TableGroupChecker tableGroupChecker;
 
-    @Autowired
+    @Resource
     private Map<String, MappingConfigChecker> map;
 
     @Override

+ 3 - 3
dbsyncer-biz/src/main/java/org/dbsyncer/biz/checker/impl/tablegroup/TableGroupChecker.java

@@ -20,10 +20,10 @@ import org.dbsyncer.parser.util.PickerUtil;
 import org.dbsyncer.storage.constant.ConfigConstant;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.util.Assert;
 
+import javax.annotation.Resource;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.HashMap;
@@ -44,10 +44,10 @@ public class TableGroupChecker extends AbstractChecker {
 
     private final Logger logger = LoggerFactory.getLogger(getClass());
 
-    @Autowired
+    @Resource
     private Manager manager;
 
-    @Autowired
+    @Resource
     private Map<String, ConnectorConfigChecker> map;
 
     @Override

+ 1 - 3
dbsyncer-connector/src/main/java/org/dbsyncer/connector/ConnectorFactory.java

@@ -182,9 +182,7 @@ public class ConnectorFactory implements DisposableBean {
      * @return
      */
     private Connector getConnector(String connectorType) {
-        // 获取连接器类型
-        Assert.hasText(connectorType, "ConnectorType can not be empty.");
-        return ConnectorEnum.getConnector(connectorType);
+        return ConnectorEnum.getConnectorEnum(connectorType).getConnector();
     }
 
     /**

+ 12 - 27
dbsyncer-connector/src/main/java/org/dbsyncer/connector/enums/ConnectorEnum.java

@@ -1,5 +1,6 @@
 package org.dbsyncer.connector.enums;
 
+import org.dbsyncer.common.model.AbstractConnectorConfig;
 import org.dbsyncer.common.util.StringUtil;
 import org.dbsyncer.connector.Connector;
 import org.dbsyncer.connector.ConnectorException;
@@ -29,9 +30,9 @@ import org.dbsyncer.connector.sqlserver.SqlServerConnector;
 public enum ConnectorEnum {
 
     /**
-     * Mysql 连接器
+     * MySQL 连接器
      */
-    MYSQL("Mysql", new MysqlConnector(), DatabaseConfig.class),
+    MYSQL("MySQL", new MysqlConnector(), DatabaseConfig.class),
     /**
      * Oracle 连接器
      */
@@ -57,9 +58,9 @@ public enum ConnectorEnum {
      */
     FILE("File", new FileConnector(), FileConfig.class),
     /**
-     * DqlMysql 连接器
+     * DqlMySQL 连接器
      */
-    DQL_MYSQL("DqlMysql", new DQLMysqlConnector(), DatabaseConfig.class),
+    DQL_MYSQL("DqlMySQL", new DQLMysqlConnector(), DatabaseConfig.class),
     /**
      * DqlOracle 连接器
      */
@@ -80,41 +81,25 @@ public enum ConnectorEnum {
     private Connector connector;
 
     // 配置
-    private Class<?> configClass;
+    private Class<? extends AbstractConnectorConfig> configClass;
 
-    ConnectorEnum(String type, Connector connector, Class<?> configClass) {
+    ConnectorEnum(String type, Connector connector, Class<? extends AbstractConnectorConfig> configClass) {
         this.type = type;
         this.connector = connector;
         this.configClass = configClass;
     }
 
     /**
-     * 获取连接
+     * 获取连接枚举
      *
      * @param type
      * @return
      * @throws ConnectorException
      */
-    public static Connector getConnector(String type) throws ConnectorException {
+    public static ConnectorEnum getConnectorEnum(String type) throws ConnectorException {
         for (ConnectorEnum e : ConnectorEnum.values()) {
-            if (StringUtil.equals(type, e.getType())) {
-                return e.getConnector();
-            }
-        }
-        throw new ConnectorException(String.format("Connector type \"%s\" does not exist.", type));
-    }
-
-    /**
-     * 获取连接配置
-     *
-     * @param type
-     * @return
-     * @throws ConnectorException
-     */
-    public static Class<?> getConfigClass(String type) throws ConnectorException {
-        for (ConnectorEnum e : ConnectorEnum.values()) {
-            if (StringUtil.equals(type, e.getType())) {
-                return e.getConfigClass();
+            if (StringUtil.equalsIgnoreCase(type, e.getType())) {
+                return e;
             }
         }
         throw new ConnectorException(String.format("Connector type \"%s\" does not exist.", type));
@@ -128,7 +113,7 @@ public enum ConnectorEnum {
         return connector;
     }
 
-    public Class<?> getConfigClass() {
+    public Class<? extends AbstractConnectorConfig> getConfigClass() {
         return configClass;
     }
 }

+ 3 - 2
dbsyncer-parser/src/main/java/org/dbsyncer/parser/ParserFactory.java

@@ -181,8 +181,9 @@ public class ParserFactory implements Parser {
         Connector connector = JsonUtil.jsonToObj(conn.toString(), Connector.class);
         Assert.notNull(connector, "Connector can not be null.");
         String connectorType = (String) config.get("connectorType");
-        Class<?> configClass = ConnectorEnum.getConfigClass(connectorType);
-        AbstractConnectorConfig obj = (AbstractConnectorConfig) JsonUtil.jsonToObj(config.toString(), configClass);
+        ConnectorEnum connectorEnum = ConnectorEnum.getConnectorEnum(connectorType);
+        AbstractConnectorConfig obj = JsonUtil.jsonToObj(config.toString(), connectorEnum.getConfigClass());
+        obj.setConnectorType(connectorEnum.getType());
         connector.setConfig(obj);
 
         return connector;

+ 0 - 0
dbsyncer-web/src/main/resources/static/img/DqlMysql.png → dbsyncer-web/src/main/resources/static/img/DqlMySQL.png


+ 0 - 0
dbsyncer-web/src/main/resources/static/img/Mysql.png → dbsyncer-web/src/main/resources/static/img/MySQL.png