Author: ningjiang Date: Fri Jun 15 14:44:07 2012 New Revision: 1350641 URL: http://svn.apache.org/viewvc?rev=1350641&view=rev Log: CAMEL-5371 create a new context per restlet server
Modified: camel/trunk/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletComponent.java Modified: camel/trunk/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletComponent.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletComponent.java?rev=1350641&r1=1350640&r2=1350641&view=diff ============================================================================== --- camel/trunk/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletComponent.java (original) +++ camel/trunk/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletComponent.java Fri Jun 15 14:44:07 2012 @@ -18,6 +18,7 @@ package org.apache.camel.component.restl import java.net.URI; import java.util.ArrayList; +import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -188,14 +189,19 @@ public class RestletComponent extends He return result; } } + + protected Server createServer(RestletEndpoint endpoint) { + return new Server(component.getContext().createChildContext(), Protocol.valueOf(endpoint.getProtocol()), endpoint.getPort()); + } - private void addServerIfNecessary(RestletEndpoint endpoint) throws Exception { + protected void addServerIfNecessary(RestletEndpoint endpoint) throws Exception { String key = buildKey(endpoint); Server server; synchronized (servers) { server = servers.get(key); if (server == null) { - server = component.getServers().add(Protocol.valueOf(endpoint.getProtocol()), endpoint.getPort()); + server = createServer(endpoint); + component.getServers().add(server); // Add any Restlet server parameters that were included Series<Parameter> params = server.getContext().getParameters(); @@ -393,4 +399,5 @@ public class RestletComponent extends He public void setUseForwardedForHeader(Boolean useForwardedForHeader) { this.useForwardedForHeader = useForwardedForHeader; } + }