From a97acde67b14b2f69b2a78b03ed6d63d6efeacdd Mon Sep 17 00:00:00 2001 From: Gary Russell Date: Sun, 7 Sep 2014 11:10:36 -0500 Subject: [PATCH] SpringOne 2014 XML to @Config (A-E) AXML thru EDSL. FMail is the same as EDSL with placeholders GIMAP is empty --- build.gradle | 10 +- dsl/si4demo/README.md | 46 +++++++- .../si4demo/springone/GMailProperties.java | 49 +++++++++ .../samples/si4demo/springone/a/AXML.java | 40 +++++++ .../si4demo/springone/b/BXMLAndPojo.java | 59 ++++++++++ .../samples/si4demo/springone/c/CNoXML.java | 103 ++++++++++++++++++ .../samples/si4demo/springone/d/DBoot.java | 101 +++++++++++++++++ .../samples/si4demo/springone/e/EDSL.java | 69 ++++++++++++ .../samples/si4demo/springone/f/FMail.java | 67 ++++++++++++ .../samples/si4demo/springone/g/GIMAP.java | 55 ++++++++++ .../src/main/resources/AXML-context.xml | 24 ++++ .../main/resources/BXMLAndPojo-context.xml | 22 ++++ .../src/main/resources/application.yml | 12 +- dsl/si4demo/src/main/resources/logback.xml | 14 +++ 14 files changed, 663 insertions(+), 8 deletions(-) create mode 100644 dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/GMailProperties.java create mode 100644 dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/a/AXML.java create mode 100644 dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/b/BXMLAndPojo.java create mode 100644 dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/c/CNoXML.java create mode 100644 dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/d/DBoot.java create mode 100644 dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/e/EDSL.java create mode 100644 dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/f/FMail.java create mode 100644 dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/g/GIMAP.java create mode 100644 dsl/si4demo/src/main/resources/AXML-context.xml create mode 100644 dsl/si4demo/src/main/resources/BXMLAndPojo-context.xml create mode 100644 dsl/si4demo/src/main/resources/logback.xml diff --git a/build.gradle b/build.gradle index a1d7fb04..371cb19d 100644 --- a/build.gradle +++ b/build.gradle @@ -520,13 +520,21 @@ project('si4demo') { dependencies { compile 'org.springframework.boot:spring-boot-starter-web' compile 'org.springframework.boot:spring-boot-starter-integration' - compile "org.springframework.integration:spring-integration-twitter:$springIntegrationVersion" + compile "org.springframework.integration:spring-integration-mail:$springIntegration41Version" + compile "org.springframework.integration:spring-integration-twitter:$springIntegration41Version" compile "org.springframework.integration:spring-integration-java-dsl:$springIntegrationDslVersion" + compile "javax.mail:javax.mail-api:$javaxMailVersion" + compile "com.sun.mail:javax.mail:$javaxMailVersion" + compile "com.sun.mail:smtp:$javaxMailVersion" + compile "com.sun.mail:pop3:$javaxMailVersion" + compile "com.sun.mail:imap:$javaxMailVersion" + compile "com.rometools:rome:1.5.0" testCompile 'org.springframework.boot:spring-boot-starter-test' } mainClassName = 'org.springframework.integration.samples.si4demo.dsl.Application' + } project('cafe-dsl') { diff --git a/dsl/si4demo/README.md b/dsl/si4demo/README.md index 05e100bf..2e3ffffa 100644 --- a/dsl/si4demo/README.md +++ b/dsl/si4demo/README.md @@ -1,9 +1,7 @@ -#Spring Integration 4.0 Java Config/DSL Demo +#Spring Integration 4.0/4.1 Java Config/DSL Demo This sample is the demo used in the [Spring Integration 4.0 Webinar](https://spring.io/blog/2014/05/15/webinar-replay-spring-integration-4-0-the-new-frontier) -It's currently using the spring-boot 1.1.0.M1 milestone so you may have to add the __repo.spring.io/repo__ repository to your settings.xml. - There are two demo applications: __org.springframework.integration.samples.javaconfig.annotations.Application__ is a Spring Boot application using @@ -37,3 +35,45 @@ Twitter now requires authentication to perform searches; visit the [twitter deve accessTokenSecret: +Additional examples were added to this project at __SpringOne2GX 2014__ - see the __springone__ package. + +This demonstrates moving from completely XML configuration, through Java Configuration, and ultimately to the DSL. + +##AXML + +This example is pure XML - it's a simple flow... + + gateway -> transformer -> service-activator + +The transformer concatentates the payload to itself (String), the service upper cases the payload. The result is returned to the gateway. "foo" becomes "FOOFOO". + +##BXMLAndPojo + +This takes the same example and shows how to configure it using "classic" Spring Integration annotations, available since 2.0. + +##CNoXML + +This takes the same example and configures it using standard Java Configuration (available since 4.0). Many of the standard annotations are now available on __@Bean__ definitions; note that the output channel must be configured on the handler, not the annotation. __@IntegrationComponentScan__ detects __@MessagingGateway__ interfaces and creates gateways. + +##DBoot + +This takes the same example as __C...__ and configures it using Spring Boot. The configuration is slightly more concise. + +Note: Other applications in this project use the embedded web server (for http adapters). The boot apps in this section disable the embedded server by using the __SpringApplicationBuilder__ ... + + new SpringApplicationBuilder(DBoot.class) + .web(false) + .run(args); + +##EDSL + +This takes the same example and configures it using the Spring Integration Java DSL. It requires Spring Integration 4.1.0.M1 and DSL 1.0.0.M3. + +##FMail + +This adds a recipient list router and sends a copy of the payload to an SMTP Email server (add credentials to __application.yml__). + +##GIMAP + +This is a separate application that demonstrates the DSL configuring an IMAP idle channel adapter, to receive emails sent by __FEmail__. + diff --git a/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/GMailProperties.java b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/GMailProperties.java new file mode 100644 index 00000000..78ef5e4f --- /dev/null +++ b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/GMailProperties.java @@ -0,0 +1,49 @@ +/* + * 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 org.springframework.integration.samples.si4demo.springone; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +/** + * @author Gary Russell + * + */ +@Component +@ConfigurationProperties(prefix="gmail") +public class GMailProperties { + + private String user; + + private String password; + + public String getUser() { + return user; + } + + public void setUser(String user) { + this.user = user; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + +} diff --git a/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/a/AXML.java b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/a/AXML.java new file mode 100644 index 00000000..902b106a --- /dev/null +++ b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/a/AXML.java @@ -0,0 +1,40 @@ +/* + * 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 org.springframework.integration.samples.si4demo.springone.a; + +import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +/** + * + * @author Gary Russell + * + */ +public class AXML { + + public static void main(String[] args) throws Exception { + ConfigurableApplicationContext ctx = + new ClassPathXmlApplicationContext("AXML-context.xml"); + System.out.println(ctx.getBean(FooService.class).foo("foo")); + ctx.close(); + } + + public static interface FooService { + + String foo(String request); + + } +} diff --git a/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/b/BXMLAndPojo.java b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/b/BXMLAndPojo.java new file mode 100644 index 00000000..be62c7f3 --- /dev/null +++ b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/b/BXMLAndPojo.java @@ -0,0 +1,59 @@ +/* + * 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 org.springframework.integration.samples.si4demo.springone.b; + +import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; +import org.springframework.integration.annotation.MessageEndpoint; +import org.springframework.integration.annotation.ServiceActivator; +import org.springframework.integration.annotation.Transformer; + +/** + * + * @author Gary Russell + * + */ +public class BXMLAndPojo { + + public static void main(String[] args) throws Exception { + ConfigurableApplicationContext ctx = + new ClassPathXmlApplicationContext("BXMLAndPojo-context.xml"); + System.out.println(ctx.getBean(FooService.class).foo("foo")); + ctx.close(); + } + + public static interface FooService { + + String foo(String request); + + } + + @MessageEndpoint + public static class MyComponents { + + @Transformer(inputChannel="foo", outputChannel="bar") + public String transform(String foo) { + return foo + foo; + } + + @ServiceActivator(inputChannel="bar") + public String service(String foo) { + return foo.toUpperCase(); + } + + } + +} diff --git a/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/c/CNoXML.java b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/c/CNoXML.java new file mode 100644 index 00000000..717851dc --- /dev/null +++ b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/c/CNoXML.java @@ -0,0 +1,103 @@ +/* + * 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 org.springframework.integration.samples.si4demo.springone.c; + +import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.context.annotation.AnnotationConfigApplicationContext; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.integration.annotation.IntegrationComponentScan; +import org.springframework.integration.annotation.MessagingGateway; +import org.springframework.integration.annotation.ServiceActivator; +import org.springframework.integration.annotation.Transformer; +import org.springframework.integration.channel.DirectChannel; +import org.springframework.integration.config.EnableIntegration; +import org.springframework.integration.handler.ServiceActivatingHandler; +import org.springframework.integration.transformer.MessageTransformingHandler; +import org.springframework.integration.transformer.MethodInvokingTransformer; +import org.springframework.messaging.MessageChannel; +import org.springframework.messaging.MessageHandler; + +/** + * + * @author Gary Russell + * + */ +public class CNoXML { + + public static void main(String[] args) throws Exception { + ConfigurableApplicationContext ctx = + new AnnotationConfigApplicationContext(CConfig.class); + System.out.println(ctx.getBean(FooService.class).foo("foo")); + ctx.close(); + } + + @MessagingGateway(defaultRequestChannel="foo") + public static interface FooService { + + String foo(String request); + + } + + @Configuration + @EnableIntegration + @IntegrationComponentScan + public static class CConfig { + + @Bean + public MessageChannel foo() { + return new DirectChannel(); + } + + @Transformer(inputChannel="foo") + @Bean + public MessageHandler transform() { + MessageTransformingHandler transformingHandler = new MessageTransformingHandler(new MethodInvokingTransformer(helpers(), "duplicate")); + transformingHandler.setOutputChannel(bar()); + return transformingHandler; + } + + @Bean + public MessageChannel bar() { + return new DirectChannel(); + } + + @ServiceActivator(inputChannel="bar") + @Bean + public MessageHandler service() { + return new ServiceActivatingHandler(new MethodInvokingTransformer(helpers(), "upper")); + } + + @Bean + public MyHelpers helpers() { + return new MyHelpers(); + } + + } + + public static class MyHelpers { + + public String duplicate(String foo) { + return foo + foo; + } + + public String upper(String foo) { + return foo.toUpperCase(); + } + + } + +} diff --git a/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/d/DBoot.java b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/d/DBoot.java new file mode 100644 index 00000000..3d3ef955 --- /dev/null +++ b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/d/DBoot.java @@ -0,0 +1,101 @@ +/* + * 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 org.springframework.integration.samples.si4demo.springone.d; + +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.integration.annotation.IntegrationComponentScan; +import org.springframework.integration.annotation.MessagingGateway; +import org.springframework.integration.annotation.ServiceActivator; +import org.springframework.integration.annotation.Transformer; +import org.springframework.integration.channel.DirectChannel; +import org.springframework.integration.handler.ServiceActivatingHandler; +import org.springframework.integration.transformer.MessageTransformingHandler; +import org.springframework.integration.transformer.MethodInvokingTransformer; +import org.springframework.messaging.MessageChannel; +import org.springframework.messaging.MessageHandler; + +/** + * + * @author Gary Russell + * + */ +@Configuration +@EnableAutoConfiguration +@IntegrationComponentScan +public class DBoot { + + public static void main(String[] args) throws Exception { + ConfigurableApplicationContext ctx = + new SpringApplicationBuilder(DBoot.class) + .web(false) + .run(args); + System.out.println(ctx.getBean(FooService.class).foo("foo")); + ctx.close(); + } + + @MessagingGateway(defaultRequestChannel="foo") + public static interface FooService { + + String foo(String request); + + } + + @Bean + public MessageChannel foo() { + return new DirectChannel(); + } + + @Transformer(inputChannel="foo") + @Bean + public MessageHandler transform() { + MessageTransformingHandler transformingHandler = new MessageTransformingHandler(new MethodInvokingTransformer(helpers(), "duplicate")); + transformingHandler.setOutputChannel(bar()); + return transformingHandler; + } + + @Bean + public MessageChannel bar() { + return new DirectChannel(); + } + + @ServiceActivator(inputChannel="bar") + @Bean + public MessageHandler service() { + return new ServiceActivatingHandler(new MethodInvokingTransformer(helpers(), "upper")); + } + + @Bean + public MyHelpers helpers() { + return new MyHelpers(); + } + + public static class MyHelpers { + + public String duplicate(String foo) { + return foo + foo; + } + + public String upper(String foo) { + return foo.toUpperCase(); + } + + } + +} diff --git a/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/e/EDSL.java b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/e/EDSL.java new file mode 100644 index 00000000..b071d388 --- /dev/null +++ b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/e/EDSL.java @@ -0,0 +1,69 @@ +/* + * 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 org.springframework.integration.samples.si4demo.springone.e; + +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.integration.annotation.IntegrationComponentScan; +import org.springframework.integration.annotation.MessagingGateway; +import org.springframework.integration.channel.DirectChannel; +import org.springframework.integration.dsl.IntegrationFlow; +import org.springframework.integration.dsl.IntegrationFlows; +import org.springframework.messaging.MessageChannel; + +/** + * + * @author Gary Russell + * + */ +@Configuration +@EnableAutoConfiguration +@IntegrationComponentScan +public class EDSL { + + public static void main(String[] args) throws Exception { + ConfigurableApplicationContext ctx = + new SpringApplicationBuilder(EDSL.class) + .web(false) + .run(args); + System.out.println(ctx.getBean(FooService.class).foo("foo")); + ctx.close(); + } + + @MessagingGateway(defaultRequestChannel="foo") + public static interface FooService { + + String foo(String request); + + } + + @Bean + public MessageChannel foo() { + return new DirectChannel(); + } + + @Bean + IntegrationFlow flow() { + return IntegrationFlows.from(foo()) + .transform("payload + payload") + .handle(String.class, (p, h) -> p.toUpperCase()) + .get(); + } + +} diff --git a/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/f/FMail.java b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/f/FMail.java new file mode 100644 index 00000000..40bc3d0f --- /dev/null +++ b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/f/FMail.java @@ -0,0 +1,67 @@ +/* + * 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 org.springframework.integration.samples.si4demo.springone.f; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.integration.annotation.IntegrationComponentScan; +import org.springframework.integration.annotation.MessagingGateway; +import org.springframework.integration.dsl.IntegrationFlow; +import org.springframework.integration.samples.si4demo.springone.GMailProperties; + +/** + * + * @author Gary Russell + * + */ +@Configuration +@EnableConfigurationProperties(GMailProperties.class) +@EnableAutoConfiguration +@IntegrationComponentScan +public class FMail { + + @Autowired + GMailProperties gmail; + + public static void main(String[] args) throws Exception { + ConfigurableApplicationContext ctx = + SpringApplication.run(FMail.class); + System.out.println(ctx.getBean(FooService.class).foo("foo")); + ctx.close(); + } + + @MessagingGateway(defaultRequestChannel="foo.input") + public static interface FooService { + + String foo(String request); + + } + + @Bean + IntegrationFlow foo() { + return f -> f + .transform("payload + payload") + .handle(String.class, (p, h) -> p.toUpperCase()) + //RLR + ; + } + +} diff --git a/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/g/GIMAP.java b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/g/GIMAP.java new file mode 100644 index 00000000..ac93156a --- /dev/null +++ b/dsl/si4demo/src/main/java/org/springframework/integration/samples/si4demo/springone/g/GIMAP.java @@ -0,0 +1,55 @@ +/* + * 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 org.springframework.integration.samples.si4demo.springone.g; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.integration.dsl.IntegrationFlow; +import org.springframework.integration.samples.si4demo.springone.GMailProperties; + +/** + * + * @author Gary Russell + * + */ +@Configuration +@EnableConfigurationProperties(GMailProperties.class) + +@EnableAutoConfiguration +public class GIMAP { + + @Autowired + GMailProperties gmail; + + public static void main(String[] args) throws Exception { + ConfigurableApplicationContext ctx = + SpringApplication.run(GIMAP.class); + System.out.println("Hit Enter to terminate"); + System.in.read(); + ctx.close(); + } + + @Bean + IntegrationFlow imapIdle() { + return null; + } + +} diff --git a/dsl/si4demo/src/main/resources/AXML-context.xml b/dsl/si4demo/src/main/resources/AXML-context.xml new file mode 100644 index 00000000..fb71889f --- /dev/null +++ b/dsl/si4demo/src/main/resources/AXML-context.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + diff --git a/dsl/si4demo/src/main/resources/BXMLAndPojo-context.xml b/dsl/si4demo/src/main/resources/BXMLAndPojo-context.xml new file mode 100644 index 00000000..2a1c0e93 --- /dev/null +++ b/dsl/si4demo/src/main/resources/BXMLAndPojo-context.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + diff --git a/dsl/si4demo/src/main/resources/application.yml b/dsl/si4demo/src/main/resources/application.yml index 1e769b81..da687ee4 100644 --- a/dsl/si4demo/src/main/resources/application.yml +++ b/dsl/si4demo/src/main/resources/application.yml @@ -1,6 +1,10 @@ twitter: oauth: - consumerKey: - consumerSecret: - accessToken: - accessTokenSecret: + consumerKey: + consumerSecret: + accessToken: + accessTokenSecret: + + gmail: + user: + password: diff --git a/dsl/si4demo/src/main/resources/logback.xml b/dsl/si4demo/src/main/resources/logback.xml new file mode 100644 index 00000000..ac9982f0 --- /dev/null +++ b/dsl/si4demo/src/main/resources/logback.xml @@ -0,0 +1,14 @@ + + + + + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + \ No newline at end of file