Using micro bulks again.
diff --git a/core/org.eclipse.smila.connectivity.bulkbuilder/.checkstyle b/core/org.eclipse.smila.connectivity.bulkbuilder/.checkstyle
index f6d2e33..75fa07e 100644
--- a/core/org.eclipse.smila.connectivity.bulkbuilder/.checkstyle
+++ b/core/org.eclipse.smila.connectivity.bulkbuilder/.checkstyle
@@ -1,7 +1,6 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
- <fileset name="all" enabled="true" check-config-name="SMILA Checkstyle" local="false">
- <file-match-pattern match-pattern="." include-pattern="true"/>
- </fileset>
-</fileset-config>
+<?xml version="1.0" encoding="UTF-8"?>
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <fileset name="Alle" enabled="true" check-config-name="SMILA Checkstyle" local="false">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+</fileset-config>
diff --git a/core/org.eclipse.smila.connectivity.bulkbuilder/.project b/core/org.eclipse.smila.connectivity.bulkbuilder/.project
index 2cecfb8..3861f79 100644
--- a/core/org.eclipse.smila.connectivity.bulkbuilder/.project
+++ b/core/org.eclipse.smila.connectivity.bulkbuilder/.project
@@ -25,10 +25,16 @@
<arguments>
</arguments>
</buildCommand>
+ <buildCommand>
+ <name>com.atlassw.tools.eclipse.checkstyle.CheckstyleBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>com.atlassw.tools.eclipse.checkstyle.CheckstyleNature</nature>
</natures>
</projectDescription>
diff --git a/core/org.eclipse.smila.connectivity.bulkbuilder/code/src/org/eclipse/smila/connectivity/bulkbuilder/ConnectivityManagerImpl.java b/core/org.eclipse.smila.connectivity.bulkbuilder/code/src/org/eclipse/smila/connectivity/bulkbuilder/ConnectivityManagerImpl.java
index 04eec4b..2c58690 100644
--- a/core/org.eclipse.smila.connectivity.bulkbuilder/code/src/org/eclipse/smila/connectivity/bulkbuilder/ConnectivityManagerImpl.java
+++ b/core/org.eclipse.smila.connectivity.bulkbuilder/code/src/org/eclipse/smila/connectivity/bulkbuilder/ConnectivityManagerImpl.java
@@ -1,15 +1,16 @@
/***********************************************************************************************************************
- * Copyright (c) 2008, 2011 Attensity Europe GmbH and brox IT Solutions GmbH. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this
+ * Copyright (c) 2008, 2011 Attensity Europe GmbH and brox IT Solutions GmbH. All rights reserved. This program and the
+ * accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this
* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
*
- * Contributors: Daniel Stucky (empolis GmbH) - initial API and implementation
- * Andreas Weber (Attensity Europe GmbH) - data model simplification
+ * Contributors: Daniel Stucky (empolis GmbH) - initial API and implementation Andreas Weber (Attensity Europe GmbH) -
+ * data model simplification
**********************************************************************************************************************/
package org.eclipse.smila.connectivity.bulkbuilder;
import java.util.HashMap;
import java.util.Map;
+import java.util.UUID;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -47,6 +48,7 @@
}
}
+ /** {@inheritDoc} */
@Override
public void checkJobIsActive(final String jobName) throws ConnectivityException {
final JobRunInfo info;
@@ -65,10 +67,11 @@
@Override
public int add(final Record[] records, final String jobName) throws ConnectivityException {
final Map<String, Exception> exceptionMap = new HashMap<String, Exception>(); // key: record id
- // add records
+ // add records as micro bulk
+ final String microBulkId = UUID.randomUUID().toString();
for (final Record record : records) {
try {
- _bulkbuilder.addRecord(jobName, record);
+ _bulkbuilder.addToMicroBulk(jobName, record, microBulkId);
} catch (final MaybeRecoverableException e) {
final String msg = "Error while adding record with id '" + record.getId() + "' to bulkbuilder";
if (e.isRecoverable()) {
@@ -80,6 +83,13 @@
} catch (final Exception e) {
throw new ConnectivityException(e, false);
}
+ try {
+ _bulkbuilder.finishMicroBulk(jobName, microBulkId);
+ } catch (final BulkbuilderException e) {
+ final String message = "Error while adding " + records.length + " records to bulkbuilder";
+ _log.error(message, e);
+ throw new ConnectivityException(message, e);
+ }
}
if (!exceptionMap.isEmpty()) {
_log.warn("Added " + (records.length - exceptionMap.size()) + " of " + records.length
@@ -88,6 +98,7 @@
return records.length - exceptionMap.size();
}
+ /** {@inheritDoc} */
@Override
public int delete(final Record[] records, final String jobName) throws ConnectivityException {
final Map<String, Exception> exceptionMap = new HashMap<String, Exception>(); // key: record id