Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/3.8' into 3.9
Browse files Browse the repository at this point in the history
Conflicts:
	symmetric-client/src/main/java/org/jumpmind/symmetric/io/MsSqlBulkDatabaseWriter.java
	symmetric-client/src/main/java/org/jumpmind/symmetric/io/MySqlBulkDatabaseWriter.java
	symmetric-client/src/main/java/org/jumpmind/symmetric/io/PostgresBulkDatabaseWriter.java
	symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/MultiBatchStagingWriter.java
  • Loading branch information
chenson42 committed Jun 19, 2017
2 parents 0fda24c + e542859 commit 46a1195
Show file tree
Hide file tree
Showing 14 changed files with 475 additions and 328 deletions.
2 changes: 1 addition & 1 deletion symmetric-assemble/common.gradle
Expand Up @@ -183,7 +183,7 @@ subprojects { subproject ->
jdomVersion = '2.0.5'
junitVersion = '4.11'
log4jVersion = '1.2.17'
slf4jVersion = '1.7.7'
slf4jVersion = '1.7.21'
mockitoVersion = '1.9.5'
powerMockVersion = '1.5.3'
mysqlVersion = '5.1.30'
Expand Down
@@ -0,0 +1,42 @@
package org.jumpmind.symmetric.io;

import org.jumpmind.db.platform.IDatabasePlatform;
import org.jumpmind.symmetric.io.data.Batch;
import org.jumpmind.symmetric.io.data.CsvData;
import org.jumpmind.symmetric.io.data.writer.DatabaseWriterSettings;
import org.jumpmind.symmetric.io.data.writer.DefaultDatabaseWriter;
import org.jumpmind.symmetric.model.IncomingBatch;

public abstract class AbstractBulkDatabaseWriter extends DefaultDatabaseWriter{

protected boolean useDefaultDataWriter;

public AbstractBulkDatabaseWriter(IDatabasePlatform platform){
super(platform);
}

public AbstractBulkDatabaseWriter(IDatabasePlatform platform, DatabaseWriterSettings settings) {
super(platform, settings);
}

public final void write(CsvData data) {
if (useDefaultDataWriter) {
writeDefault(data);
}else{
bulkWrite(data);
}
}

protected final void writeDefault(CsvData data) {
super.write(data);
}

protected abstract void bulkWrite(CsvData data);

@Override
public void start(Batch batch) {
super.start(batch);
IncomingBatch currentBatch = (IncomingBatch) context.get("currentBatch");
useDefaultDataWriter = currentBatch == null ? false : currentBatch.isErrorFlag();
}
}

0 comments on commit 46a1195

Please sign in to comment.