当前位置: 首页>>代码示例>>Java>>正文


Java WebSocketCreator类代码示例

本文整理汇总了Java中org.eclipse.jetty.websocket.servlet.WebSocketCreator的典型用法代码示例。如果您正苦于以下问题:Java WebSocketCreator类的具体用法?Java WebSocketCreator怎么用?Java WebSocketCreator使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


WebSocketCreator类属于org.eclipse.jetty.websocket.servlet包,在下文中一共展示了WebSocketCreator类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: configure

import org.eclipse.jetty.websocket.servlet.WebSocketCreator; //导入依赖的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.WebSocketCreator; //导入依赖的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.WebSocketCreator; //导入依赖的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.WebSocketCreator; //导入依赖的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.WebSocketCreator; //导入依赖的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.WebSocketCreator; //导入依赖的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.WebSocketCreator; //导入依赖的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.WebSocketCreator; //导入依赖的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.WebSocketCreator; //导入依赖的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.WebSocketCreator; //导入依赖的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

示例11: configure

import org.eclipse.jetty.websocket.servlet.WebSocketCreator; //导入依赖的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

示例12: configure

import org.eclipse.jetty.websocket.servlet.WebSocketCreator; //导入依赖的package包/类
@Override
public void configure(final WebSocketServletFactory factory) {
  
  final IngressStreamUpdateHandler 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.ingress.properties.containsKey(Configuration.INGRESS_WEBSOCKET_MAXMESSAGESIZE)) {
    factory.getPolicy().setMaxTextMessageSize((int) Long.parseLong(this.ingress.properties.getProperty(Configuration.INGRESS_WEBSOCKET_MAXMESSAGESIZE)));
    factory.getPolicy().setMaxBinaryMessageSize((int) Long.parseLong(this.ingress.properties.getProperty(Configuration.INGRESS_WEBSOCKET_MAXMESSAGESIZE)));
  }
  super.configure(factory);
}
 
开发者ID:cityzendata,项目名称:warp10-platform,代码行数:29,代码来源:IngressStreamUpdateHandler.java

示例13: configure

import org.eclipse.jetty.websocket.servlet.WebSocketCreator; //导入依赖的package包/类
@Override
public void configure(WebSocketServletFactory factory)
{
    if (XmppWebSocket.isCompressionEnabled()) {
        factory.getExtensionFactory().register("permessage-deflate", PerMessageDeflateExtension.class);
    }
    final int messageSize = JiveGlobals.getIntProperty("xmpp.parser.buffer.size", 1048576);
    factory.getPolicy().setMaxTextMessageBufferSize(messageSize * 5);
    factory.getPolicy().setMaxTextMessageSize(messageSize);
    factory.setCreator(new WebSocketCreator() {
        @Override
        public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp)
        {
            try {
                for (String subprotocol : req.getSubProtocols())
                {
                    if ("xmpp".equals(subprotocol))
                    {
                        resp.setAcceptedSubProtocol(subprotocol);
                        return new XmppWebSocket();
                    }
                }
            } catch (Exception e) {
                Log.warn(MessageFormat.format("Unable to load websocket factory: {0} ({1})", e.getClass().getName(), e.getMessage()));
            }
            Log.warn("Failed to create websocket for {}:{} make a request at {}", req.getRemoteAddress(), req.getRemotePort(), req.getRequestPath() );
            return null;
        }
    });
}
 
开发者ID:igniterealtime,项目名称:Openfire,代码行数:31,代码来源:OpenfireWebSocketServlet.java

示例14: configure

import org.eclipse.jetty.websocket.servlet.WebSocketCreator; //导入依赖的package包/类
@Override
public void configure(WebSocketServletFactory webSocketServletFactory) {
    webSocketServletFactory.setCreator(new WebSocketCreator() {
        @Override
        public Object createWebSocket(ServletUpgradeRequest req, ServletUpgradeResponse resp) {
            return new JettyWebSocketListener(channelProcessor);
        }
    });
}
 
开发者ID:sequenceiq,项目名称:sequenceiq-samples,代码行数:10,代码来源:JettyWebSocketServlet.java

示例15: configure

import org.eclipse.jetty.websocket.servlet.WebSocketCreator; //导入依赖的package包/类
@Override
public void configure(WebSocketServletFactory factory) {
	factory.setCreator(new WebSocketCreator() {
		@Override
		public Object createWebSocket(ServletUpgradeRequest request, ServletUpgradeResponse response) {
			LOG.debug("create websocket servlet");
			WebSocketInstance wsi = new WebSocketInstance();
			wsi.setScriptEngineManager(scriptEngineManager);
			wsi.setApplication(application);
			wsi.setApplicationInstance(applicationInstance);
			wsi.setClassLoader(classLoader);
			return wsi;
		}
	});
}
 
开发者ID:lane-cn,项目名称:getty,代码行数:16,代码来源:WebSocketManager.java


注:本文中的org.eclipse.jetty.websocket.servlet.WebSocketCreator类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。