1
0
AE86 3 жил өмнө
parent
commit
763f95e61a

+ 3 - 2
dbsyncer-connector/src/main/java/org/dbsyncer/connector/config/WriterBatchConfig.java

@@ -10,10 +10,11 @@ public class WriterBatchConfig extends WriterConfig {
      */
     private List<Map> data;
 
-    public WriterBatchConfig(Map<String, String> command, List<Field> fields, List<Map> data) {
+    public WriterBatchConfig(String event, Map<String, String> command, List<Field> fields, List<Map> data) {
+        setEvent(event);
         setCommand(command);
         setFields(fields);
-        setData(data);
+        this.data = data;
     }
 
     public List<Map> getData() {

+ 12 - 0
dbsyncer-connector/src/main/java/org/dbsyncer/connector/config/WriterConfig.java

@@ -5,6 +5,10 @@ import java.util.Map;
 
 public class WriterConfig {
 
+    /**
+     * 事件
+     */
+    private String event;
     /**
      * 执行命令
      */
@@ -14,6 +18,14 @@ public class WriterConfig {
      */
     private List<Field> fields;
 
+    public String getEvent() {
+        return event;
+    }
+
+    public void setEvent(String event) {
+        this.event = event;
+    }
+
     public Map<String, String> getCommand() {
         return command;
     }

+ 3 - 17
dbsyncer-connector/src/main/java/org/dbsyncer/connector/config/WriterSingleConfig.java

@@ -10,11 +10,6 @@ public class WriterSingleConfig extends WriterConfig {
      */
     private Map<String, Object> data;
 
-    /**
-     * 事件
-     */
-    private String event;
-
     /**
      * 表名
      */
@@ -31,11 +26,11 @@ public class WriterSingleConfig extends WriterConfig {
     private boolean forceUpdate;
 
     public WriterSingleConfig(List<Field> fields, Map<String, String> command, String event, Map<String, Object> data, String table, boolean forceUpdate) {
+        setEvent(event);
         setCommand(command);
         setFields(fields);
-        setData(data);
-        setEvent(event);
-        setTable(table);
+        this.data = data;
+        this.table = table;
         this.forceUpdate = forceUpdate;
     }
 
@@ -48,15 +43,6 @@ public class WriterSingleConfig extends WriterConfig {
         return this;
     }
 
-    public String getEvent() {
-        return event;
-    }
-
-    public WriterSingleConfig setEvent(String event) {
-        this.event = event;
-        return this;
-    }
-
     public String getTable() {
         return table;
     }

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

@@ -396,11 +396,13 @@ public class ParserFactory implements Parser {
      * @return
      */
     private Result writeBatch(ConnectorMapper connectorMapper, Map<String, String> command, List<Field> fields, List<Map> target, int batchSize) {
+        // 事件
+        String event = ConnectorConstant.OPERTION_INSERT;
         // 总数
         int total = target.size();
         // 单次任务
         if (total <= batchSize) {
-            return connectorFactory.writer(connectorMapper, new WriterBatchConfig(command, fields, target));
+            return connectorFactory.writer(connectorMapper, new WriterBatchConfig(event, command, fields, target));
         }
 
         // 批量任务, 拆分
@@ -423,7 +425,7 @@ public class ParserFactory implements Parser {
 
             taskExecutor.execute(() -> {
                 try {
-                    Result w = connectorFactory.writer(connectorMapper, new WriterBatchConfig(command, fields, data));
+                    Result w = connectorFactory.writer(connectorMapper, new WriterBatchConfig(event, command, fields, data));
                     // CAS
                     result.getFailData().addAll(w.getFailData());
                     result.getFail().getAndAdd(w.getFail().get());

+ 2 - 1
dbsyncer-storage/src/main/java/org/dbsyncer/storage/support/MysqlStorageServiceImpl.java

@@ -6,6 +6,7 @@ import org.dbsyncer.common.util.StringUtil;
 import org.dbsyncer.connector.ConnectorFactory;
 import org.dbsyncer.connector.ConnectorMapper;
 import org.dbsyncer.connector.config.*;
+import org.dbsyncer.connector.constant.ConnectorConstant;
 import org.dbsyncer.connector.constant.DatabaseConstant;
 import org.dbsyncer.connector.database.Database;
 import org.dbsyncer.connector.database.DatabaseConnectorMapper;
@@ -176,7 +177,7 @@ public class MysqlStorageServiceImpl extends AbstractStorageService {
             Map<String, String> command = new HashMap<>();
             command.put(SqlBuilderEnum.INSERT.getName(), executor.getInsert());
             ConnectorMapper connectorMapper = connectorFactory.connect(config);
-            connectorFactory.writer(connectorMapper, new WriterBatchConfig(command, executor.getFields(), list));
+            connectorFactory.writer(connectorMapper, new WriterBatchConfig(ConnectorConstant.OPERTION_INSERT, command, executor.getFields(), list));
         }
 
     }