本文整理汇总了Java中org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest类的典型用法代码示例。如果您正苦于以下问题:Java ServletUpgradeRequest类的具体用法?Java ServletUpgradeRequest怎么用?Java ServletUpgradeRequest使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
ServletUpgradeRequest类属于org.eclipse.jetty.websocket.servlet包,在下文中一共展示了ServletUpgradeRequest类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: configure
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Override
public void configure(final WebSocketServletFactory factory) {
final EgressMobiusHandler self = this;
final WebSocketCreator oldcreator = factory.getCreator();
WebSocketCreator creator = new WebSocketCreator() {
@Override
public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) {
MobiusWebSocket ws = (MobiusWebSocket) oldcreator.createWebSocket(req, resp);
ws.setMobiusHandler(self);
return ws;
}
};
factory.setCreator(creator);
super.configure(factory);
}
示例2: createWebSocket
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Override
@UnitOfWork
public Object createWebSocket(
ServletUpgradeRequest servletUpgradeRequest,
ServletUpgradeResponse servletUpgradeResponse) {
String path = servletUpgradeRequest.getRequestPath();
if(!StringUtils.isEmpty(path)) {
String[] paths = servletUpgradeRequest.getRequestPath().split("/");
String userID = paths[paths.length - 1];
try {
long id = Long.parseLong(userID);
Optional<User> optionalUser = userRepository.getUserWithGroups(id);
if (optionalUser.isPresent())
return new ChatSocketListener(optionalUser.get(), this.messageHandler);
log.error("Invalid user id was passed in");
} catch (NumberFormatException exception) {
log.error("Value passed in for user id is not a number", exception);
}
}
return null;
}
示例3: TestJettyWebSocketServer
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
public TestJettyWebSocketServer(int port, final WebSocketHandler webSocketHandler) {
this.server = new Server();
ServerConnector connector = new ServerConnector(this.server);
connector.setPort(port);
this.server.addConnector(connector);
this.server.setHandler(new org.eclipse.jetty.websocket.server.WebSocketHandler() {
@Override
public void configure(WebSocketServletFactory factory) {
factory.setCreator(new WebSocketCreator() {
@Override
public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) {
if (!CollectionUtils.isEmpty(req.getSubProtocols())) {
resp.setAcceptedSubProtocol(req.getSubProtocols().get(0));
}
JettyWebSocketSession session = new JettyWebSocketSession(null, null);
return new JettyWebSocketHandlerAdapter(webSocketHandler, session);
}
});
}
});
}
示例4: createWebSocket
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
public Object createWebSocket( final ServletUpgradeRequest req, final ServletUpgradeResponse res )
{
final Set<String> allowSubProtocols = this.config.getSubProtocols();
if ( allowSubProtocols.isEmpty() )
{
return doCreateWebSocket();
}
for ( final String protocol : req.getSubProtocols() )
{
if ( allowSubProtocols.contains( protocol ) )
{
res.setAcceptedSubProtocol( protocol );
return doCreateWebSocket();
}
}
return null;
}
示例5: configure
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Override
public void configure(WebSocketServletFactory factory) {
if (websocketMaxIdleTime == 0) {
// Jetty not allows 0 timeout.
factory.getPolicy().setIdleTimeout(Integer.MAX_VALUE);
} else {
factory.getPolicy().setIdleTimeout(websocketMaxIdleTime);
}
factory.getPolicy().setMaxTextMessageSize(websocketMaxMessageSize*1024*1024);
factory.setCreator(new WebSocketCreator() {
@Override
public Object createWebSocket(final ServletUpgradeRequest req, ServletUpgradeResponse resp) {
return webSocketConnection.get().getWebSocketServerChannel();
}
});
}
示例6: ApiSocket
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
/**
* Construct an ApiSocket
*
* @param request
* the request details
* @param pingInterval
* the ping messages interval
* @param respTimeout
* the responses timeout
*/
ApiSocket(ServletUpgradeRequest request, long pingInterval, long respTimeout) {
this.originalRequest = ((UpgradeHttpServletRequest) request.getHttpServletRequest())
.getHttpServletRequest();
this.hostname = request.getRemoteHostName();
String connectionId = originalRequest.getParameter("connectionId");
session = originalRequest.getSession();
String sessionId = session.getId();
if (connectionId != null) {
if (!sessionId.equals(connectionId.split("-")[0])) {
connectionId = null;
}
}
if (connectionId == null) {
connectionId = sessionId + "-" + count.getAndIncrement();
}
this.connectionId = connectionId;
this.user = this.originalRequest.getRemoteUser();
this.pingInterval = pingInterval;
this.respTimeout = respTimeout;
this.pingTask = new PingTask(this, pingInterval);
logger.debug("Socket created - Host: {}", request.getRemoteHostName());
}
示例7: configure
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@SuppressWarnings("cast")
@Override
public void configure(WebSocketServletFactory factory) {
if (websocketMaxIdleTime == 0) {
// Jetty does not allow to set infinite timeout.
factory.getPolicy().setIdleTimeout(Integer.MAX_VALUE);
} else {
factory.getPolicy().setIdleTimeout(websocketMaxIdleTime);
}
factory.getPolicy().setMaxTextMessageSize(websocketMaxMessageSize * 1024 * 1024);
factory.setCreator(new WebSocketCreator() {
@Override
public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) {
ParticipantId loggedInUser =
provider.sessionManager.getLoggedInUser(req.getSession());
return new WebSocketConnection(loggedInUser, provider).getWebSocketServerChannel();
}
});
}
示例8: addWebSocket
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Signature
public void addWebSocket(Environment env, String path, ArrayMemory _handlers) {
WebSocketParam param = _handlers.toBean(env, WebSocketParam.class);
ContextHandler contextHandler = new ContextHandler(path);
contextHandler.setHandler(new WebSocketHandler() {
@Override
public void configure(WebSocketServletFactory factory) {
factory.setCreator(new WebSocketCreator() {
@Override
public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) {
return new WebSocket(env, param);
}
});
}
});
handlers.addHandler(contextHandler);
}
示例9: configure
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Override
public void configure(WebSocketServletFactory factory) {
factory.getPolicy().setIdleTimeout(WS_IDLE_TIMEOUT_MS);
factory.setCreator(new WebSocketCreator() {
@Override
public Object createWebSocket(ServletUpgradeRequest request, ServletUpgradeResponse response) {
return new ClientWebSocket(onClientConnectQuerier, requestQueueController);
}
});
}
示例10: createWebSocket
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Override
public Object createWebSocket(ServletUpgradeRequest servletUpgradeRequest, ServletUpgradeResponse servletUpgradeResponse) {
final JobId jobId = extractJobId(servletUpgradeRequest.getRequestPath());
return this.jobManagerEvents
.stderrUpdates(jobId)
.map(observable -> new ObservableByteArraySocket("stderr updates", observable))
.orElse(null); // Effectively, a HTTP 404
}
示例11: createWebSocket
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Override
public Object createWebSocket(
ServletUpgradeRequest servletUpgradeRequest,
ServletUpgradeResponse servletUpgradeResponse) {
return new ObservableTextSocket(
"job events",
this.jobManagerEvents.allJobStatusChanges().map(Helpers::toJSON));
}
示例12: createWebSocket
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Override
public Object createWebSocket(ServletUpgradeRequest servletUpgradeRequest, ServletUpgradeResponse servletUpgradeResponse) {
return this.jobManagerEvents
.stdoutUpdates(extractJobId(servletUpgradeRequest.getRequestPath()))
.map(observable -> new ObservableByteArraySocket("stdout updates", observable))
.orElse(null);
}
示例13: configure
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Override
public void configure(WebSocketServletFactory factory) {
factory.getPolicy().setIdleTimeout(Context.getConfig().getLong("web.timeout", ASYNC_TIMEOUT));
factory.setCreator(new WebSocketCreator() {
@Override
public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) {
if (req.getSession() != null) {
long userId = (Long) req.getSession().getAttribute(SessionResource.USER_ID_KEY);
return new AsyncSocket(userId);
} else {
return null;
}
}
});
}
示例14: configure
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Override
public void configure(WebSocketServletFactory factory) {
factory.getPolicy().setIdleTimeout(maxIdleTimeMinutes * 1000 * 60);
factory.setCreator(new WebSocketCreator() {
@Override
public Object createWebSocket(ServletUpgradeRequest req,
ServletUpgradeResponse resp) {
HttpSession hs = req.getHttpServletRequest().getSession(true);
if (hs.isNew())
hs.setMaxInactiveInterval(maxIdleTimeMinutes * 60);
return new Adapter(Servlet.this);
}
});
}
示例15: createWebSocket
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest; //导入依赖的package包/类
@Override public Object createWebSocket(final ServletUpgradeRequest req, final ServletUpgradeResponse resp) {
// try {
System.out.println("********** CREATE ***********");
// handler.request(HttpMethod.WEBSOCKET_CREATE, handler.convert(req), null);
// } catch (final ServletException | IOException ex) {
// throw new RuntimeException(ex);
// }
return new SocketHandler();
}