/**
|
* Copyright 2005-2016 Red Hat, Inc.
|
*
|
* Red Hat licenses this file to you 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 com.redhat.training.do288.examples;
|
|
import org.apache.camel.builder.RouteBuilder;
|
import org.springframework.boot.SpringApplication;
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
import org.springframework.context.annotation.ImportResource;
|
import org.apache.camel.model.rest.RestBindingMode;
|
|
|
@SpringBootApplication
|
@ImportResource({"classpath:spring/camel-context.xml"})
|
public class Application extends RouteBuilder {
|
|
// must have a main method spring-boot can run
|
public static void main(String[] args) {
|
SpringApplication.run(Application.class, args);
|
}
|
|
@Override
|
public void configure() throws Exception {
|
|
restConfiguration().component("restlet").host("0.0.0.0").port(9081).bindingMode(RestBindingMode.auto);
|
|
rest("/hello").get("{name}").produces("text/xml").to("direct:sayHello");
|
|
from("direct:sayHello").routeId("HewlloWS-get")
|
.setBody().simple("<message>\n"+
|
" <greeting>Hello, ${header.name} </greeting>\n"+
|
" <server>"+System.getenv("HOSTNAME")+"</server>\n"+
|
"</message>\n"
|
);
|
|
}
|
}
|