當前位置: 首頁>>代碼示例>>Java>>正文


Java WebSocketServletFactory類代碼示例

本文整理匯總了Java中org.eclipse.jetty.websocket.servlet.WebSocketServletFactory的典型用法代碼示例。如果您正苦於以下問題:Java WebSocketServletFactory類的具體用法?Java WebSocketServletFactory怎麽用?Java WebSocketServletFactory使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


WebSocketServletFactory類屬於org.eclipse.jetty.websocket.servlet包,在下文中一共展示了WebSocketServletFactory類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的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);
}
 
開發者ID:cityzendata,項目名稱:warp10-platform,代碼行數:20,代碼來源:EgressMobiusHandler.java

示例2: TestJettyWebSocketServer

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的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);
						}
					});
				}
			});
		}
 
開發者ID:langtianya,項目名稱:spring4-understanding,代碼行數:24,代碼來源:JettyWebSocketClientTests.java

示例3: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的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();
    }
  });
}
 
開發者ID:jorkey,項目名稱:Wiab.pro,代碼行數:18,代碼來源:ServerRpcProvider.java

示例4: start

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的package包/類
public static void start(@Nonnull Config config, @Nonnull List<Handler> extraHandlers,
		@Nonnull WebSocketCreator creator) throws Exception {
	checkNotNull(config);
	checkNotNull(creator);

	long idleTimeout = config.getTime("webserver.idleTimeout", "10m");
	int maxTextMessageSize = config.getInt("webserver.maxTextMessageSize", 1024 * 1024);

	HandlerList handlers = new HandlerList();
	handlers.addHandler(new WebSocketHandler() {
		@Override
		public void configure(WebSocketServletFactory factory) {
			factory.getPolicy().setIdleTimeout(idleTimeout);
			factory.getPolicy().setMaxTextMessageSize(maxTextMessageSize);
			factory.setCreator(creator);
		}
	});
	for (Handler handler : extraHandlers) {
		handlers.addHandler(handler);
	}

	Server server = new Server(config.getInt("webserver.port", 8034));
	server.setHandler(handlers);
	server.start();
}
 
開發者ID:lithiumtech,項目名稱:flow,代碼行數:26,代碼來源:JettyServer.java

示例5: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的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();
    }
  });
}
 
開發者ID:apache,項目名稱:incubator-wave,代碼行數:21,代碼來源:ServerRpcProvider.java

示例6: addWebSocket

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的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);
}
 
開發者ID:jphp-compiler,項目名稱:jphp,代碼行數:20,代碼來源:PHttpServer.java

示例7: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的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);
		}
	});
}
 
開發者ID:BuaBook,項目名稱:buabook-api-interface,代碼行數:12,代碼來源:ClientWebSocketHandler.java

示例8: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的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;
            }
        }
    });
}
 
開發者ID:bamartinezd,項目名稱:traccar-service,代碼行數:16,代碼來源:AsyncSocketServlet.java

示例9: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的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);
		}
	});
}
 
開發者ID:AnywhereSoftware,項目名稱:B4J_Server,代碼行數:16,代碼來源:WebSocketModule.java

示例10: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的package包/類
@Override public void configure(final WebSocketServletFactory factory) {
	System.out.println("***** CONFIGURING ****");
	// TO DO CONFIGURE TIMEOUT
	factory.getPolicy().setIdleTimeout(10000);
	factory.setCreator(this);
	//factory.register(SocketHandler.class);
}
 
開發者ID:emily-e,項目名稱:webframework,代碼行數:8,代碼來源:EmbeddedServlet.java

示例11: getWebSocketHandler

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的package包/類
@Override
public WebSocketHandler getWebSocketHandler() {
    return new WebSocketHandler() {
        @Override
        public void configure(WebSocketServletFactory factory) {
            factory.register(EchoSocket.class);
        }
    };
}
 
開發者ID:amaralDaniel,項目名稱:megaphone,代碼行數:10,代碼來源:ProxyTunnellingTest.java

示例12: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的package包/類
@Override
public void configure(WebSocketServletFactory factory) {
    factory.getPolicy().setMaxTextMessageSize(WebSocketService.MaxTextFrameSize);

    factory.setCreator(
            (request, response) -> new ReaderHandler(service, request.getHttpServletRequest(), response));
}
 
開發者ID:apache,項目名稱:incubator-pulsar,代碼行數:8,代碼來源:WebSocketReaderServlet.java

示例13: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的package包/類
@Override
public void configure(WebSocketServletFactory factory) {
    factory.getPolicy().setMaxTextMessageSize(WebSocketService.MaxTextFrameSize);

    factory.setCreator(
            (request, response) -> new ConsumerHandler(service, request.getHttpServletRequest(), response));
}
 
開發者ID:apache,項目名稱:incubator-pulsar,代碼行數:8,代碼來源:WebSocketConsumerServlet.java

示例14: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的package包/類
@Override
public void configure(final WebSocketServletFactory factory) {
  
  final StandaloneStreamUpdateHandler self = this;

  final WebSocketCreator oldcreator = factory.getCreator();
  
  WebSocketCreator creator = new WebSocketCreator() {
    @Override
    public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) {
      StandaloneStreamUpdateWebSocket ws = (StandaloneStreamUpdateWebSocket) oldcreator.createWebSocket(req, resp);
      ws.setHandler(self);
      return ws;
    }
  };

  factory.setCreator(creator);
  
  //
  // Update the maxMessageSize if need be
  //
  if (this.properties.containsKey(Configuration.INGRESS_WEBSOCKET_MAXMESSAGESIZE)) {
    factory.getPolicy().setMaxTextMessageSize((int) Long.parseLong(this.properties.getProperty(Configuration.INGRESS_WEBSOCKET_MAXMESSAGESIZE)));
    factory.getPolicy().setMaxBinaryMessageSize((int) Long.parseLong(this.properties.getProperty(Configuration.INGRESS_WEBSOCKET_MAXMESSAGESIZE)));
  }

  super.configure(factory);
}
 
開發者ID:cityzendata,項目名稱:warp10-platform,代碼行數:29,代碼來源:StandaloneStreamUpdateHandler.java

示例15: configure

import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory; //導入依賴的package包/類
@Override
public void configure(final WebSocketServletFactory factory) {
      
  final StandalonePlasmaHandler self = this;

  final WebSocketCreator oldcreator = factory.getCreator();
  
  WebSocketCreator creator = new WebSocketCreator() {
    @Override
    public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) {
      StandalonePlasmaWebSocket ws = (StandalonePlasmaWebSocket) oldcreator.createWebSocket(req, resp);
      ws.setHandler(self);
      return ws;
    }
  };

  factory.setCreator(creator);
  
  //
  // Update the maxMessageSize if need be
  //
  if (this.properties.containsKey(Configuration.PLASMA_FRONTEND_WEBSOCKET_MAXMESSAGESIZE)) {
    factory.getPolicy().setMaxTextMessageSize((int) Long.parseLong(this.properties.getProperty(Configuration.PLASMA_FRONTEND_WEBSOCKET_MAXMESSAGESIZE)));
    factory.getPolicy().setMaxBinaryMessageSize((int) Long.parseLong(this.properties.getProperty(Configuration.PLASMA_FRONTEND_WEBSOCKET_MAXMESSAGESIZE)));
  }

  super.configure(factory);
}
 
開發者ID:cityzendata,項目名稱:warp10-platform,代碼行數:29,代碼來源:StandalonePlasmaHandler.java


注:本文中的org.eclipse.jetty.websocket.servlet.WebSocketServletFactory類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。