From cb75353aebecfed9c7a39bfb1e82f8cdeef99ee7 Mon Sep 17 00:00:00 2001 From: Ilayaperumal Gopinathan Date: Fri, 10 Jul 2015 13:14:06 -0700 Subject: [PATCH] Add tap sample and remove xd-samples --- pom.xml | 1 - spring-cloud-streams-samples/pom.xml | 1 + .../tap/pom.xml | 8 +-- .../main/java/config/TappingLoggingSink.java | 0 .../src/main/java/demo/TapApplication.java | 0 .../tap}/src/main/resources/application.yml | 0 .../tap/src/main/resources/bootstrap.yml | 0 .../main/resources/config/logger.properties | 0 .../java/demo/ModuleApplicationTests.java | 0 spring-xd-samples/pom.xml | 48 ------------- spring-xd-samples/sink/pom.xml | 61 ---------------- .../java/config/LogSinkOptionsMetadata.java | 69 ------------------- .../sink/src/main/java/config/LoggerSink.java | 47 ------------- .../src/main/java/demo/SinkApplication.java | 18 ----- .../sink/src/main/resources/bootstrap.yml | 11 --- .../main/resources/config/logger.properties | 2 - .../java/demo/ModuleApplicationTests.java | 20 ------ spring-xd-samples/source/pom.xml | 60 ---------------- .../main/java/config/ModuleDefinition.java | 54 --------------- .../config/TimeSourceOptionsMetadata.java | 61 ---------------- .../src/main/java/demo/SourceApplication.java | 19 ----- .../source/src/main/resources/application.yml | 1 - .../source/src/main/resources/bootstrap.yml | 12 ---- .../main/resources/config/ticker.properties | 2 - .../java/demo/ModuleApplicationTests.java | 20 ------ .../tap/src/main/resources/application.yml | 2 - 26 files changed, 5 insertions(+), 512 deletions(-) rename {spring-xd-samples => spring-cloud-streams-samples}/tap/pom.xml (88%) rename {spring-xd-samples => spring-cloud-streams-samples}/tap/src/main/java/config/TappingLoggingSink.java (100%) rename {spring-xd-samples => spring-cloud-streams-samples}/tap/src/main/java/demo/TapApplication.java (100%) rename {spring-xd-samples/sink => spring-cloud-streams-samples/tap}/src/main/resources/application.yml (100%) rename {spring-xd-samples => spring-cloud-streams-samples}/tap/src/main/resources/bootstrap.yml (100%) rename {spring-xd-samples => spring-cloud-streams-samples}/tap/src/main/resources/config/logger.properties (100%) rename {spring-xd-samples => spring-cloud-streams-samples}/tap/src/test/java/demo/ModuleApplicationTests.java (100%) delete mode 100644 spring-xd-samples/pom.xml delete mode 100644 spring-xd-samples/sink/pom.xml delete mode 100644 spring-xd-samples/sink/src/main/java/config/LogSinkOptionsMetadata.java delete mode 100644 spring-xd-samples/sink/src/main/java/config/LoggerSink.java delete mode 100644 spring-xd-samples/sink/src/main/java/demo/SinkApplication.java delete mode 100644 spring-xd-samples/sink/src/main/resources/bootstrap.yml delete mode 100644 spring-xd-samples/sink/src/main/resources/config/logger.properties delete mode 100644 spring-xd-samples/sink/src/test/java/demo/ModuleApplicationTests.java delete mode 100644 spring-xd-samples/source/pom.xml delete mode 100644 spring-xd-samples/source/src/main/java/config/ModuleDefinition.java delete mode 100644 spring-xd-samples/source/src/main/java/config/TimeSourceOptionsMetadata.java delete mode 100644 spring-xd-samples/source/src/main/java/demo/SourceApplication.java delete mode 100644 spring-xd-samples/source/src/main/resources/application.yml delete mode 100644 spring-xd-samples/source/src/main/resources/bootstrap.yml delete mode 100644 spring-xd-samples/source/src/main/resources/config/ticker.properties delete mode 100644 spring-xd-samples/source/src/test/java/demo/ModuleApplicationTests.java delete mode 100644 spring-xd-samples/tap/src/main/resources/application.yml diff --git a/pom.xml b/pom.xml index 327366fef..2c1d4347b 100644 --- a/pom.xml +++ b/pom.xml @@ -30,7 +30,6 @@ spring-cloud-streams-codec spring-cloud-streams-common spring-xd-runner - spring-xd-samples spring-cloud-streams-samples docs diff --git a/spring-cloud-streams-samples/pom.xml b/spring-cloud-streams-samples/pom.xml index 557c889f8..08da4e3d0 100644 --- a/spring-cloud-streams-samples/pom.xml +++ b/spring-cloud-streams-samples/pom.xml @@ -19,6 +19,7 @@ source sink transform + tap double extended diff --git a/spring-xd-samples/tap/pom.xml b/spring-cloud-streams-samples/tap/pom.xml similarity index 88% rename from spring-xd-samples/tap/pom.xml rename to spring-cloud-streams-samples/tap/pom.xml index 824529fbb..4c2478348 100644 --- a/spring-xd-samples/tap/pom.xml +++ b/spring-cloud-streams-samples/tap/pom.xml @@ -3,17 +3,17 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - org.springframework.xd - spring-xd-module-runner-sample-tap + org.springframework.cloud + spring-cloud-streams-sample-tap 1.0.0.BUILD-SNAPSHOT jar - spring-xd-module-runner-sample-tap + spring-cloud-streams-sample-tap Demo project for Spring XD module org.springframework.cloud - spring-xd-samples + spring-cloud-streams-samples 1.0.0.BUILD-SNAPSHOT diff --git a/spring-xd-samples/tap/src/main/java/config/TappingLoggingSink.java b/spring-cloud-streams-samples/tap/src/main/java/config/TappingLoggingSink.java similarity index 100% rename from spring-xd-samples/tap/src/main/java/config/TappingLoggingSink.java rename to spring-cloud-streams-samples/tap/src/main/java/config/TappingLoggingSink.java diff --git a/spring-xd-samples/tap/src/main/java/demo/TapApplication.java b/spring-cloud-streams-samples/tap/src/main/java/demo/TapApplication.java similarity index 100% rename from spring-xd-samples/tap/src/main/java/demo/TapApplication.java rename to spring-cloud-streams-samples/tap/src/main/java/demo/TapApplication.java diff --git a/spring-xd-samples/sink/src/main/resources/application.yml b/spring-cloud-streams-samples/tap/src/main/resources/application.yml similarity index 100% rename from spring-xd-samples/sink/src/main/resources/application.yml rename to spring-cloud-streams-samples/tap/src/main/resources/application.yml diff --git a/spring-xd-samples/tap/src/main/resources/bootstrap.yml b/spring-cloud-streams-samples/tap/src/main/resources/bootstrap.yml similarity index 100% rename from spring-xd-samples/tap/src/main/resources/bootstrap.yml rename to spring-cloud-streams-samples/tap/src/main/resources/bootstrap.yml diff --git a/spring-xd-samples/tap/src/main/resources/config/logger.properties b/spring-cloud-streams-samples/tap/src/main/resources/config/logger.properties similarity index 100% rename from spring-xd-samples/tap/src/main/resources/config/logger.properties rename to spring-cloud-streams-samples/tap/src/main/resources/config/logger.properties diff --git a/spring-xd-samples/tap/src/test/java/demo/ModuleApplicationTests.java b/spring-cloud-streams-samples/tap/src/test/java/demo/ModuleApplicationTests.java similarity index 100% rename from spring-xd-samples/tap/src/test/java/demo/ModuleApplicationTests.java rename to spring-cloud-streams-samples/tap/src/test/java/demo/ModuleApplicationTests.java diff --git a/spring-xd-samples/pom.xml b/spring-xd-samples/pom.xml deleted file mode 100644 index 6720d8a84..000000000 --- a/spring-xd-samples/pom.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - 4.0.0 - org.springframework.cloud - spring-xd-samples - 1.0.0.BUILD-SNAPSHOT - pom - http://projects.spring.io/spring-xd/ - - Pivotal Software, Inc. - http://www.spring.io - - - org.springframework.cloud - spring-cloud-streams-parent - 1.0.0.BUILD-SNAPSHOT - - - source - sink - tap - - - - - - - maven-deploy-plugin - - true - - - - - - - - lattice - - - org.springframework.cloud - spring-cloud-lattice-connector - 1.0.2.BUILD-SNAPSHOT - - - - - diff --git a/spring-xd-samples/sink/pom.xml b/spring-xd-samples/sink/pom.xml deleted file mode 100644 index de33f1308..000000000 --- a/spring-xd-samples/sink/pom.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - 4.0.0 - - org.springframework.cloud - spring-xd-module-runner-sample-sink - 1.0.0.BUILD-SNAPSHOT - jar - - spring-xd-module-runner-sample-sink - Demo project for Spring XD module - - - org.springframework.cloud - spring-xd-samples - 1.0.0.BUILD-SNAPSHOT - - - - UTF-8 - demo.SinkApplication - 1.8 - - - - - org.springframework.cloud - spring-xd-runner - - - org.springframework.xd - spring-xd-messagebus-redis - - - org.springframework.boot - spring-boot-starter-redis - - - org.springframework.boot - spring-boot-configuration-processor - true - - - - org.springframework.boot - spring-boot-starter-test - test - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - diff --git a/spring-xd-samples/sink/src/main/java/config/LogSinkOptionsMetadata.java b/spring-xd-samples/sink/src/main/java/config/LogSinkOptionsMetadata.java deleted file mode 100644 index 222649e0c..000000000 --- a/spring-xd-samples/sink/src/main/java/config/LogSinkOptionsMetadata.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright 2014 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package config; - -import org.hibernate.validator.constraints.NotBlank; - -import org.springframework.xd.module.options.spi.ModuleOption; -import org.springframework.xd.module.options.spi.ModulePlaceholders; - - -/** - * Captures options for the {@code log} sink module. - * - * @author Eric Bottard - * @author Gary Russell - */ -public class LogSinkOptionsMetadata { - - private String name = ModulePlaceholders.XD_STREAM_NAME; - - private String expression = "payload"; - - private String level = "INFO"; - - @NotBlank - public String getName() { - return name; - } - - @ModuleOption("the name of the log category to log to (will be prefixed by 'xd.sink.')") - public void setName(String name) { - this.name = name; - } - - @NotBlank - public String getExpression() { - return expression; - } - - @ModuleOption("the expression to be evaluated for the log content; use '#root' to log the full message") - public void setExpression(String expression) { - this.expression = expression; - } - - @NotBlank - public String getLevel() { - return level; - } - - @ModuleOption("the log level") - public void setLevel(String level) { - this.level = level.toUpperCase(); - } - -} diff --git a/spring-xd-samples/sink/src/main/java/config/LoggerSink.java b/spring-xd-samples/sink/src/main/java/config/LoggerSink.java deleted file mode 100644 index c7b6311f7..000000000 --- a/spring-xd-samples/sink/src/main/java/config/LoggerSink.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright 2015 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package config; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import org.springframework.cloud.streams.annotation.EnableModule; -import org.springframework.cloud.streams.annotation.Input; -import org.springframework.context.annotation.Configuration; -import org.springframework.integration.annotation.MessageEndpoint; -import org.springframework.integration.annotation.ServiceActivator; -import org.springframework.messaging.MessageChannel; - -/** - * @author Dave Syer - * @author Marius Bogoevici - * - */ -@EnableModule -public class LoggerSink { - - private static Logger logger = LoggerFactory.getLogger(LoggerSink.class); - - @Input - private MessageChannel input; - - @ServiceActivator(inputChannel="input") - public void loggerSink(Object payload) { - logger.info("Received: " + payload); - } - -} diff --git a/spring-xd-samples/sink/src/main/java/demo/SinkApplication.java b/spring-xd-samples/sink/src/main/java/demo/SinkApplication.java deleted file mode 100644 index c451d4661..000000000 --- a/spring-xd-samples/sink/src/main/java/demo/SinkApplication.java +++ /dev/null @@ -1,18 +0,0 @@ -package demo; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.cloud.streams.annotation.EnableModule; -import org.springframework.context.annotation.ComponentScan; - -import config.LoggerSink; - -@SpringBootApplication -@ComponentScan(basePackageClasses = LoggerSink.class) -public class SinkApplication { - - public static void main(String[] args) throws InterruptedException { - SpringApplication.run(SinkApplication.class, args); - } - -} diff --git a/spring-xd-samples/sink/src/main/resources/bootstrap.yml b/spring-xd-samples/sink/src/main/resources/bootstrap.yml deleted file mode 100644 index 49b2737af..000000000 --- a/spring-xd-samples/sink/src/main/resources/bootstrap.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -spring: - cloud: - channels: - group: testtock - name: logger - index: 1 - # uncomment below to have this module consume from a specific partition - # in the range of 0 to N-1, where N is the upstream module's partitionCount - #consumerProperties: - # partitionIndex: 1 diff --git a/spring-xd-samples/sink/src/main/resources/config/logger.properties b/spring-xd-samples/sink/src/main/resources/config/logger.properties deleted file mode 100644 index cfa03fa2f..000000000 --- a/spring-xd-samples/sink/src/main/resources/config/logger.properties +++ /dev/null @@ -1,2 +0,0 @@ -options_class = config.LogSinkOptionsMetadata -base_packages = config \ No newline at end of file diff --git a/spring-xd-samples/sink/src/test/java/demo/ModuleApplicationTests.java b/spring-xd-samples/sink/src/test/java/demo/ModuleApplicationTests.java deleted file mode 100644 index f2d65e89f..000000000 --- a/spring-xd-samples/sink/src/test/java/demo/ModuleApplicationTests.java +++ /dev/null @@ -1,20 +0,0 @@ -package demo; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.test.annotation.DirtiesContext; -import org.springframework.test.context.web.WebAppConfiguration; -import org.springframework.boot.test.SpringApplicationConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -@RunWith(SpringJUnit4ClassRunner.class) -@SpringApplicationConfiguration(classes = SinkApplication.class) -@WebAppConfiguration -@DirtiesContext -public class ModuleApplicationTests { - - @Test - public void contextLoads() { - } - -} diff --git a/spring-xd-samples/source/pom.xml b/spring-xd-samples/source/pom.xml deleted file mode 100644 index 5138ae2fc..000000000 --- a/spring-xd-samples/source/pom.xml +++ /dev/null @@ -1,60 +0,0 @@ - - - 4.0.0 - - org.springframework.cloud - spring-xd-module-runner-sample-source - 1.0.0.BUILD-SNAPSHOT - jar - - spring-xd-module-runner-sample-source - Demo project for Spring XD module - - - org.springframework.cloud - spring-xd-samples - 1.0.0.BUILD-SNAPSHOT - - - - UTF-8 - demo.SourceApplication - 1.8 - - - - - org.springframework.cloud - spring-xd-runner - - - org.springframework.xd - spring-xd-messagebus-redis - - - org.springframework.boot - spring-boot-configuration-processor - true - - - org.springframework.boot - spring-boot-starter-redis - - - org.springframework.boot - spring-boot-starter-test - test - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - diff --git a/spring-xd-samples/source/src/main/java/config/ModuleDefinition.java b/spring-xd-samples/source/src/main/java/config/ModuleDefinition.java deleted file mode 100644 index a505d26e4..000000000 --- a/spring-xd-samples/source/src/main/java/config/ModuleDefinition.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright 2015 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package config; - -import java.text.SimpleDateFormat; -import java.util.Date; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.cloud.streams.annotation.EnableModule; -import org.springframework.cloud.streams.annotation.Output; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.integration.annotation.InboundChannelAdapter; -import org.springframework.integration.annotation.Poller; -import org.springframework.integration.channel.DirectChannel; -import org.springframework.integration.core.MessageSource; -import org.springframework.messaging.MessageChannel; -import org.springframework.messaging.support.GenericMessage; - -/** - * @author Dave Syer - * @author Marius Bogoevici - */ -@EnableModule -public class ModuleDefinition { - - @Value("${format}") - private String format; - - @Output - public MessageChannel output; - - @Bean - @InboundChannelAdapter(value = "output", autoStartup = "false", - poller = @Poller(fixedDelay = "${fixedDelay}", maxMessagesPerPoll = "1")) - public MessageSource timerMessageSource() { - return () -> new GenericMessage<>(new SimpleDateFormat(format).format(new Date())); - } - -} diff --git a/spring-xd-samples/source/src/main/java/config/TimeSourceOptionsMetadata.java b/spring-xd-samples/source/src/main/java/config/TimeSourceOptionsMetadata.java deleted file mode 100644 index fd645b5b4..000000000 --- a/spring-xd-samples/source/src/main/java/config/TimeSourceOptionsMetadata.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright 2013-2015 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package config; - -import org.springframework.xd.module.options.mixins.MaxMessagesDefaultOneMixin; -import org.springframework.xd.module.options.mixins.PeriodicTriggerMixin; -import org.springframework.xd.module.options.spi.Mixin; -import org.springframework.xd.module.options.spi.ModuleOption; -import org.springframework.xd.module.options.validation.DateFormat; - -/** - * Describes options to the {@code time} source module. - * - * @author Eric Bottard - * @author Gary Russell - */ -@Mixin({ PeriodicTriggerMixin.class, MaxMessagesDefaultOneMixin.class }) -public class TimeSourceOptionsMetadata { - - private String format = "yyyy-MM-dd HH:mm:ss"; - - private int fixedDelay = 1; - - - @DateFormat - public String getFormat() { - return format; - } - - @ModuleOption("how to render the current time, using SimpleDateFormat") - public void setFormat(String format) { - this.format = format; - } - - - public int getFixedDelay() { - return fixedDelay; - } - - - @ModuleOption("time delay between messages, expressed in TimeUnits (seconds by default)") - public void setFixedDelay(int fixedDelay) { - this.fixedDelay = fixedDelay; - } - - -} diff --git a/spring-xd-samples/source/src/main/java/demo/SourceApplication.java b/spring-xd-samples/source/src/main/java/demo/SourceApplication.java deleted file mode 100644 index 4b54973cd..000000000 --- a/spring-xd-samples/source/src/main/java/demo/SourceApplication.java +++ /dev/null @@ -1,19 +0,0 @@ -package demo; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.cloud.streams.annotation.EnableModule; -import org.springframework.context.annotation.ComponentScan; - -import config.ModuleDefinition; - -@SpringBootApplication -@EnableModule -@ComponentScan(basePackageClasses=ModuleDefinition.class) -public class SourceApplication { - - public static void main(String[] args) throws InterruptedException { - SpringApplication.run(SourceApplication.class, args); - } - -} diff --git a/spring-xd-samples/source/src/main/resources/application.yml b/spring-xd-samples/source/src/main/resources/application.yml deleted file mode 100644 index daf5166e5..000000000 --- a/spring-xd-samples/source/src/main/resources/application.yml +++ /dev/null @@ -1 +0,0 @@ -fixedDelay: 5000 diff --git a/spring-xd-samples/source/src/main/resources/bootstrap.yml b/spring-xd-samples/source/src/main/resources/bootstrap.yml deleted file mode 100644 index 4d4899f20..000000000 --- a/spring-xd-samples/source/src/main/resources/bootstrap.yml +++ /dev/null @@ -1,12 +0,0 @@ ---- -spring: - cloud: - channels: - group: testtock - name: ticker - # uncomment below to use the last digit of the seconds as a partition key - # hashcode(key) % N is then applied with N being the partitionCount value - # thus, even seconds should go to the 0 queue, odd seconds to the 1 queue - #producerProperties: - # partitionKeyExpression: payload.charAt(payload.length()-1) - # partitionCount: 2 diff --git a/spring-xd-samples/source/src/main/resources/config/ticker.properties b/spring-xd-samples/source/src/main/resources/config/ticker.properties deleted file mode 100644 index 9fb4a6b77..000000000 --- a/spring-xd-samples/source/src/main/resources/config/ticker.properties +++ /dev/null @@ -1,2 +0,0 @@ -options_class = config.TimeSourceOptionsMetadata -base_packages = config \ No newline at end of file diff --git a/spring-xd-samples/source/src/test/java/demo/ModuleApplicationTests.java b/spring-xd-samples/source/src/test/java/demo/ModuleApplicationTests.java deleted file mode 100644 index 23a9cf3b0..000000000 --- a/spring-xd-samples/source/src/test/java/demo/ModuleApplicationTests.java +++ /dev/null @@ -1,20 +0,0 @@ -package demo; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.test.annotation.DirtiesContext; -import org.springframework.test.context.web.WebAppConfiguration; -import org.springframework.boot.test.SpringApplicationConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -@RunWith(SpringJUnit4ClassRunner.class) -@SpringApplicationConfiguration(classes = SourceApplication.class) -@WebAppConfiguration -@DirtiesContext -public class ModuleApplicationTests { - - @Test - public void contextLoads() { - } - -} diff --git a/spring-xd-samples/tap/src/main/resources/application.yml b/spring-xd-samples/tap/src/main/resources/application.yml deleted file mode 100644 index 11e54c544..000000000 --- a/spring-xd-samples/tap/src/main/resources/application.yml +++ /dev/null @@ -1,2 +0,0 @@ -server: - port: 8081