Fixed javadocs.
Javadoc generation for the jetty-quic-quiche-* modules may need to use a <profile> since the APIs used depend on the Java version. Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
This commit is contained in:
parent
c011126e63
commit
601cba0b18
|
@ -150,11 +150,6 @@
|
|||
<artifactId>jetty-annotations</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-ant</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-alpn-client</artifactId>
|
||||
|
|
|
@ -92,7 +92,7 @@ public class Content
|
|||
|
||||
/**
|
||||
* <p>A source of content that can be read with a read/demand model.</p>
|
||||
* <a id="idiom"><h3>Idiomatic usage</h3></a>
|
||||
* <h2><a id="idiom">Idiomatic usage</a></h2>
|
||||
* <p>The read/demand model typical usage is the following:</p>
|
||||
* <pre>{@code
|
||||
* public void onContentAvailable() {
|
||||
|
@ -519,6 +519,7 @@ public class Content
|
|||
/**
|
||||
* <p>Returns the chunk that follows a chunk that has been consumed.</p>
|
||||
* <table>
|
||||
* <caption>Next Chunk</caption>
|
||||
* <thead>
|
||||
* <tr>
|
||||
* <th>Input Chunk</th>
|
||||
|
@ -531,8 +532,8 @@ public class Content
|
|||
* <td>{@code null}</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>{@link Error}</td>
|
||||
* <td>{@link Error}</td>
|
||||
* <td>{@link Error Error}</td>
|
||||
* <td>{@link Error Error}</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>{@link #isLast()}</td>
|
||||
|
|
|
@ -26,14 +26,13 @@ import java.util.function.Supplier;
|
|||
import org.eclipse.jetty.server.handler.ContextHandler;
|
||||
import org.eclipse.jetty.util.component.AbstractLifeCycle;
|
||||
import org.eclipse.jetty.util.component.LifeCycle;
|
||||
import org.eclipse.jetty.util.resource.PathResource;
|
||||
import org.eclipse.jetty.util.resource.Resource;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* <p>This will approve any alias to anything inside of the {@link ContextHandler}s resource base which
|
||||
* is not protected by a protected target as defined by {@link ContextHandler#getProtectedTargets()} at start.</p>
|
||||
* is not protected by a protected target as defined by the {@link ContextHandler} protected targets at start.</p>
|
||||
* <p>Aliases approved by this may still be able to bypass SecurityConstraints, so this class would need to be extended
|
||||
* to enforce any additional security constraints that are required.</p>
|
||||
*/
|
||||
|
|
|
@ -215,7 +215,7 @@ import static java.lang.invoke.MethodType.methodType;
|
|||
* </td>
|
||||
* </tr>
|
||||
*
|
||||
* // TODO ATTRIBUTE LOGGING
|
||||
* <!-- TODO ATTRIBUTE LOGGING -->
|
||||
* <tr>
|
||||
* <td>%r</td>
|
||||
* <td>
|
||||
|
|
|
@ -121,7 +121,7 @@ public interface Request extends Attributes, Content.Source
|
|||
/**
|
||||
* an ID unique within the lifetime scope of the {@link ConnectionMetaData#getId()}).
|
||||
* This may be a protocol ID (eg HTTP/2 stream ID) or it may be unrelated to the protocol.
|
||||
* @see HttpStream#getId();
|
||||
* @see HttpStream#getId()
|
||||
*/
|
||||
String getId();
|
||||
|
||||
|
|
|
@ -16,6 +16,7 @@ package org.eclipse.jetty.server.handler;
|
|||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
|
||||
import org.eclipse.jetty.server.Handler;
|
||||
import org.eclipse.jetty.server.handler.ContextHandler.AliasCheck;
|
||||
import org.eclipse.jetty.util.resource.PathResource;
|
||||
import org.eclipse.jetty.util.resource.Resource;
|
||||
|
@ -24,9 +25,10 @@ import org.slf4j.LoggerFactory;
|
|||
|
||||
/**
|
||||
* Symbolic Link AliasChecker.
|
||||
* <p>An instance of this class can be registered with {@link ContextHandler#addAliasCheck(AliasCheck)}
|
||||
* to check resources that are aliased to other locations. The checker uses the
|
||||
* Java {@link Files#readSymbolicLink(Path)} and {@link Path#toRealPath(java.nio.file.LinkOption...)}
|
||||
* <p>An instance of this class can be registered with {@link Handler} subclasses
|
||||
* to check resources that are aliased to other locations.</p>
|
||||
* <p>The checker uses the Java {@link Files#readSymbolicLink(Path)} and
|
||||
* {@link Path#toRealPath(java.nio.file.LinkOption...)}
|
||||
* APIs to check if a file is aliased with symbolic links.</p>
|
||||
* @deprecated use {@link org.eclipse.jetty.server.SymlinkAllowedResourceAliasChecker} instead.
|
||||
*/
|
||||
|
|
|
@ -224,7 +224,7 @@ public class DefaultSessionIdManager extends ContainerLifeCycle implements Sessi
|
|||
// pick a new unique ID!
|
||||
String id = null;
|
||||
|
||||
try (AutoLock l = _lock.lock())
|
||||
try (AutoLock ignored = _lock.lock())
|
||||
{
|
||||
while (id == null || id.length() == 0)
|
||||
{
|
||||
|
@ -239,16 +239,11 @@ public class DefaultSessionIdManager extends ContainerLifeCycle implements Sessi
|
|||
{
|
||||
if (LOG.isDebugEnabled())
|
||||
LOG.debug("Reseeding {}", this);
|
||||
if (_random instanceof SecureRandom)
|
||||
{
|
||||
SecureRandom secure = (SecureRandom)_random;
|
||||
if (_random instanceof SecureRandom secure)
|
||||
secure.setSeed(secure.generateSeed(8));
|
||||
}
|
||||
else
|
||||
{
|
||||
_random.setSeed(_random.nextLong() ^ System.currentTimeMillis() ^ seedTerm ^ Runtime.getRuntime().freeMemory());
|
||||
}
|
||||
}
|
||||
|
||||
long r1 = _weakRandom
|
||||
? (hashCode() ^ Runtime.getRuntime().freeMemory() ^ _random.nextInt() ^ ((seedTerm) << 32))
|
||||
|
@ -263,7 +258,7 @@ public class DefaultSessionIdManager extends ContainerLifeCycle implements Sessi
|
|||
if (!StringUtil.isBlank(_workerName))
|
||||
id = _workerName + id;
|
||||
|
||||
id = id + Long.toString(COUNTER.getAndIncrement());
|
||||
id = id + COUNTER.getAndIncrement();
|
||||
}
|
||||
}
|
||||
return id;
|
||||
|
@ -317,7 +312,7 @@ public class DefaultSessionIdManager extends ContainerLifeCycle implements Sessi
|
|||
_workerName = "node" + (inst == null ? "0" : inst);
|
||||
}
|
||||
|
||||
_workerAttr = (_workerName != null && _workerName.startsWith("$")) ? _workerName.substring(1) : null;
|
||||
_workerAttr = _workerName.startsWith("$") ? _workerName.substring(1) : null;
|
||||
|
||||
if (_houseKeeper == null)
|
||||
{
|
||||
|
@ -405,8 +400,6 @@ public class DefaultSessionIdManager extends ContainerLifeCycle implements Sessi
|
|||
|
||||
/**
|
||||
* Remove an id from use by telling all contexts to remove a session with this id.
|
||||
*
|
||||
* @see org.eclipse.jetty.sessionIdManager#expireAll(java.lang.String)
|
||||
*/
|
||||
@Override
|
||||
public void expireAll(String id)
|
||||
|
@ -503,7 +496,7 @@ public class DefaultSessionIdManager extends ContainerLifeCycle implements Sessi
|
|||
//This method can be called on shutdown when the handlers are STOPPING, so only
|
||||
//check that they are not already stopped
|
||||
if (!sm.isStopped() && !sm.isFailed())
|
||||
managers.add((SessionManager)sm);
|
||||
managers.add(sm);
|
||||
}
|
||||
|
||||
return managers;
|
||||
|
|
|
@ -19,8 +19,6 @@ import org.slf4j.Logger;
|
|||
import org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* NullSessionCache
|
||||
*
|
||||
* Does not actually cache any Session objects. Useful for testing.
|
||||
* Also useful if you do not want to share Session objects with the same id between
|
||||
* simultaneous requests: note that this means that context forwarding can't share
|
||||
|
@ -30,9 +28,6 @@ public class NullSessionCache extends AbstractSessionCache
|
|||
{
|
||||
private static final Logger LOG = LoggerFactory.getLogger(NullSessionCache.class);
|
||||
|
||||
/**
|
||||
* @param handler The SessionHandler related to this SessionCache
|
||||
*/
|
||||
public NullSessionCache(SessionManager manager)
|
||||
{
|
||||
super(manager);
|
||||
|
@ -47,8 +42,7 @@ public class NullSessionCache extends AbstractSessionCache
|
|||
@Override
|
||||
public Session newSession(SessionData data)
|
||||
{
|
||||
Session session = new Session(getSessionManager(), data);
|
||||
return session;
|
||||
return new Session(getSessionManager(), data);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -253,7 +253,7 @@ public class ExceptionUtil
|
|||
/**
|
||||
* <p>Combine two, possible null, {@link Throwable}s in a style to facilitate handling
|
||||
* multiple exceptions that are accumulated as suppressed exceptions. This is freqently
|
||||
* used in the following pattern:
|
||||
* used in the following pattern:</p>
|
||||
* <pre>
|
||||
* Throwable multiException = null;
|
||||
* for (Runnable task : manyThings)
|
||||
|
@ -269,7 +269,6 @@ public class ExceptionUtil
|
|||
* }
|
||||
* MultiException.ifExceptionalThrow(multiException);
|
||||
* </pre>
|
||||
* </p>
|
||||
* @param t1 A Throwable or null
|
||||
* @param t2 Another Throwable or null
|
||||
* @return t1 with t2 suppressed, or null.
|
||||
|
|
|
@ -1686,7 +1686,7 @@ public final class URIUtil
|
|||
* <p>
|
||||
* This correction is limited to only the {@code file:/} substring in the URI.
|
||||
* If there is a {@code file:/<not-a-slash>} detected, that substring is corrected to
|
||||
* {@code file:///<not-a-slash>}, all other uses of {@code file:}, and URIs without a {@core file:}
|
||||
* {@code file:///<not-a-slash>}, all other uses of {@code file:}, and URIs without a {@code file:}
|
||||
* substring are left alone.
|
||||
* </p>
|
||||
*
|
||||
|
|
|
@ -16,7 +16,6 @@ package org.eclipse.jetty.util.resource;
|
|||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URI;
|
||||
import java.nio.channels.ReadableByteChannel;
|
||||
import java.nio.file.Path;
|
||||
|
@ -107,7 +106,6 @@ public class ResourceCollection extends Resource
|
|||
* <li>is a directory that exists in several of the collection, then a ResourceCollection of those directories is returned</li>
|
||||
* <li>do not exist in any of the collection, then a new non existent resource relative to the first in the collection is returned.</li>
|
||||
* </ul>
|
||||
* @throws MalformedURLException if the resolution of the path fails because the input path parameter is malformed against any of the collection
|
||||
*/
|
||||
@Override
|
||||
public Resource resolve(String subUriPath)
|
||||
|
|
|
@ -13,23 +13,8 @@
|
|||
|
||||
package org.eclipse.jetty.ee10.demos;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.util.Map;
|
||||
|
||||
import jakarta.servlet.ServletException;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import org.eclipse.jetty.server.CustomRequestLog;
|
||||
import org.eclipse.jetty.server.Handler;
|
||||
import org.eclipse.jetty.server.Request;
|
||||
import org.eclipse.jetty.server.Server;
|
||||
import org.eclipse.jetty.server.handler.ContextHandler;
|
||||
import org.eclipse.jetty.server.handler.ContextHandlerCollection;
|
||||
import org.eclipse.jetty.server.handler.DefaultHandler;
|
||||
import org.eclipse.jetty.server.handler.gzip.GzipHandler;
|
||||
import org.eclipse.jetty.util.ajax.JSON;
|
||||
|
||||
/**
|
||||
* Frequently many handlers are combined together to handle different aspects of
|
||||
|
@ -43,16 +28,16 @@ import org.eclipse.jetty.util.ajax.JSON;
|
|||
* </ul>
|
||||
* Multiple handlers may be combined with:
|
||||
* <ul>
|
||||
* <li>{@link HandlerWrapper} which will nest one handler inside another. In
|
||||
* <li>{@link Handler.Wrapper} which will nest one handler inside another. In
|
||||
* this example, the HelloHandler is nested inside a HandlerWrapper that sets
|
||||
* the greeting as a request attribute.
|
||||
* <li>{@link HandlerList} which will call a collection of handlers until the
|
||||
* <li>{@link Handler.Collection} which will call a collection of handlers until the
|
||||
* request is marked as handled. In this example, a list is used to combine the
|
||||
* param handler (which only handles the request if there are parameters) and
|
||||
* the wrapper handler. Frequently handler lists are terminated with the
|
||||
* {@link DefaultHandler}, which will generate a suitable 404 response if the
|
||||
* request has not been handled.
|
||||
* <li>{@link HandlerCollection} which will call each handler regardless if the
|
||||
* <li>{@link Handler.Collection} which will call each handler regardless if the
|
||||
* request has been handled or not. Typically this is used to always pass a
|
||||
* request to the logging handler.
|
||||
* </ul>
|
||||
|
|
|
@ -19,9 +19,10 @@ import javax.security.auth.Subject;
|
|||
import jakarta.security.auth.message.MessageInfo;
|
||||
import jakarta.security.auth.message.config.ServerAuthConfig;
|
||||
import jakarta.security.auth.message.config.ServerAuthContext;
|
||||
import org.eclipse.jetty.ee10.security.jaspi.provider.JaspiAuthConfigProvider;
|
||||
|
||||
/**
|
||||
* @deprecated use {@link org.eclipse.jetty.security.jaspi.provider.JaspiAuthConfigProvider}.
|
||||
* @deprecated use {@link JaspiAuthConfigProvider}.
|
||||
*/
|
||||
@Deprecated
|
||||
public class SimpleAuthConfig implements ServerAuthConfig
|
||||
|
|
|
@ -568,7 +568,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr
|
|||
* <li>Mappings with keys of the form "<method>.<method>.<method>.omission" that indicates it will match every method name EXCEPT those given</li>
|
||||
* </ol>
|
||||
*
|
||||
* @see SecurityHandler#prepareConstraintInfo(java.lang.String, Request)
|
||||
* @see SecurityHandler#prepareConstraintInfo(String, HttpServletRequest)
|
||||
*/
|
||||
@Override
|
||||
protected RoleInfo prepareConstraintInfo(String pathInContext, HttpServletRequest request)
|
||||
|
|
|
@ -19,22 +19,17 @@ import javax.security.auth.Subject;
|
|||
/**
|
||||
* Default Identity Service implementation.
|
||||
* This service handles only role reference maps passed in an
|
||||
* associated {@link UserIdentity.Scope}. If there are roles
|
||||
* associated {@link UserIdentity}. If there are roles
|
||||
* refs present, then associate will wrap the UserIdentity with one
|
||||
* that uses the role references in the
|
||||
* {@link UserIdentity#isUserInRole(String, UserIdentity.Scope)}
|
||||
* {@link UserIdentity#isUserInRole(String)}
|
||||
* implementation. All other operations are effectively noops.
|
||||
*/
|
||||
public class DefaultIdentityService implements IdentityService
|
||||
{
|
||||
|
||||
public DefaultIdentityService()
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* If there are roles refs present in the scope, then wrap the UserIdentity
|
||||
* with one that uses the role references in the {@link UserIdentity#isUserInRole(String, UserIdentity.Scope)}
|
||||
* with one that uses the role references in the {@link UserIdentity#isUserInRole(String)}
|
||||
*/
|
||||
@Override
|
||||
public Object associate(UserIdentity user)
|
||||
|
|
|
@ -28,7 +28,7 @@ public interface IdentityService
|
|||
/**
|
||||
* Associate a user identity with the current thread.
|
||||
* This is called with as a thread enters the
|
||||
* {@link SecurityHandler#handle(String, Request, jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse)}
|
||||
* {@link SecurityHandler#handle(Request)}
|
||||
* method and then again with a null argument as that call exits.
|
||||
*
|
||||
* @param user The current user or null for no user to associated.
|
||||
|
|
|
@ -56,7 +56,7 @@ public abstract class LoginAuthenticator implements Authenticator
|
|||
*
|
||||
* @param username the username of the client to be authenticated
|
||||
* @param password the user's credential
|
||||
* @param servletRequest the inbound request that needs authentication
|
||||
* @param request the inbound request that needs authentication
|
||||
*/
|
||||
public UserIdentity login(String username, Object password, Request request)
|
||||
{
|
||||
|
|
|
@ -113,8 +113,8 @@ import org.slf4j.LoggerFactory;
|
|||
* <dd>a comma-separated list of IP addresses that will not be rate limited</dd>
|
||||
* <dt>managedAttr</dt>
|
||||
* <dd>if set to true, then this servlet is set as a {@link ServletContext} attribute with the
|
||||
* filter name as the attribute name. This allows context external mechanism (eg JMX via {@link ContextHandler#MANAGED_ATTRIBUTES}) to
|
||||
* manage the configuration of the filter.</dd>
|
||||
* filter name as the attribute name. This allows context external mechanism (eg JMX via {@link ContextHandler} managed attribute)
|
||||
* to manage the configuration of the filter.</dd>
|
||||
* <dt>tooManyCode</dt>
|
||||
* <dd>The status code to send if there are too many requests. By default is 429 (too many requests), but 503 (Unavailable) is
|
||||
* another option</dd>
|
||||
|
|
|
@ -66,9 +66,9 @@ import org.slf4j.LoggerFactory;
|
|||
* avoided if the semaphore is shortly available. If the semaphore cannot be obtained, the request will be suspended
|
||||
* for the default suspend period of the container or the valued set as the "suspendMs" init parameter.
|
||||
* <p>
|
||||
* If the "managedAttr" init parameter is set to true, then this servlet is set as a {@link ServletContext} attribute with the
|
||||
* filter name as the attribute name. This allows context external mechanism (eg JMX via {@link ContextHandler#MANAGED_ATTRIBUTES}) to
|
||||
* manage the configuration of the filter.
|
||||
* If the "managedAttr" init parameter is set to true, then this servlet is set as a {@link ServletContext} attribute
|
||||
* with the filter name as the attribute name. This allows context external mechanism (eg JMX via {@link ContextHandler}
|
||||
* managed attribute) to manage the configuration of the filter.
|
||||
*/
|
||||
@ManagedObject("Quality of Service Filter")
|
||||
public class QoSFilter implements Filter
|
||||
|
|
|
@ -19,9 +19,10 @@ import javax.security.auth.Subject;
|
|||
import jakarta.security.auth.message.MessageInfo;
|
||||
import jakarta.security.auth.message.config.ServerAuthConfig;
|
||||
import jakarta.security.auth.message.config.ServerAuthContext;
|
||||
import org.eclipse.jetty.ee9.security.jaspi.provider.JaspiAuthConfigProvider;
|
||||
|
||||
/**
|
||||
* @deprecated use {@link org.eclipse.jetty.security.jaspi.provider.JaspiAuthConfigProvider}.
|
||||
* @deprecated use {@link JaspiAuthConfigProvider}.
|
||||
*/
|
||||
@Deprecated
|
||||
public class SimpleAuthConfig implements ServerAuthConfig
|
||||
|
|
|
@ -113,8 +113,8 @@ import org.slf4j.LoggerFactory;
|
|||
* <dd>a comma-separated list of IP addresses that will not be rate limited</dd>
|
||||
* <dt>managedAttr</dt>
|
||||
* <dd>if set to true, then this servlet is set as a {@link ServletContext} attribute with the
|
||||
* filter name as the attribute name. This allows context external mechanism (eg JMX via {@link ContextHandler#MANAGED_ATTRIBUTES}) to
|
||||
* manage the configuration of the filter.</dd>
|
||||
* filter name as the attribute name. This allows context external mechanism (eg JMX via {@link ContextHandler} managed attribute)
|
||||
* to manage the configuration of the filter.</dd>
|
||||
* <dt>tooManyCode</dt>
|
||||
* <dd>The status code to send if there are too many requests. By default is 429 (too many requests), but 503 (Unavailable) is
|
||||
* another option</dd>
|
||||
|
|
|
@ -66,9 +66,9 @@ import org.slf4j.LoggerFactory;
|
|||
* avoided if the semaphore is shortly available. If the semaphore cannot be obtained, the request will be suspended
|
||||
* for the default suspend period of the container or the valued set as the "suspendMs" init parameter.
|
||||
* <p>
|
||||
* If the "managedAttr" init parameter is set to true, then this servlet is set as a {@link ServletContext} attribute with the
|
||||
* filter name as the attribute name. This allows context external mechanism (eg JMX via {@link ContextHandler#MANAGED_ATTRIBUTES}) to
|
||||
* manage the configuration of the filter.
|
||||
* If the "managedAttr" init parameter is set to true, then this servlet is set as a {@link ServletContext} attribute
|
||||
* with the filter name as the attribute name. This allows context external mechanism (eg JMX via {@link ContextHandler}
|
||||
* managed attribute) to manage the configuration of the filter.
|
||||
*/
|
||||
@ManagedObject("Quality of Service Filter")
|
||||
public class QoSFilter implements Filter
|
||||
|
|
|
@ -32,6 +32,7 @@ import org.eclipse.jetty.client.HttpRequest;
|
|||
import org.eclipse.jetty.client.HttpResponse;
|
||||
import org.eclipse.jetty.client.api.Request;
|
||||
import org.eclipse.jetty.ee9.websocket.api.Session;
|
||||
import org.eclipse.jetty.ee9.websocket.api.StatusCode;
|
||||
import org.eclipse.jetty.ee9.websocket.api.WebSocketBehavior;
|
||||
import org.eclipse.jetty.ee9.websocket.api.WebSocketContainer;
|
||||
import org.eclipse.jetty.ee9.websocket.api.WebSocketPolicy;
|
||||
|
@ -389,7 +390,7 @@ public class WebSocketClient extends ContainerLifeCycle implements WebSocketPoli
|
|||
}
|
||||
|
||||
/**
|
||||
* The timeout to allow all remaining open Sessions to be closed gracefully using the close code {@link org.eclipse.jetty.ee9.websocket.api.StatusCode#SHUTDOWN}.
|
||||
* The timeout to allow all remaining open Sessions to be closed gracefully using the close code {@link StatusCode#SHUTDOWN}.
|
||||
* @param stopTimeout the time in ms to wait for the graceful close, use a value less than or equal to 0 to not gracefully close.
|
||||
*/
|
||||
public void setStopTimeout(long stopTimeout)
|
||||
|
|
|
@ -32,6 +32,7 @@ import java.util.concurrent.Executor;
|
|||
import org.eclipse.jetty.ee9.websocket.api.BatchMode;
|
||||
import org.eclipse.jetty.ee9.websocket.api.Frame;
|
||||
import org.eclipse.jetty.ee9.websocket.api.Session;
|
||||
import org.eclipse.jetty.ee9.websocket.api.WebSocketAdapter;
|
||||
import org.eclipse.jetty.ee9.websocket.api.WebSocketConnectionListener;
|
||||
import org.eclipse.jetty.ee9.websocket.api.WebSocketContainer;
|
||||
import org.eclipse.jetty.ee9.websocket.api.WebSocketFrameListener;
|
||||
|
@ -67,13 +68,13 @@ import org.eclipse.jetty.websocket.core.internal.util.ReflectUtils;
|
|||
* Will create a {@link org.eclipse.jetty.websocket.core.FrameHandler} suitable for use with classes/objects that:
|
||||
* </p>
|
||||
* <ul>
|
||||
* <li>Is @{@link org.eclipse.jetty.ee9.websocket.api.annotations.WebSocket} annotated</li>
|
||||
* <li>Extends {@link org.eclipse.jetty.ee9.websocket.api.WebSocketAdapter}</li>
|
||||
* <li>Implements {@link org.eclipse.jetty.ee9.websocket.api.WebSocketListener}</li>
|
||||
* <li>Implements {@link org.eclipse.jetty.ee9.websocket.api.WebSocketConnectionListener}</li>
|
||||
* <li>Implements {@link org.eclipse.jetty.ee9.websocket.api.WebSocketPartialListener}</li>
|
||||
* <li>Implements {@link org.eclipse.jetty.ee9.websocket.api.WebSocketPingPongListener}</li>
|
||||
* <li>Implements {@link org.eclipse.jetty.ee9.websocket.api.WebSocketFrameListener}</li>
|
||||
* <li>Is @{@link WebSocket} annotated</li>
|
||||
* <li>Extends {@link WebSocketAdapter}</li>
|
||||
* <li>Implements {@link WebSocketListener}</li>
|
||||
* <li>Implements {@link WebSocketConnectionListener}</li>
|
||||
* <li>Implements {@link WebSocketPartialListener}</li>
|
||||
* <li>Implements {@link WebSocketPingPongListener}</li>
|
||||
* <li>Implements {@link WebSocketFrameListener}</li>
|
||||
* </ul>
|
||||
*/
|
||||
public class JettyWebSocketFrameHandlerFactory extends ContainerLifeCycle
|
||||
|
|
Loading…
Reference in New Issue