001 /**
002 * Licensed to the Apache Software Foundation (ASF) under one or more
003 * contributor license agreements. See the NOTICE file distributed with
004 * this work for additional information regarding copyright ownership.
005 * The ASF licenses this file to You under the Apache License, Version 2.0
006 * (the "License"); you may not use this file except in compliance with
007 * the License. You may obtain a copy of the License at
008 *
009 * http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 */
017 package org.apache.camel.example.spring;
018
019 import org.apache.camel.builder.RouteBuilder;
020 import org.apache.camel.spring.Main;
021
022 /**
023 * A simple example router from a file system to an ActiveMQ queue and then to a file system
024 *
025 * @version
026 */
027 public class MyRouteBuilder extends RouteBuilder {
028
029 /**
030 * Allow this route to be run as an application
031 */
032 public static void main(String[] args) throws Exception {
033 new Main().run(args);
034 }
035
036 public void configure() {
037 // populate the message queue with some messages
038 from("file:src/data?noop=true").
039 to("jms:test.MyQueue");
040
041 from("jms:test.MyQueue").
042 to("file://target/test?noop=true");
043
044 // set up a listener on the file component
045 from("file://target/test?noop=true").
046 bean(new SomeBean());
047 }
048
049 public static class SomeBean {
050
051 public void someMethod(String body) {
052 System.out.println("Received: " + body);
053 }
054 }
055
056 }