Established @EnableTask to create instance of TaskLifecycle Bean

resolves #494
This commit is contained in:
Glenn Renfro
2018-12-10 14:41:27 -05:00
parent b4b50e8182
commit 30399dbb57
20 changed files with 151 additions and 33 deletions

View File

@@ -19,11 +19,13 @@ package org.springframework.cloud.task.executionid;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.task.configuration.EnableTask;
import org.springframework.context.annotation.Bean;
/**
* @author Glenn Renfro
*/
@EnableTask
@SpringBootApplication
public class TaskStartApplication {

View File

@@ -37,6 +37,7 @@ import org.springframework.cloud.stream.messaging.Sink;
import org.springframework.cloud.task.batch.listener.BatchEventAutoConfiguration;
import org.springframework.cloud.task.batch.listener.support.JobExecutionEvent;
import org.springframework.cloud.task.batch.listener.support.StepExecutionEvent;
import org.springframework.cloud.task.configuration.EnableTask;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.PropertySource;
@@ -157,6 +158,7 @@ public class BatchExecutionEventTests {
@EnableBinding(Sink.class)
@PropertySource("classpath:/org/springframework/cloud/task/listener/job-execution-sink-channel.properties")
@EnableAutoConfiguration
@EnableTask
public static class ListenerBinding {
@StreamListener(Sink.INPUT)
@@ -169,6 +171,7 @@ public class BatchExecutionEventTests {
@EnableBinding(Sink.class)
@PropertySource("classpath:/org/springframework/cloud/task/listener/step-execution-sink-channel.properties")
@EnableAutoConfiguration
@EnableTask
public static class StepListenerBinding {
@StreamListener(Sink.INPUT)
@@ -187,6 +190,7 @@ public class BatchExecutionEventTests {
@EnableBinding(Sink.class)
@PropertySource("classpath:/org/springframework/cloud/task/listener/item-process-sink-channel.properties")
@EnableAutoConfiguration
@EnableTask
public static class ItemProcessListenerBinding {
@StreamListener(Sink.INPUT)
@@ -198,6 +202,7 @@ public class BatchExecutionEventTests {
@EnableBinding(Sink.class)
@PropertySource("classpath:/org/springframework/cloud/task/listener/chunk-events-sink-channel.properties")
@EnableAutoConfiguration
@EnableTask
public static class ChunkEventsListenerBinding {
@StreamListener(Sink.INPUT)
@@ -209,6 +214,7 @@ public class BatchExecutionEventTests {
@EnableBinding(Sink.class)
@PropertySource("classpath:/org/springframework/cloud/task/listener/item-read-events-sink-channel.properties")
@EnableAutoConfiguration
@EnableTask
public static class ItemReadEventsListenerBinding {
@StreamListener(Sink.INPUT)
@@ -220,6 +226,7 @@ public class BatchExecutionEventTests {
@EnableBinding(Sink.class)
@PropertySource("classpath:/org/springframework/cloud/task/listener/skip-events-sink-channel.properties")
@EnableAutoConfiguration
@EnableTask
public static class SkipEventsListenerBinding {
private static final String SKIPPING_READ_MESSAGE = "Skipped when reading.";
private static final String SKIPPING_WRITE_CONTENT = "-1";
@@ -238,6 +245,7 @@ public class BatchExecutionEventTests {
@EnableBinding(Sink.class)
@PropertySource("classpath:/org/springframework/cloud/task/listener/item-write-events-sink-channel.properties")
@EnableAutoConfiguration
@EnableTask
public static class ItemWriteEventsListenerBinding {
@StreamListener(Sink.INPUT)

View File

@@ -34,6 +34,7 @@ import org.springframework.cloud.stream.binder.rabbit.config.RabbitServiceAutoCo
import org.springframework.cloud.stream.binder.test.junit.rabbit.RabbitTestSupport;
import org.springframework.cloud.stream.config.BindingServiceConfiguration;
import org.springframework.cloud.stream.messaging.Sink;
import org.springframework.cloud.task.configuration.EnableTask;
import org.springframework.cloud.task.configuration.SimpleTaskAutoConfiguration;
import org.springframework.cloud.task.configuration.SingleTaskConfiguration;
import org.springframework.cloud.task.repository.TaskExecution;
@@ -64,12 +65,13 @@ public class TaskEventTests {
@Test
public void testTaskEventListener() throws Exception {
ApplicationContextRunner applicationContextRunner = new ApplicationContextRunner()
.withConfiguration(AutoConfigurations.of(TaskEventsConfiguration.class,
.withConfiguration(AutoConfigurations.of(
TaskEventAutoConfiguration.class,
PropertyPlaceholderAutoConfiguration.class,
RabbitServiceAutoConfiguration.class,
SimpleTaskAutoConfiguration.class,
BindingServiceConfiguration.class))
.withUserConfiguration(TaskEventsConfiguration.class)
.withPropertyValues("--spring.cloud.task.closecontext_enabled=false",
"--spring.cloud.task.name=" + TASK_NAME,
"--spring.main.web-environment=false",
@@ -82,6 +84,7 @@ public class TaskEventTests {
assertTrue(latch.await(1, TimeUnit.SECONDS));
}
@EnableTask
@Configuration
public static class TaskEventsConfiguration {
}