* Issue #3661 - review of exposed classes in jetty-websocket-server Signed-off-by: Lachlan Roberts <lachlan@webtide.com> * Issue #3762 - cleanups of jetty-websocket-server Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
This commit is contained in:
parent
60d8661890
commit
372ed1455f
|
@ -56,7 +56,7 @@ public class WebSocketServer
|
|||
@Override
|
||||
public void configure(JettyWebSocketServletFactory factory)
|
||||
{
|
||||
factory.addMapping(factory.parsePathSpec("/"), (req,res)->new EchoSocket());
|
||||
factory.addMapping("/", (req,res)->new EchoSocket());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -95,7 +95,7 @@
|
|||
<Item>org.eclipse.jetty.plus.webapp.EnvConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.webapp.JmxConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.osgi.annotations.AnnotationConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.server.JettyWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.server.config.JettyWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.javax.server.JavaxWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.osgi.boot.OSGiWebInfConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.osgi.boot.OSGiMetaInfConfiguration</Item>
|
||||
|
|
|
@ -81,7 +81,7 @@
|
|||
<Item>org.eclipse.jetty.plus.webapp.PlusConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.plus.webapp.EnvConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.webapp.JmxConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.server.JettyWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.server.config.JettyWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.javax.server.JavaxWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.osgi.annotations.AnnotationConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.osgi.boot.OSGiWebInfConfiguration</Item>
|
||||
|
|
|
@ -84,7 +84,7 @@
|
|||
<Item>org.eclipse.jetty.plus.webapp.EnvConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.webapp.JmxConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.osgi.annotations.AnnotationConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.server.JettyWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.server.config.JettyWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.javax.server.JavaxWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.osgi.boot.OSGiWebInfConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.osgi.boot.OSGiMetaInfConfiguration</Item>
|
||||
|
|
|
@ -273,7 +273,7 @@ public class LocalServer extends ContainerLifeCycle implements LocalFuzzer.Provi
|
|||
}
|
||||
|
||||
@Override
|
||||
public FrameHandlerFactory getFactory()
|
||||
protected FrameHandlerFactory getFactory()
|
||||
{
|
||||
return factory;
|
||||
}
|
||||
|
|
|
@ -72,11 +72,7 @@
|
|||
<extensions>true</extensions>
|
||||
<configuration>
|
||||
<instructions>
|
||||
<Bundle-Description>Websocket Server API</Bundle-Description>
|
||||
<Bundle-Classpath/>
|
||||
<DynamicImport-Package>
|
||||
org.eclipse.jetty.websocket.server.*;version="${parsedVersion.majorVersion}.${parsedVersion.minorVersion}",org.eclipse.jetty.websocket.server.pathmap.*;version="${parsedVersion.majorVersion}.${parsedVersion.minorVersion}"
|
||||
</DynamicImport-Package>
|
||||
<Bundle-Description>Jetty Websocket Server</Bundle-Description>
|
||||
<Require-Capability>osgi.extender; filter:="(osgi.extender=osgi.serviceloader.registrar)";resolution:=optional</Require-Capability>
|
||||
<Provide-Capability>
|
||||
osgi.serviceloader;osgi.serviceloader=org.eclipse.jetty.webapp.Configuration,osgi.serviceloader;osgi.serviceloader=javax.servlet.ServletContainerInitializer
|
||||
|
|
|
@ -19,8 +19,8 @@
|
|||
import javax.servlet.ServletContainerInitializer;
|
||||
|
||||
import org.eclipse.jetty.webapp.Configuration;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketConfiguration;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketConfiguration;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
|
||||
module org.eclipse.jetty.websocket.jetty.server
|
||||
{
|
||||
|
|
|
@ -43,7 +43,7 @@ public class JettyServerUpgradeRequest
|
|||
{
|
||||
private ServletUpgradeRequest upgradeRequest;
|
||||
|
||||
public JettyServerUpgradeRequest(ServletUpgradeRequest request)
|
||||
JettyServerUpgradeRequest(ServletUpgradeRequest request)
|
||||
{
|
||||
upgradeRequest = request;
|
||||
}
|
||||
|
|
|
@ -32,7 +32,7 @@ public class JettyServerUpgradeResponse
|
|||
{
|
||||
private ServletUpgradeResponse upgradeResponse;
|
||||
|
||||
public JettyServerUpgradeResponse(ServletUpgradeResponse response)
|
||||
JettyServerUpgradeResponse(ServletUpgradeResponse response)
|
||||
{
|
||||
upgradeResponse = response;
|
||||
}
|
||||
|
|
|
@ -42,6 +42,8 @@ import org.eclipse.jetty.websocket.common.WebSocketContainer;
|
|||
import org.eclipse.jetty.websocket.core.FrameHandler;
|
||||
import org.eclipse.jetty.websocket.core.WebSocketComponents;
|
||||
import org.eclipse.jetty.websocket.core.WebSocketException;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.internal.JettyServerFrameHandlerFactory;
|
||||
import org.eclipse.jetty.websocket.servlet.FrameHandlerFactory;
|
||||
import org.eclipse.jetty.websocket.servlet.WebSocketMapping;
|
||||
|
||||
|
@ -94,7 +96,7 @@ public class JettyWebSocketServerContainer extends ContainerLifeCycle implements
|
|||
* @param webSocketComponents the {@link WebSocketComponents} instance to use
|
||||
* @param executor the {@link Executor} to use
|
||||
*/
|
||||
public JettyWebSocketServerContainer(ServletContextHandler contextHandler, WebSocketMapping webSocketMapping, WebSocketComponents webSocketComponents, Executor executor)
|
||||
JettyWebSocketServerContainer(ServletContextHandler contextHandler, WebSocketMapping webSocketMapping, WebSocketComponents webSocketComponents, Executor executor)
|
||||
{
|
||||
this.webSocketMapping = webSocketMapping;
|
||||
this.webSocketComponents = webSocketComponents;
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
|
||||
package org.eclipse.jetty.websocket.server;
|
||||
|
||||
import org.eclipse.jetty.websocket.server.internal.JettyServerFrameHandlerFactory;
|
||||
import org.eclipse.jetty.websocket.servlet.FrameHandlerFactory;
|
||||
import org.eclipse.jetty.websocket.servlet.WebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory;
|
||||
|
@ -33,7 +34,7 @@ public abstract class JettyWebSocketServlet extends WebSocketServlet
|
|||
}
|
||||
|
||||
@Override
|
||||
public FrameHandlerFactory getFactory()
|
||||
protected FrameHandlerFactory getFactory()
|
||||
{
|
||||
JettyServerFrameHandlerFactory frameHandlerFactory = JettyServerFrameHandlerFactory.getFactory(getServletContext());
|
||||
|
||||
|
|
|
@ -22,17 +22,19 @@ import java.time.Duration;
|
|||
import java.util.Set;
|
||||
|
||||
import org.eclipse.jetty.http.pathmap.PathSpec;
|
||||
import org.eclipse.jetty.websocket.api.StatusCode;
|
||||
import org.eclipse.jetty.websocket.api.WebSocketBehavior;
|
||||
import org.eclipse.jetty.websocket.api.WebSocketPolicy;
|
||||
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest;
|
||||
import org.eclipse.jetty.websocket.servlet.ServletUpgradeResponse;
|
||||
import org.eclipse.jetty.websocket.servlet.WebSocketCreator;
|
||||
import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory;
|
||||
|
||||
|
||||
public class JettyWebSocketServletFactory
|
||||
public class JettyWebSocketServletFactory implements WebSocketPolicy
|
||||
{
|
||||
private WebSocketServletFactory factory;
|
||||
|
||||
public JettyWebSocketServletFactory(WebSocketServletFactory factory)
|
||||
JettyWebSocketServletFactory(WebSocketServletFactory factory)
|
||||
{
|
||||
this.factory = factory;
|
||||
}
|
||||
|
@ -42,81 +44,116 @@ public class JettyWebSocketServletFactory
|
|||
return factory.getExtensionRegistry().getAvailableExtensionNames();
|
||||
}
|
||||
|
||||
public Duration getIdleTimeout()
|
||||
@Override
|
||||
public WebSocketBehavior getBehavior()
|
||||
{
|
||||
return factory.getIdleTimeout();
|
||||
}
|
||||
|
||||
public void setIdleTimeout(Duration duration)
|
||||
{
|
||||
factory.setIdleTimeout(duration);
|
||||
}
|
||||
|
||||
public int getInputBufferSize()
|
||||
{
|
||||
return factory.getInputBufferSize();
|
||||
}
|
||||
|
||||
public void setInputBufferSize(int bufferSize)
|
||||
{
|
||||
factory.setInputBufferSize(bufferSize);
|
||||
}
|
||||
|
||||
public long getMaxFrameSize()
|
||||
{
|
||||
return factory.getMaxFrameSize();
|
||||
}
|
||||
|
||||
public void setMaxFrameSize(long maxFrameSize)
|
||||
{
|
||||
factory.setMaxFrameSize(maxFrameSize);
|
||||
}
|
||||
|
||||
public long getMaxBinaryMessageSize()
|
||||
{
|
||||
return factory.getMaxBinaryMessageSize();
|
||||
}
|
||||
|
||||
public void setMaxBinaryMessageSize(long bufferSize)
|
||||
{
|
||||
factory.setMaxBinaryMessageSize(bufferSize);
|
||||
}
|
||||
|
||||
public long getMaxTextMessageSize()
|
||||
{
|
||||
return factory.getMaxTextMessageSize();
|
||||
}
|
||||
|
||||
public void setMaxTextMessageSize(long bufferSize)
|
||||
{
|
||||
factory.setMaxTextMessageSize(bufferSize);
|
||||
}
|
||||
|
||||
public int getOutputBufferSize()
|
||||
{
|
||||
return factory.getOutputBufferSize();
|
||||
}
|
||||
|
||||
public void setOutputBufferSize(int bufferSize)
|
||||
{
|
||||
factory.setOutputBufferSize(bufferSize);
|
||||
return WebSocketBehavior.SERVER;
|
||||
}
|
||||
|
||||
/**
|
||||
* If true, frames are automatically fragmented to respect the maximum frame size.
|
||||
*
|
||||
* @return whether to automatically fragment incoming WebSocket Frames.
|
||||
*/
|
||||
public boolean isAutoFragment()
|
||||
{
|
||||
return factory.isAutoFragment();
|
||||
}
|
||||
|
||||
/**
|
||||
* If set to true, frames are automatically fragmented to respect the maximum frame size.
|
||||
*
|
||||
* @param autoFragment whether to automatically fragment incoming WebSocket Frames.
|
||||
*/
|
||||
public void setAutoFragment(boolean autoFragment)
|
||||
{
|
||||
factory.setAutoFragment(autoFragment);
|
||||
}
|
||||
|
||||
public void addMapping(String pathSpec, JettyWebSocketCreator creator)
|
||||
/**
|
||||
* The maximum payload size of any WebSocket Frame which can be received.
|
||||
*
|
||||
* @return the maximum size of a WebSocket Frame.
|
||||
*/
|
||||
public long getMaxFrameSize()
|
||||
{
|
||||
factory.addMapping(pathSpec, new WrappedCreator(creator));
|
||||
return factory.getMaxFrameSize();
|
||||
}
|
||||
|
||||
/**
|
||||
* The maximum payload size of any WebSocket Frame which can be received.
|
||||
* <p>
|
||||
* WebSocket Frames over this maximum will result in a close code 1009 {@link StatusCode#MESSAGE_TOO_LARGE}
|
||||
* </p>
|
||||
*
|
||||
* @param maxFrameSize the maximum allowed size of a WebSocket Frame.
|
||||
*/
|
||||
public void setMaxFrameSize(long maxFrameSize)
|
||||
{
|
||||
factory.setMaxFrameSize(maxFrameSize);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Duration getIdleTimeout()
|
||||
{
|
||||
return factory.getIdleTimeout();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setIdleTimeout(Duration duration)
|
||||
{
|
||||
factory.setIdleTimeout(duration);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getInputBufferSize()
|
||||
{
|
||||
return factory.getInputBufferSize();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setInputBufferSize(int bufferSize)
|
||||
{
|
||||
factory.setInputBufferSize(bufferSize);
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getMaxBinaryMessageSize()
|
||||
{
|
||||
return factory.getMaxBinaryMessageSize();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMaxBinaryMessageSize(long bufferSize)
|
||||
{
|
||||
factory.setMaxBinaryMessageSize(bufferSize);
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getMaxTextMessageSize()
|
||||
{
|
||||
return factory.getMaxTextMessageSize();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMaxTextMessageSize(long bufferSize)
|
||||
{
|
||||
factory.setMaxTextMessageSize(bufferSize);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getOutputBufferSize()
|
||||
{
|
||||
return factory.getOutputBufferSize();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setOutputBufferSize(int bufferSize)
|
||||
{
|
||||
factory.setOutputBufferSize(bufferSize);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* add a WebSocket mapping to a provided {@link JettyWebSocketCreator}.
|
||||
* <p>
|
||||
|
@ -129,7 +166,7 @@ public class JettyWebSocketServletFactory
|
|||
* @param creator the WebSocketCreator to use
|
||||
* @since 10.0
|
||||
*/
|
||||
public void addMapping(PathSpec pathSpec, JettyWebSocketCreator creator)
|
||||
public void addMapping(String pathSpec, JettyWebSocketCreator creator)
|
||||
{
|
||||
factory.addMapping(pathSpec, new WrappedCreator(creator));
|
||||
}
|
||||
|
@ -160,64 +197,36 @@ public class JettyWebSocketServletFactory
|
|||
* @param pathSpec the pathspec to respond on
|
||||
* @return the websocket creator if path spec exists, or null
|
||||
*/
|
||||
public JettyWebSocketCreator getMapping(PathSpec pathSpec)
|
||||
public JettyWebSocketCreator getMapping(String pathSpec)
|
||||
{
|
||||
WebSocketCreator creator = factory.getMapping(pathSpec);
|
||||
WebSocketCreator creator = factory.getMapping(parsePathSpec(pathSpec));
|
||||
if (creator instanceof WrappedCreator)
|
||||
return ((WrappedCreator)creator).getCreator();
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the MappedResource for the given target path.
|
||||
*
|
||||
* @param target the target path
|
||||
* @return the MappedResource if matched, or null if not matched.
|
||||
*/
|
||||
public JettyWebSocketCreator getMatch(String target)
|
||||
{
|
||||
WebSocketCreator creator = factory.getMatch(target);
|
||||
if (creator instanceof WrappedCreator)
|
||||
return ((WrappedCreator)creator).getCreator();
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Parse a PathSpec string into a PathSpec instance.
|
||||
* <p>
|
||||
* Recognized Path Spec syntaxes:
|
||||
* </p>
|
||||
* <dl>
|
||||
* <dt><code>/path/to</code> or <code>/</code> or <code>*.ext</code> or <code>servlet|{spec}</code></dt>
|
||||
* <dd>Servlet Syntax</dd>
|
||||
* <dt><code>^{spec}</code> or <code>regex|{spec}</code></dt>
|
||||
* <dd>Regex Syntax</dd>
|
||||
* <dt><code>uri-template|{spec}</code></dt>
|
||||
* <dd>URI Template (see JSR356 and RFC6570 level 1)</dd>
|
||||
* </dl>
|
||||
*
|
||||
* @param rawSpec the raw path spec as String to parse.
|
||||
* @return the {@link PathSpec} implementation for the rawSpec
|
||||
*/
|
||||
public PathSpec parsePathSpec(String rawSpec)
|
||||
{
|
||||
return factory.parsePathSpec(rawSpec);
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the mapping based on the given path spec.
|
||||
*
|
||||
* @param pathSpec the pathspec to respond on
|
||||
* @return true if underlying mapping were altered, false otherwise
|
||||
*/
|
||||
public boolean removeMapping(PathSpec pathSpec)
|
||||
public boolean removeMapping(String pathSpec)
|
||||
{
|
||||
return factory.removeMapping(pathSpec);
|
||||
return factory.removeMapping(parsePathSpec(pathSpec));
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse a PathSpec string into a PathSpec instance.
|
||||
*
|
||||
* @param rawSpec the raw path spec as String to parse.
|
||||
* @return the {@link PathSpec} implementation for the rawSpec
|
||||
*/
|
||||
private PathSpec parsePathSpec(String rawSpec)
|
||||
{
|
||||
return factory.parsePathSpec(rawSpec);
|
||||
}
|
||||
|
||||
private static class WrappedCreator implements WebSocketCreator
|
||||
{
|
||||
|
|
|
@ -1,39 +0,0 @@
|
|||
//
|
||||
// ========================================================================
|
||||
// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd.
|
||||
// ------------------------------------------------------------------------
|
||||
// All rights reserved. This program and the accompanying materials
|
||||
// are made available under the terms of the Eclipse Public License v1.0
|
||||
// and Apache License v2.0 which accompanies this distribution.
|
||||
//
|
||||
// The Eclipse Public License is available at
|
||||
// http://www.eclipse.org/legal/epl-v10.html
|
||||
//
|
||||
// The Apache License v2.0 is available at
|
||||
// http://www.opensource.org/licenses/apache2.0.php
|
||||
//
|
||||
// You may elect to redistribute this code under either of these licenses.
|
||||
// ========================================================================
|
||||
//
|
||||
|
||||
package org.eclipse.jetty.websocket.server;
|
||||
|
||||
import javax.servlet.FilterConfig;
|
||||
import javax.servlet.ServletException;
|
||||
|
||||
/**
|
||||
* @deprecated Moved to #org.eclipse.jetty.websocket.servlet.WebSocketUpgradeFilter
|
||||
*/
|
||||
@Deprecated
|
||||
public class WebSocketUpgradeFilter extends org.eclipse.jetty.websocket.servlet.WebSocketUpgradeFilter
|
||||
{
|
||||
@Override
|
||||
public void init(FilterConfig config) throws ServletException
|
||||
{
|
||||
super.init(config);
|
||||
config.getServletContext().log(
|
||||
WebSocketUpgradeFilter.class.getName() +
|
||||
" is deprecated. Use " +
|
||||
org.eclipse.jetty.websocket.servlet.WebSocketUpgradeFilter.class.getName());
|
||||
}
|
||||
}
|
|
@ -16,7 +16,7 @@
|
|||
// ========================================================================
|
||||
//
|
||||
|
||||
package org.eclipse.jetty.websocket.server;
|
||||
package org.eclipse.jetty.websocket.server.config;
|
||||
|
||||
import java.util.ServiceLoader;
|
||||
|
||||
|
@ -59,6 +59,9 @@ public class JettyWebSocketConfiguration extends AbstractConfiguration
|
|||
protectAndExpose(
|
||||
"org.eclipse.jetty.websocket.api.",
|
||||
"org.eclipse.jetty.websocket.server.");
|
||||
|
||||
hide("org.eclipse.jetty.server.internal.",
|
||||
"org.eclipse.jetty.server.config.");
|
||||
}
|
||||
|
||||
@Override
|
|
@ -16,7 +16,7 @@
|
|||
// ========================================================================
|
||||
//
|
||||
|
||||
package org.eclipse.jetty.websocket.server;
|
||||
package org.eclipse.jetty.websocket.server.config;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
|
@ -29,6 +29,7 @@ import org.eclipse.jetty.servlet.ServletContextHandler;
|
|||
import org.eclipse.jetty.util.log.Log;
|
||||
import org.eclipse.jetty.util.log.Logger;
|
||||
import org.eclipse.jetty.websocket.core.WebSocketComponents;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServerContainer;
|
||||
import org.eclipse.jetty.websocket.servlet.WebSocketMapping;
|
||||
import org.eclipse.jetty.websocket.servlet.WebSocketUpgradeFilter;
|
||||
|
|
@ -1,235 +0,0 @@
|
|||
//
|
||||
// ========================================================================
|
||||
// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd.
|
||||
// ------------------------------------------------------------------------
|
||||
// All rights reserved. This program and the accompanying materials
|
||||
// are made available under the terms of the Eclipse Public License v1.0
|
||||
// and Apache License v2.0 which accompanies this distribution.
|
||||
//
|
||||
// The Eclipse Public License is available at
|
||||
// http://www.eclipse.org/legal/epl-v10.html
|
||||
//
|
||||
// The Apache License v2.0 is available at
|
||||
// http://www.opensource.org/licenses/apache2.0.php
|
||||
//
|
||||
// You may elect to redistribute this code under either of these licenses.
|
||||
// ========================================================================
|
||||
//
|
||||
|
||||
package org.eclipse.jetty.websocket.server.internal;
|
||||
|
||||
import java.net.HttpCookie;
|
||||
import java.net.URI;
|
||||
import java.security.Principal;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.eclipse.jetty.websocket.api.UpgradeRequest;
|
||||
import org.eclipse.jetty.websocket.api.extensions.ExtensionConfig;
|
||||
import org.eclipse.jetty.websocket.common.JettyExtensionConfig;
|
||||
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest;
|
||||
|
||||
public class DelegatedJettyServletUpgradeRequest implements UpgradeRequest
|
||||
{
|
||||
private final ServletUpgradeRequest servletRequest;
|
||||
|
||||
public DelegatedJettyServletUpgradeRequest(ServletUpgradeRequest servletRequest)
|
||||
{
|
||||
this.servletRequest = servletRequest;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addExtensions(ExtensionConfig... configs)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addExtensions(String... configs)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HttpCookie> getCookies()
|
||||
{
|
||||
return this.servletRequest.getCookies();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExtensionConfig> getExtensions()
|
||||
{
|
||||
return this.servletRequest.getExtensions().stream()
|
||||
.map((ext) -> new JettyExtensionConfig(ext.getName(), ext.getParameters()))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getHeader(String name)
|
||||
{
|
||||
return this.servletRequest.getHeader(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getHeaderInt(String name)
|
||||
{
|
||||
return this.servletRequest.getHeaderInt(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, List<String>> getHeaders()
|
||||
{
|
||||
return this.servletRequest.getHeadersMap();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getHeaders(String name)
|
||||
{
|
||||
return this.servletRequest.getHeaders(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getHost()
|
||||
{
|
||||
return this.servletRequest.getHost();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getHttpVersion()
|
||||
{
|
||||
return this.servletRequest.getHttpVersion();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMethod()
|
||||
{
|
||||
return this.servletRequest.getMethod();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getOrigin()
|
||||
{
|
||||
return this.servletRequest.getOrigin();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, List<String>> getParameterMap()
|
||||
{
|
||||
return this.servletRequest.getParameterMap();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getProtocolVersion()
|
||||
{
|
||||
return this.servletRequest.getProtocolVersion();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getQueryString()
|
||||
{
|
||||
return this.servletRequest.getQueryString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public URI getRequestURI()
|
||||
{
|
||||
return this.servletRequest.getRequestURI();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getSession()
|
||||
{
|
||||
return this.servletRequest.getSession();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getSubProtocols()
|
||||
{
|
||||
return this.servletRequest.getSubProtocols();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Principal getUserPrincipal()
|
||||
{
|
||||
return this.servletRequest.getUserPrincipal();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSubProtocol(String test)
|
||||
{
|
||||
return this.servletRequest.hasSubProtocol(test);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isSecure()
|
||||
{
|
||||
return this.servletRequest.isSecure();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCookies(List<HttpCookie> cookies)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setExtensions(List<ExtensionConfig> configs)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setHeader(String name, List<String> values)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setHeader(String name, String value)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setHeaders(Map<String, List<String>> headers)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setHttpVersion(String httpVersion)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMethod(String method)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setRequestURI(URI uri)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSession(Object session)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSubProtocols(List<String> protocols)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSubProtocols(String... protocols)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported from Servlet API");
|
||||
}
|
||||
}
|
|
@ -16,7 +16,7 @@
|
|||
// ========================================================================
|
||||
//
|
||||
|
||||
package org.eclipse.jetty.websocket.server;
|
||||
package org.eclipse.jetty.websocket.server.internal;
|
||||
|
||||
import javax.servlet.ServletContext;
|
||||
|
|
@ -1,123 +0,0 @@
|
|||
//
|
||||
// ========================================================================
|
||||
// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd.
|
||||
// ------------------------------------------------------------------------
|
||||
// All rights reserved. This program and the accompanying materials
|
||||
// are made available under the terms of the Eclipse Public License v1.0
|
||||
// and Apache License v2.0 which accompanies this distribution.
|
||||
//
|
||||
// The Eclipse Public License is available at
|
||||
// http://www.eclipse.org/legal/epl-v10.html
|
||||
//
|
||||
// The Apache License v2.0 is available at
|
||||
// http://www.opensource.org/licenses/apache2.0.php
|
||||
//
|
||||
// You may elect to redistribute this code under either of these licenses.
|
||||
// ========================================================================
|
||||
//
|
||||
|
||||
package org.eclipse.jetty.websocket.server.internal;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.eclipse.jetty.websocket.api.UpgradeResponse;
|
||||
import org.eclipse.jetty.websocket.api.extensions.ExtensionConfig;
|
||||
import org.eclipse.jetty.websocket.common.JettyExtensionConfig;
|
||||
import org.eclipse.jetty.websocket.servlet.ServletUpgradeResponse;
|
||||
|
||||
public class UpgradeResponseAdapter implements UpgradeResponse
|
||||
{
|
||||
private final ServletUpgradeResponse servletResponse;
|
||||
|
||||
public UpgradeResponseAdapter(ServletUpgradeResponse servletResponse)
|
||||
{
|
||||
this.servletResponse = servletResponse;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addHeader(String name, String value)
|
||||
{
|
||||
this.servletResponse.addHeader(name, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAcceptedSubProtocol()
|
||||
{
|
||||
return this.servletResponse.getAcceptedSubProtocol();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExtensionConfig> getExtensions()
|
||||
{
|
||||
return this.servletResponse.getExtensions().stream()
|
||||
.map((ext) -> new JettyExtensionConfig(ext.getName(), ext.getParameters()))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getHeader(String name)
|
||||
{
|
||||
return this.servletResponse.getHeader(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<String> getHeaderNames()
|
||||
{
|
||||
return this.servletResponse.getHeaderNames();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, List<String>> getHeaders()
|
||||
{
|
||||
return this.servletResponse.getHeadersMap();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getHeaders(String name)
|
||||
{
|
||||
return this.servletResponse.getHeaders(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getStatusCode()
|
||||
{
|
||||
return this.servletResponse.getStatusCode();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void sendForbidden(String message) throws IOException
|
||||
{
|
||||
this.servletResponse.sendForbidden(message);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setAcceptedSubProtocol(String protocol)
|
||||
{
|
||||
this.servletResponse.setAcceptedSubProtocol(protocol);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setExtensions(List<ExtensionConfig> extensions)
|
||||
{
|
||||
List<org.eclipse.jetty.websocket.core.ExtensionConfig> coreExtensionConfigs = extensions.stream()
|
||||
.map((ext) -> new org.eclipse.jetty.websocket.core.ExtensionConfig(ext.getName(), ext.getParameters()))
|
||||
.collect(Collectors.toList());
|
||||
this.servletResponse.setExtensions(coreExtensionConfigs);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setHeader(String name, String value)
|
||||
{
|
||||
this.servletResponse.setHeader(name, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setStatusCode(int statusCode)
|
||||
{
|
||||
this.servletResponse.setStatusCode(statusCode);
|
||||
}
|
||||
}
|
|
@ -1 +1 @@
|
|||
org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer
|
||||
org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer
|
|
@ -1 +1 @@
|
|||
org.eclipse.jetty.websocket.server.JettyWebSocketConfiguration
|
||||
org.eclipse.jetty.websocket.server.config.JettyWebSocketConfiguration
|
|
@ -29,7 +29,6 @@ import javax.servlet.ServletException;
|
|||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.eclipse.jetty.http.pathmap.ServletPathSpec;
|
||||
import org.eclipse.jetty.server.Server;
|
||||
import org.eclipse.jetty.server.ServerConnector;
|
||||
import org.eclipse.jetty.server.handler.DefaultHandler;
|
||||
|
@ -47,8 +46,8 @@ import org.eclipse.jetty.websocket.server.JettyServerUpgradeRequest;
|
|||
import org.eclipse.jetty.websocket.server.JettyServerUpgradeResponse;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketCreator;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
|
||||
/**
|
||||
* Tool to help debug websocket circumstances reported around browsers.
|
||||
|
@ -144,7 +143,7 @@ public class BrowserDebugTool
|
|||
LOG.debug("Configuring WebSocketServerFactory ...");
|
||||
|
||||
// Setup the desired Socket to use for all incoming upgrade requests
|
||||
factory.addMapping(new ServletPathSpec("/"), new BrowserSocketCreator());
|
||||
factory.addMapping("/", new BrowserSocketCreator());
|
||||
|
||||
// Set the timeout
|
||||
factory.setIdleTimeout(Duration.ofSeconds(30));
|
||||
|
|
|
@ -37,7 +37,7 @@ import org.eclipse.jetty.websocket.client.ClientUpgradeRequest;
|
|||
import org.eclipse.jetty.websocket.client.JettyUpgradeListener;
|
||||
import org.eclipse.jetty.websocket.client.WebSocketClient;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServerContainer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
|
|
@ -28,7 +28,7 @@ import org.eclipse.jetty.servlet.ServletContextHandler;
|
|||
import org.eclipse.jetty.websocket.api.Session;
|
||||
import org.eclipse.jetty.websocket.client.WebSocketClient;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServerContainer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
|
|
@ -33,7 +33,7 @@ import org.eclipse.jetty.websocket.api.UpgradeRequest;
|
|||
import org.eclipse.jetty.websocket.client.ClientUpgradeRequest;
|
||||
import org.eclipse.jetty.websocket.client.WebSocketClient;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServerContainer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
|
|
@ -28,8 +28,8 @@ import org.eclipse.jetty.servlet.ServletContextHandler;
|
|||
import org.eclipse.jetty.websocket.api.Session;
|
||||
import org.eclipse.jetty.websocket.client.WebSocketClient;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
|
|
@ -32,8 +32,8 @@ import org.eclipse.jetty.websocket.api.SuspendToken;
|
|||
import org.eclipse.jetty.websocket.api.annotations.WebSocket;
|
||||
import org.eclipse.jetty.websocket.client.WebSocketClient;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Disabled;
|
||||
|
|
|
@ -39,7 +39,7 @@ import org.eclipse.jetty.websocket.api.Session;
|
|||
import org.eclipse.jetty.websocket.api.UpgradeRequest;
|
||||
import org.eclipse.jetty.websocket.client.ClientUpgradeRequest;
|
||||
import org.eclipse.jetty.websocket.client.WebSocketClient;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.tests.examples.MyAdvancedEchoServlet;
|
||||
import org.eclipse.jetty.websocket.tests.examples.MyAuthedServlet;
|
||||
import org.eclipse.jetty.websocket.tests.examples.MyEchoServlet;
|
||||
|
|
|
@ -41,8 +41,8 @@ import org.eclipse.jetty.websocket.core.OpCode;
|
|||
import org.eclipse.jetty.websocket.core.internal.Generator;
|
||||
import org.eclipse.jetty.websocket.core.internal.WebSocketConnection;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
|
|
@ -38,8 +38,8 @@ import org.eclipse.jetty.websocket.api.WebSocketListener;
|
|||
import org.eclipse.jetty.websocket.api.util.WSURI;
|
||||
import org.eclipse.jetty.websocket.client.WebSocketClient;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
|
|
|
@ -51,8 +51,8 @@ import org.eclipse.jetty.websocket.client.WebSocketClient;
|
|||
import org.eclipse.jetty.websocket.core.CloseStatus;
|
||||
import org.eclipse.jetty.websocket.core.OpCode;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
|
|
|
@ -39,7 +39,7 @@ import org.eclipse.jetty.websocket.common.WebSocketSession;
|
|||
import org.eclipse.jetty.websocket.core.internal.WebSocketConnection;
|
||||
import org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServerContainer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.tests.EchoSocket;
|
||||
import org.eclipse.jetty.websocket.tests.EventSocket;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
|
|
|
@ -39,8 +39,8 @@ import org.eclipse.jetty.websocket.api.util.WSURI;
|
|||
import org.eclipse.jetty.websocket.client.ClientUpgradeRequest;
|
||||
import org.eclipse.jetty.websocket.client.WebSocketClient;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint;
|
||||
import org.eclipse.jetty.websocket.tests.EchoCreator;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
|
|
|
@ -33,8 +33,8 @@ import org.eclipse.jetty.websocket.api.StatusCode;
|
|||
import org.eclipse.jetty.websocket.api.util.WSURI;
|
||||
import org.eclipse.jetty.websocket.client.WebSocketClient;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint;
|
||||
import org.eclipse.jetty.websocket.tests.EchoSocket;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
|
|
|
@ -38,8 +38,8 @@ import org.eclipse.jetty.websocket.client.WebSocketClient;
|
|||
import org.eclipse.jetty.websocket.common.WebSocketSession;
|
||||
import org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
|
|
|
@ -44,8 +44,8 @@ import org.eclipse.jetty.websocket.core.internal.WebSocketConnection;
|
|||
import org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServerContainer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.tests.EventSocket;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
|
|
|
@ -33,8 +33,8 @@ import org.eclipse.jetty.websocket.api.Session;
|
|||
import org.eclipse.jetty.websocket.api.util.WSURI;
|
||||
import org.eclipse.jetty.websocket.client.WebSocketClient;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServlet;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.server.JettyWebSocketServletFactory;
|
||||
import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer;
|
||||
import org.eclipse.jetty.websocket.tests.CloseTrackingEndpoint;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
|
|
|
@ -107,7 +107,7 @@ public abstract class WebSocketServlet extends HttpServlet
|
|||
/**
|
||||
* @return the instance of {@link FrameHandlerFactory} to be used to create the FrameHandler
|
||||
*/
|
||||
public abstract FrameHandlerFactory getFactory();
|
||||
protected abstract FrameHandlerFactory getFactory();
|
||||
|
||||
@Override
|
||||
public void init() throws ServletException
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<Item>org.eclipse.jetty.plus.webapp.EnvConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.webapp.JmxConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.annotations.AnnotationConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.server.JettyWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.server.config.JettyWebSocketConfiguration</Item>
|
||||
<Item>org.eclipse.jetty.websocket.jsr356.server.JavaxWebSocketConfiguration</Item>
|
||||
</Array>
|
||||
</Arg>
|
||||
|
|
|
@ -65,7 +65,7 @@ public class WebSocketChatServlet extends JettyWebSocketServlet implements Jetty
|
|||
@Override
|
||||
public void configure(JettyWebSocketServletFactory factory)
|
||||
{
|
||||
factory.addMapping(factory.parsePathSpec("/"), this);
|
||||
factory.addMapping("/", this);
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------ */
|
||||
|
|
Loading…
Reference in New Issue