From fd0e1c33387f291d1e634eb2244a8bd6399e4ef8 Mon Sep 17 00:00:00 2001 From: dsyer Date: Sun, 26 Oct 2008 08:03:30 +0000 Subject: [PATCH] Fix integration against latest Spring Integration --- .../chunk/ChunkMessageChannelItemWriter.java | 4 +- .../file/FileToMessagesJobFactoryBean.java | 2 +- .../file/MessageToJobParametersStrategy.java | 2 +- ...ResourcePayloadAsJobParameterStrategy.java | 4 +- .../item/MessageChannelItemWriter.java | 2 +- .../integration/job/MessageOrientedStep.java | 4 +- .../job/StepExecutionMessageHandler.java | 2 +- .../integration/JobRepositorySupport.java | 7 +++ .../batch/integration/SmokeTests.java | 4 +- ...hunkMessageItemWriterIntegrationTests.java | 5 +- .../FileToMessagesJobFactoryBeanTests.java | 6 +-- ...rcePayloadAsJobParameterStrategyTests.java | 9 ++-- .../ResourceSplitterIntegrationTests.java | 4 +- ...sageChannelItemWriterIntegrationTests.java | 2 +- .../item/MessageChannelItemWriterTests.java | 16 +++--- .../MessageOrientedStepIntegrationTests.java | 6 +++ .../job/MessageOrientedStepTests.java | 4 +- ...unchingMessageHandlerIntegrationTests.java | 10 ++-- .../resources/simple-job-launcher-context.xml | 49 +++++++------------ 19 files changed, 69 insertions(+), 73 deletions(-) diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/ChunkMessageChannelItemWriter.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/ChunkMessageChannelItemWriter.java index 878ca1db6..95aae963a 100644 --- a/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/ChunkMessageChannelItemWriter.java +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/chunk/ChunkMessageChannelItemWriter.java @@ -12,10 +12,10 @@ import org.springframework.batch.item.ItemStream; import org.springframework.batch.item.ItemStreamException; import org.springframework.batch.item.ItemWriter; import org.springframework.batch.repeat.ExitStatus; -import org.springframework.integration.channel.MessageChannel; import org.springframework.integration.channel.PollableChannel; +import org.springframework.integration.core.Message; +import org.springframework.integration.core.MessageChannel; import org.springframework.integration.message.GenericMessage; -import org.springframework.integration.message.Message; import org.springframework.util.Assert; public class ChunkMessageChannelItemWriter extends StepExecutionListenerSupport implements ItemWriter, ItemStream { diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/FileToMessagesJobFactoryBean.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/FileToMessagesJobFactoryBean.java index d47c8bc6d..e090306d8 100644 --- a/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/FileToMessagesJobFactoryBean.java +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/FileToMessagesJobFactoryBean.java @@ -33,7 +33,7 @@ import org.springframework.beans.factory.FactoryBean; import org.springframework.beans.factory.annotation.Required; import org.springframework.core.io.Resource; import org.springframework.integration.channel.DirectChannel; -import org.springframework.integration.channel.MessageChannel; +import org.springframework.integration.core.MessageChannel; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.util.Assert; diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/MessageToJobParametersStrategy.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/MessageToJobParametersStrategy.java index e22634891..eaf5758c0 100644 --- a/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/MessageToJobParametersStrategy.java +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/MessageToJobParametersStrategy.java @@ -1,7 +1,7 @@ package org.springframework.batch.integration.file; import org.springframework.batch.core.JobParameters; -import org.springframework.integration.message.Message; +import org.springframework.integration.core.Message; /** diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/ResourcePayloadAsJobParameterStrategy.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/ResourcePayloadAsJobParameterStrategy.java index c4b883d0c..ca3e9083e 100644 --- a/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/ResourcePayloadAsJobParameterStrategy.java +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/file/ResourcePayloadAsJobParameterStrategy.java @@ -21,7 +21,7 @@ import org.springframework.batch.core.JobParameters; import org.springframework.batch.core.JobParametersBuilder; import org.springframework.batch.item.ItemStreamException; import org.springframework.core.io.Resource; -import org.springframework.integration.message.Message; +import org.springframework.integration.core.Message; /** * @author Dave Syer @@ -38,7 +38,7 @@ public class ResourcePayloadAsJobParameterStrategy implements MessageToJobParame * Convert a message payload which is a {@link Resource} to its URL * representation and load that into a job parameter. * - * @see org.springframework.batch.integration.file.MessageToJobParametersStrategy#getJobParameters(org.springframework.integration.message.Message) + * @see MessageToJobParametersStrategy#getJobParameters(Message) */ public JobParameters getJobParameters(Message message) { JobParametersBuilder builder = new JobParametersBuilder(); diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/item/MessageChannelItemWriter.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/item/MessageChannelItemWriter.java index 02e3ec745..ded7c863e 100644 --- a/spring-batch-integration/src/main/java/org/springframework/batch/integration/item/MessageChannelItemWriter.java +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/item/MessageChannelItemWriter.java @@ -19,7 +19,7 @@ import java.util.List; import org.springframework.batch.item.ItemWriter; import org.springframework.beans.factory.annotation.Required; -import org.springframework.integration.channel.MessageChannel; +import org.springframework.integration.core.MessageChannel; import org.springframework.integration.message.GenericMessage; /** diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/job/MessageOrientedStep.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/job/MessageOrientedStep.java index 3bdfe1ff7..df9077074 100644 --- a/spring-batch-integration/src/main/java/org/springframework/batch/integration/job/MessageOrientedStep.java +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/job/MessageOrientedStep.java @@ -23,10 +23,10 @@ import org.springframework.batch.core.step.AbstractStep; import org.springframework.batch.item.ExecutionContext; import org.springframework.batch.repeat.ExitStatus; import org.springframework.beans.factory.annotation.Required; -import org.springframework.integration.channel.MessageChannel; import org.springframework.integration.channel.PollableChannel; +import org.springframework.integration.core.Message; +import org.springframework.integration.core.MessageChannel; import org.springframework.integration.message.GenericMessage; -import org.springframework.integration.message.Message; import org.springframework.util.Assert; /** diff --git a/spring-batch-integration/src/main/java/org/springframework/batch/integration/job/StepExecutionMessageHandler.java b/spring-batch-integration/src/main/java/org/springframework/batch/integration/job/StepExecutionMessageHandler.java index 09795d624..a199f5763 100644 --- a/spring-batch-integration/src/main/java/org/springframework/batch/integration/job/StepExecutionMessageHandler.java +++ b/spring-batch-integration/src/main/java/org/springframework/batch/integration/job/StepExecutionMessageHandler.java @@ -90,7 +90,7 @@ public class StepExecutionMessageHandler { if (!isRestart(jobInstance, lastStepExecution)) { stepExecution.setExecutionContext(new ExecutionContext()); } - + jobRepository.add(stepExecution); step.execute(stepExecution); } diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/JobRepositorySupport.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/JobRepositorySupport.java index 2b6135e61..70d052345 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/JobRepositorySupport.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/JobRepositorySupport.java @@ -80,4 +80,11 @@ public class JobRepositorySupport implements JobRepository { return false; } + /* (non-Javadoc) + * @see org.springframework.batch.core.repository.JobRepository#getLastJobExecution(java.lang.String, org.springframework.batch.core.JobParameters) + */ + public JobExecution getLastJobExecution(String jobName, JobParameters jobParameters) { + return null; + } + } diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/SmokeTests.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/SmokeTests.java index 95c1e72a1..bf9ed81ef 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/SmokeTests.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/SmokeTests.java @@ -10,10 +10,10 @@ import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.integration.annotation.MessageEndpoint; import org.springframework.integration.annotation.ServiceActivator; import org.springframework.integration.bus.MessageBus; -import org.springframework.integration.channel.MessageChannel; import org.springframework.integration.channel.PollableChannel; +import org.springframework.integration.core.Message; +import org.springframework.integration.core.MessageChannel; import org.springframework.integration.message.GenericMessage; -import org.springframework.integration.message.Message; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/ChunkMessageItemWriterIntegrationTests.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/ChunkMessageItemWriterIntegrationTests.java index 19ad6cfeb..b7b1f7aef 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/ChunkMessageItemWriterIntegrationTests.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/chunk/ChunkMessageItemWriterIntegrationTests.java @@ -31,10 +31,10 @@ import org.springframework.batch.support.transaction.ResourcelessTransactionMana import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.integration.bus.MessageBus; -import org.springframework.integration.channel.MessageChannel; import org.springframework.integration.channel.PollableChannel; +import org.springframework.integration.core.Message; +import org.springframework.integration.core.MessageChannel; import org.springframework.integration.message.GenericMessage; -import org.springframework.integration.message.Message; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.util.StringUtils; @@ -305,6 +305,7 @@ public class ChunkMessageItemWriterIntegrationTests { JobExecution jobExecution = jobRepository.createJobExecution(job.getName(), new JobParametersBuilder().addLong( "job.counter", jobCounter++).toJobParameters()); StepExecution stepExecution = jobExecution.createStepExecution(step.getName()); + jobRepository.add(stepExecution); return stepExecution; } diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/FileToMessagesJobFactoryBeanTests.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/FileToMessagesJobFactoryBeanTests.java index d5c78e4fa..615256d60 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/FileToMessagesJobFactoryBeanTests.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/FileToMessagesJobFactoryBeanTests.java @@ -39,8 +39,8 @@ import org.springframework.batch.support.transaction.ResourcelessTransactionMana import org.springframework.beans.factory.annotation.Required; import org.springframework.core.annotation.AnnotationUtils; import org.springframework.integration.channel.DirectChannel; -import org.springframework.integration.channel.MessageChannel; -import org.springframework.integration.message.Message; +import org.springframework.integration.core.Message; +import org.springframework.integration.core.MessageChannel; import org.springframework.integration.message.MessageConsumer; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.util.ReflectionUtils; @@ -100,7 +100,7 @@ public class FileToMessagesJobFactoryBeanTests { /** * Test method for - * {@link org.springframework.batch.integration.file.FileToMessagesJobFactoryBean#setChannel(org.springframework.integration.channel.MessageChannel)}. + * {@link FileToMessagesJobFactoryBean#setChannel(MessageChannel)}. */ @Test public void testSetChannel() { diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/ResourcePayloadAsJobParameterStrategyTests.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/ResourcePayloadAsJobParameterStrategyTests.java index 1e813c02b..9b352f0b3 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/ResourcePayloadAsJobParameterStrategyTests.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/ResourcePayloadAsJobParameterStrategyTests.java @@ -15,13 +15,14 @@ */ package org.springframework.batch.integration.file; -import static org.junit.Assert.*; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; import org.junit.Test; import org.springframework.batch.core.JobParameters; -import org.springframework.batch.integration.file.ResourcePayloadAsJobParameterStrategy; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource; +import org.springframework.integration.core.Message; import org.springframework.integration.message.GenericMessage; /** @@ -36,7 +37,7 @@ public class ResourcePayloadAsJobParameterStrategyTests { private static final String INPUT_FILE_PATH = ResourcePayloadAsJobParameterStrategy.FILE_INPUT_PATH; /** - * Test method for {@link org.springframework.batch.integration.file.ResourcePayloadAsJobParameterStrategy#getJobParameters(org.springframework.integration.message.Message)}. + * Test method for {@link ResourcePayloadAsJobParameterStrategy#getJobParameters(Message)}. */ @Test public void testGetJobParameters() { @@ -46,7 +47,7 @@ public class ResourcePayloadAsJobParameterStrategyTests { } /** - * Test method for {@link org.springframework.batch.integration.file.ResourcePayloadAsJobParameterStrategy#getJobParameters(org.springframework.integration.message.Message)}. + * Test method for {@link ResourcePayloadAsJobParameterStrategy#getJobParameters(Message)}. */ @Test public void testGetJobParametersWithWrongPayload() { diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/ResourceSplitterIntegrationTests.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/ResourceSplitterIntegrationTests.java index a4cce27fb..365268614 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/ResourceSplitterIntegrationTests.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/file/ResourceSplitterIntegrationTests.java @@ -28,10 +28,10 @@ import org.springframework.core.io.Resource; import org.springframework.integration.annotation.MessageEndpoint; import org.springframework.integration.annotation.Splitter; import org.springframework.integration.bus.MessageBus; -import org.springframework.integration.channel.MessageChannel; import org.springframework.integration.channel.PollableChannel; +import org.springframework.integration.core.Message; +import org.springframework.integration.core.MessageChannel; import org.springframework.integration.message.GenericMessage; -import org.springframework.integration.message.Message; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/item/MessageChannelItemWriterIntegrationTests.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/item/MessageChannelItemWriterIntegrationTests.java index 23b9a6478..c04c3af62 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/item/MessageChannelItemWriterIntegrationTests.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/item/MessageChannelItemWriterIntegrationTests.java @@ -26,7 +26,7 @@ import org.springframework.batch.item.ItemWriter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.integration.channel.PollableChannel; -import org.springframework.integration.message.Message; +import org.springframework.integration.core.Message; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/item/MessageChannelItemWriterTests.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/item/MessageChannelItemWriterTests.java index c505bf149..7d6c4f99c 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/item/MessageChannelItemWriterTests.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/item/MessageChannelItemWriterTests.java @@ -26,12 +26,10 @@ import java.util.Collections; import org.junit.Test; import org.springframework.beans.factory.annotation.Required; import org.springframework.core.annotation.AnnotationUtils; -import org.springframework.integration.adapter.MessageHandler; import org.springframework.integration.channel.DirectChannel; -import org.springframework.integration.channel.MessageChannel; import org.springframework.integration.channel.ThreadLocalChannel; -import org.springframework.integration.endpoint.ServiceActivatorEndpoint; -import org.springframework.integration.message.Message; +import org.springframework.integration.core.Message; +import org.springframework.integration.core.MessageChannel; import org.springframework.integration.message.MessageConsumer; import org.springframework.util.ReflectionUtils; @@ -43,8 +41,7 @@ public class MessageChannelItemWriterTests { /** * Test method for - * {@link org.springframework.batch.integration.item.MessageChannelItemWriter#setChannel(org.springframework.integration.channel.MessageChannel)} - * . + * {@link MessageChannelItemWriter#setChannel(MessageChannel)} . */ @Test public void testSetChannel() { @@ -89,12 +86,11 @@ public class MessageChannelItemWriterTests { @Test public void testWriteWithRollbackOnEndpoint() throws Exception { DirectChannel channel = new DirectChannel(); - ServiceActivatorEndpoint endpoint = new ServiceActivatorEndpoint(new MessageHandler() { - public Message handle(Message message) { + channel.subscribe(new MessageConsumer() { + public void onMessage(Message message) { throw new RuntimeException("Planned failure"); } }); - channel.subscribe(endpoint); MessageChannelItemWriter writer = new MessageChannelItemWriter(); writer.setChannel(channel); try { @@ -104,7 +100,7 @@ public class MessageChannelItemWriterTests { catch (RuntimeException e) { // INT-377: this assertion fails because the exception is wrapped // too tightly - assertEquals("Planned failure", e.getCause().getMessage()); + assertEquals("Planned failure", e.getMessage()); } } } diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/job/MessageOrientedStepIntegrationTests.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/job/MessageOrientedStepIntegrationTests.java index d528f745e..a3ab180ed 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/job/MessageOrientedStepIntegrationTests.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/job/MessageOrientedStepIntegrationTests.java @@ -17,6 +17,7 @@ package org.springframework.batch.integration.job; import static org.junit.Assert.assertEquals; +import org.junit.After; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.batch.core.BatchStatus; @@ -47,6 +48,11 @@ public class MessageOrientedStepIntegrationTests { @Autowired @Qualifier("job") private Job job; + + @After + public void shutdown() { + bus.stop(); + } @Test public void testLaunchJob() throws Exception { diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/job/MessageOrientedStepTests.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/job/MessageOrientedStepTests.java index 2588876ef..d62e6bd73 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/job/MessageOrientedStepTests.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/job/MessageOrientedStepTests.java @@ -34,11 +34,11 @@ import org.springframework.batch.repeat.ExitStatus; import org.springframework.beans.factory.annotation.Required; import org.springframework.core.annotation.AnnotationUtils; import org.springframework.integration.channel.DirectChannel; -import org.springframework.integration.channel.MessageChannel; import org.springframework.integration.channel.PollableChannel; import org.springframework.integration.channel.ThreadLocalChannel; +import org.springframework.integration.core.Message; +import org.springframework.integration.core.MessageChannel; import org.springframework.integration.message.GenericMessage; -import org.springframework.integration.message.Message; import org.springframework.integration.message.MessageConsumer; import org.springframework.util.ReflectionUtils; diff --git a/spring-batch-integration/src/test/java/org/springframework/batch/integration/launch/JobLaunchingMessageHandlerIntegrationTests.java b/spring-batch-integration/src/test/java/org/springframework/batch/integration/launch/JobLaunchingMessageHandlerIntegrationTests.java index c6d24261b..560fdfe04 100644 --- a/spring-batch-integration/src/test/java/org/springframework/batch/integration/launch/JobLaunchingMessageHandlerIntegrationTests.java +++ b/spring-batch-integration/src/test/java/org/springframework/batch/integration/launch/JobLaunchingMessageHandlerIntegrationTests.java @@ -17,12 +17,12 @@ import org.springframework.batch.integration.JobSupport; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.integration.bus.MessageBus; -import org.springframework.integration.channel.MessageChannel; import org.springframework.integration.channel.PollableChannel; +import org.springframework.integration.core.Message; +import org.springframework.integration.core.MessageChannel; +import org.springframework.integration.core.MessageHeaders; +import org.springframework.integration.core.MessagingException; import org.springframework.integration.message.GenericMessage; -import org.springframework.integration.message.Message; -import org.springframework.integration.message.MessageHeaders; -import org.springframework.integration.message.MessagingException; import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -75,7 +75,7 @@ public class JobLaunchingMessageHandlerIntegrationTests { JobParametersBuilder builder = new JobParametersBuilder(); builder.addString("dontclash", "12"); Map map = new HashMap(); - map.put(MessageHeaders.RETURN_ADDRESS, "response"); + map.put(MessageHeaders.REPLY_CHANNEL, "response"); MessageHeaders headers = new MessageHeaders(map); GenericMessage trigger = new GenericMessage(new JobLaunchRequest(job, builder.toJobParameters()), headers); diff --git a/spring-batch-integration/src/test/resources/simple-job-launcher-context.xml b/spring-batch-integration/src/test/resources/simple-job-launcher-context.xml index dce6e911f..4433ae212 100644 --- a/spring-batch-integration/src/test/resources/simple-job-launcher-context.xml +++ b/spring-batch-integration/src/test/resources/simple-job-launcher-context.xml @@ -1,66 +1,51 @@ - - + - + - + + + - + - + - + - + - + - + - - + + - +