INTSAMPLES-54 - Update README.md

* Update README.md to reflect correct classes
* Add documentation for Delayer application
* Add JavaDoc for delayer application
* Delete redundant *src/main/resources/log4j.properties*
* Add logger name to *Logging Channel Adapter* configuration
* Add Maven Exec Maven Plugin for easy execution from the command line
This commit is contained in:
Gunnar Hillert
2012-02-10 12:02:55 -05:00
parent 4dc47bf2f7
commit 43b85119c8
6 changed files with 69 additions and 18 deletions

View File

@@ -1,8 +1,37 @@
Hello World Sample
==================
This is an obvious place to get started. It demonstrates a simple message flow represented by the diagram below:
This is an obvious place to get started. This sample project contains 2 basic sample applications:
Message -> Channel -> ServiceActivator -> QueueChannel
* Hello World
* Delayer Application
## Hello World
The Hello World application demonstrates a simple message flow represented by the diagram below:
Message -> Channel -> ServiceActivator -> QueueChannel
To run the sample simply execute **HelloWorldApp** in package **org.springframework.integration.samples.helloworld**. You can also execute that class using the [Exec Maven Plugin](http://mojo.codehaus.org/exec-maven-plugin/):
$ mvn clean package exec:java -P hello
You should see the following output:
INFO : org.springframework.integration.samples.helloworld.HelloWorldApp - ==> HelloWorldDemo: Hello World
## Delayer Application
This simple application will print out the current system time twice every 20 seconds.
More specifically, an **Inbound Channel Adapter** polls for the current system time 2 times every 20 seconds (20000 milliseconds). The resulting message contains as payload the time in milliseconds and the message is sent to a **Logging Channel Adapter**, which will print the time to the command prompt.
To run the sample simply execute **DelayerApp** in package **org.springframework.integration.samples.helloworld**. You can also execute that class using the [Exec Maven Plugin](http://mojo.codehaus.org/exec-maven-plugin/):
$ mvn clean package exec:java -P delayer
You should see output like the following:
INFO : org.springframework.integration.samples.helloworld - 1328892135471
INFO : org.springframework.integration.samples.helloworld - 1328892135524
To run sample simply execute a test case in the **org.springframework.integration.samples.helloworld** package.

View File

@@ -12,7 +12,24 @@
<spring.integration.version>2.1.0.RELEASE</spring.integration.version>
<log4j.version>1.2.16</log4j.version>
<junit.version>4.10</junit.version>
<java.main.class>org.springframework.integration.samples.helloworld.HelloWorldApp</java.main.class>
</properties>
<profiles>
<profile>
<id>hello</id>
<properties>
<java.main.class>org.springframework.integration.samples.helloworld.HelloWorldApp</java.main.class>
</properties>
</profile>
<profile>
<id>delayer</id>
<properties>
<java.main.class>org.springframework.integration.samples.helloworld.DelayerApp</java.main.class>
</properties>
</profile>
</profiles>
<dependencies>
<dependency>
<groupId>org.springframework.integration</groupId>
@@ -45,6 +62,14 @@
<showDeprecation>false</showDeprecation>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2</version>
<configuration>
<mainClass>${java.main.class}</mainClass>
</configuration>
</plugin>
</plugins>
</build>
<repositories>

View File

@@ -5,11 +5,17 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
public class DelayerApp {
/**
* @param args
* Simple application that polls the current system time 2 times every
* 20 seconds (20000 milliseconds).
*
* The resulting message contains the time in milliseconds and the message
* is routed to a Logging Channel Adapter which will print the time to the
* command prompt.
*
* @param args Not used.
*/
public static void main(String[] args) throws Exception{
new ClassPathXmlApplicationContext("META-INF/spring/integration/delay.xml");
System.in.read();
}
}

View File

@@ -11,8 +11,8 @@
<int:inbound-channel-adapter expression="T(java.lang.System).currentTimeMillis()" channel="logger">
<int:poller fixed-delay="20000" max-messages-per-poll="2" />
</int:inbound-channel-adapter>
<int:logging-channel-adapter id="logger"/>
<int:logging-channel-adapter id="logger" logger-name="org.springframework.integration.samples.helloworld"/>
<task:executor id="executor" queue-capacity="20" pool-size="5-20"/>
</beans>

View File

@@ -1,9 +0,0 @@
log4j.rootCategory=WARN, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %t %c{2}:%L - %m%n
#log4j.category.org.springframework=WARN
#log4j.category.org.springframework.integration.sftp=TRACE
log4j.category.org.springframework=TRACE

View File

@@ -24,5 +24,5 @@
<priority value="warn" />
<appender-ref ref="console" />
</root>
</log4j:configuration>