Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoakim Erdfelt2013-07-16 23:56:03 +0000
committerJoakim Erdfelt2013-07-16 23:56:03 +0000
commite69b41e9cdb3c1d10a426adc3a6d474aeaeb2bab (patch)
tree6c8b5827d5eecc1ce9adadd4ca2fdee1bde44ba5 /jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java
parentba50e6b053c91928c50cfbcc7d0157445670e51e (diff)
downloadorg.eclipse.jetty.project-e69b41e9cdb3c1d10a426adc3a6d474aeaeb2bab.tar.gz
org.eclipse.jetty.project-e69b41e9cdb3c1d10a426adc3a6d474aeaeb2bab.tar.xz
org.eclipse.jetty.project-e69b41e9cdb3c1d10a426adc3a6d474aeaeb2bab.zip
JSR-356 Adding suppport for @PathParam
Diffstat (limited to 'jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java')
-rw-r--r--jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java17
1 files changed, 13 insertions, 4 deletions
diff --git a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java
index e10995a63c..6020ab4f48 100644
--- a/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java
+++ b/jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java
@@ -40,11 +40,20 @@ public class JsrServerEndpointImpl implements EventDriverImpl
{
throw new IllegalStateException(String.format("Websocket %s must be an %s",websocket.getClass().getName(),EndpointInstance.class.getName()));
}
-
+
EndpointInstance ei = (EndpointInstance)websocket;
AnnotatedServerEndpointMetadata metadata = (AnnotatedServerEndpointMetadata)ei.getMetadata();
- JsrEvents<ServerEndpoint,ServerEndpointConfig> events = new JsrEvents<>(metadata);
- return new JsrAnnotatedEventDriver(policy,ei,events);
+ JsrEvents<ServerEndpoint, ServerEndpointConfig> events = new JsrEvents<>(metadata);
+ JsrAnnotatedEventDriver driver = new JsrAnnotatedEventDriver(policy,ei,events);
+
+ ServerEndpointConfig config = (ServerEndpointConfig)ei.getConfig();
+ if (config instanceof PathParamServerEndpointConfig)
+ {
+ PathParamServerEndpointConfig ppconfig = (PathParamServerEndpointConfig)config;
+ driver.setRequestParameters(ppconfig.getPathParamMap());
+ }
+
+ return driver;
}
@Override
@@ -60,7 +69,7 @@ public class JsrServerEndpointImpl implements EventDriverImpl
{
return false;
}
-
+
EndpointInstance ei = (EndpointInstance)websocket;
Object endpoint = ei.getEndpoint();

Back to the top