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;
     }
+
 }


Reply via email to