You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by he...@apache.org on 2013/06/05 12:26:02 UTC
git commit: [Spring Batch] JobExecution instance is now passed to the
output message. (cherry picked from commit fee40c7)
Updated Branches:
refs/heads/camel-2.11.x 048601dc5 -> be41c4dd5
[Spring Batch] JobExecution instance is now passed to the output message.
(cherry picked from commit fee40c7)
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/be41c4dd
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/be41c4dd
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/be41c4dd
Branch: refs/heads/camel-2.11.x
Commit: be41c4dd5ace4a5a6f89c127d4c678f152a38724
Parents: 048601d
Author: Henryk Konsek <he...@gmail.com>
Authored: Wed Jun 5 12:08:51 2013 +0200
Committer: Henryk Konsek <he...@gmail.com>
Committed: Wed Jun 5 12:25:36 2013 +0200
----------------------------------------------------------------------
.../spring/batch/SpringBatchProducer.java | 4 ++-
.../spring/batch/SpringBatchEndpointTest.java | 21 ++++++++++++++-
2 files changed, 23 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/be41c4dd/components/camel-spring-batch/src/main/java/org/apache/camel/component/spring/batch/SpringBatchProducer.java
----------------------------------------------------------------------
diff --git a/components/camel-spring-batch/src/main/java/org/apache/camel/component/spring/batch/SpringBatchProducer.java b/components/camel-spring-batch/src/main/java/org/apache/camel/component/spring/batch/SpringBatchProducer.java
index e6041ea..8f25f2a 100644
--- a/components/camel-spring-batch/src/main/java/org/apache/camel/component/spring/batch/SpringBatchProducer.java
+++ b/components/camel-spring-batch/src/main/java/org/apache/camel/component/spring/batch/SpringBatchProducer.java
@@ -23,6 +23,7 @@ import org.apache.camel.Endpoint;
import org.apache.camel.Exchange;
import org.apache.camel.impl.DefaultProducer;
import org.springframework.batch.core.Job;
+import org.springframework.batch.core.JobExecution;
import org.springframework.batch.core.JobParameters;
import org.springframework.batch.core.JobParametersBuilder;
import org.springframework.batch.core.launch.JobLauncher;
@@ -42,7 +43,8 @@ public class SpringBatchProducer extends DefaultProducer {
@Override
public void process(Exchange exchange) throws Exception {
JobParameters jobParameters = prepareJobParameters(exchange.getIn().getHeaders());
- jobLauncher.run(job, jobParameters);
+ JobExecution jobExecution = jobLauncher.run(job, jobParameters);
+ exchange.getOut().setBody(jobExecution);
}
protected JobParameters prepareJobParameters(Map<String, Object> headers) {
http://git-wip-us.apache.org/repos/asf/camel/blob/be41c4dd/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchEndpointTest.java
----------------------------------------------------------------------
diff --git a/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchEndpointTest.java b/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchEndpointTest.java
index 7789a1a..92c1e93 100644
--- a/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchEndpointTest.java
+++ b/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchEndpointTest.java
@@ -19,8 +19,10 @@ package org.apache.camel.component.spring.batch;
import java.util.Date;
import org.apache.camel.CamelContext;
+import org.apache.camel.EndpointInject;
import org.apache.camel.FailedToCreateRouteException;
import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.component.mock.MockEndpoint;
import org.apache.camel.impl.DefaultCamelContext;
import org.apache.camel.impl.JndiRegistry;
import org.apache.camel.impl.SimpleRegistry;
@@ -32,6 +34,7 @@ import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import org.springframework.batch.core.Job;
+import org.springframework.batch.core.JobExecution;
import org.springframework.batch.core.JobParameters;
import org.springframework.batch.core.launch.JobLauncher;
@@ -54,12 +57,15 @@ public class SpringBatchEndpointTest extends CamelTestSupport {
// Camel fixtures
+ @EndpointInject(uri = "mock:test")
+ MockEndpoint mockEndpoint;
+
@Override
protected RouteBuilder createRouteBuilder() throws Exception {
return new RouteBuilder() {
@Override
public void configure() throws Exception {
- from("direct:start").to("spring-batch:mockJob");
+ from("direct:start").to("spring-batch:mockJob").to("mock:test");
}
};
}
@@ -91,6 +97,19 @@ public class SpringBatchEndpointTest extends CamelTestSupport {
verify(jobLauncher).run(eq(job), any(JobParameters.class));
}
+ @Test
+ public void shouldReturnJobExecution() throws Exception {
+ // Given
+ JobExecution jobExecution = mock(JobExecution.class);
+ when(jobLauncher.run(eq(job), any(JobParameters.class))).thenReturn(jobExecution);
+
+ // When
+ sendBody("direct:start", "Start the job, please.");
+
+ // Then
+ mockEndpoint.expectedBodiesReceived(jobExecution);
+ }
+
@Test(expected = UnsupportedOperationException.class)
public void shouldThrowExceptionIfUsedAsConsumer() throws Exception {
// When