diff options
author | Joakim Erdfelt | 2013-07-16 23:56:03 +0000 |
---|---|---|
committer | Joakim Erdfelt | 2013-07-16 23:56:03 +0000 |
commit | e69b41e9cdb3c1d10a426adc3a6d474aeaeb2bab (patch) | |
tree | 6c8b5827d5eecc1ce9adadd4ca2fdee1bde44ba5 /jetty-websocket/javax-websocket-server-impl/src/main/java/org/eclipse/jetty/websocket/jsr356/server/JsrServerEndpointImpl.java | |
parent | ba50e6b053c91928c50cfbcc7d0157445670e51e (diff) | |
download | org.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.java | 17 |
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(); |