diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/model/ProcessInfo.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/model/ProcessInfo.java index c9582fe52e..2dab4d5e84 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/model/ProcessInfo.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/model/ProcessInfo.java @@ -73,6 +73,7 @@ public String toString() { private Date lastStatusChangeTime = new Date(); private Date endTime; private IProcessInfoListener listener; + private boolean bulkLoadFlag = false; public ProcessInfo() { this(new ProcessInfoKey("", "", null)); @@ -312,6 +313,14 @@ public void setListener(IProcessInfoListener listener) { this.listener = listener; } + public boolean isBulkLoadFlag() { + return bulkLoadFlag; + } + + public void setBulkLoadFlag(boolean bulkLoadFlag) { + this.bulkLoadFlag = bulkLoadFlag; + } + static public class ThreadData { public ThreadData(String threadName, String stackTrace) { this.threadName = threadName; diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/model/ProcessInfoDataWriter.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/model/ProcessInfoDataWriter.java index 71b9d742e7..8f8601d092 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/model/ProcessInfoDataWriter.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/model/ProcessInfoDataWriter.java @@ -37,6 +37,15 @@ public class ProcessInfoDataWriter extends NestedDataWriter { private ProcessInfo processInfo; + private static Class abstractBulkDatabaseWriter; + + static { + try { + abstractBulkDatabaseWriter = Class.forName("org.jumpmind.symmetric.io.AbstractBulkDatabaseWriter"); + } catch (Exception e) { + throw new RuntimeException(e); + } + } public ProcessInfoDataWriter(IDataWriter targetWriter, ProcessInfo processInfo) { super(targetWriter); @@ -60,6 +69,12 @@ public void start(Batch batch) { processInfo.setCurrentChannelId(batch.getChannelId()); processInfo.incrementBatchCount(); processInfo.setCurrentDataCount(0); + if (abstractBulkDatabaseWriter != null + && abstractBulkDatabaseWriter.isAssignableFrom(nestedWriter.getClass())) { + processInfo.setBulkLoadFlag(true); + } else { + processInfo.setBulkLoadFlag(false); + } } super.start(batch); }