• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java SessionAttachmentHandler类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: init

import io.undertow.server.session.SessionAttachmentHandler; //导入依赖的package包/类
@BeforeClass
public static void init() throws URISyntaxException {
    URI redisUri = new URI("redis://localhost:6379/0");
    JEDIS = new Jedis(redisUri);

    SessionCookieConfig sessionConfig = new SessionCookieConfig();
    sessionConfig.setCookieName("session");

    sessionManager = new RedisSessionManager(redisUri, sessionConfig);

    server = Undertow.builder()
            .addHttpListener(9876, "localhost")
            .setHandler(new SessionAttachmentHandler(new PathTemplateHandler()
                    .add("/attributes", new AttributesHandler())
                    .add("/objects", new ObjectsHandler())
                    , sessionManager, sessionConfig))
            .build();

    server.start();
}
 
开发者ID:coat,项目名称:undertow-redis-session,代码行数:21,代码来源:RedisSessionManagerIT.java


示例2: createAppHandlers

import io.undertow.server.session.SessionAttachmentHandler; //导入依赖的package包/类
public HttpHandler createAppHandlers(ScannerResult scannerResult){
  OvertownSessionManager sessionManager = OvertownSessionManager.getInstance();
  HttpHandler error500 = mount500( scannerResult.getInternalErrorClass() );
  if( !scannerResult.getControllerMappings().isEmpty() ) {
    RoutingHandler rh = new CustomRoutingHandler();
    rh.setFallbackHandler(mount404(scannerResult.getNotFoundClass()));
    rh.setInvalidMethodHandler( mount405( scannerResult.getMethodNotAllowedClass() ) );
    ControllerHandlerCreator chc = new ControllerHandlerCreator();
    for(ControllerMapping mapping : scannerResult.getControllerMappings() ){
      mapping.setInternalErrorHandler(error500);
      rh = chc.createHandler(mapping , rh);
    }
    return new SessionAttachmentHandler( rh , sessionManager.getSessionManager(),
            sessionManager.getSessionConfig());
  }
  throw new NoControllerException("You should specify at least one controller, verify if you informed the right package to be scanned or see https://github.com/EsmerilProgramming/overtown for more info");
}
 
开发者ID:EsmerilProgramming,项目名称:overtown,代码行数:18,代码来源:StartupHandlerImpl.java


示例3: createRootHandler

import io.undertow.server.session.SessionAttachmentHandler; //导入依赖的package包/类
public HttpHandler createRootHandler(Configuration configuration , ScannerResult scannerResult) {
  PathHandler pathHandler = Handlers.path();

  String appContext = "/" + configuration.getAppContext();
  pathHandler.addPrefixPath( appContext , createAppHandlers(scannerResult));
  if(!scannerResult.getServerEndpoints().isEmpty()){
    DeploymentInfo builder = new DeploymentInfo().setClassLoader(this.getClass().getClassLoader()).setContextPath("/");
    WebSocketDeploymentInfo wsDeployInfo = new WebSocketDeploymentInfo();
    wsDeployInfo.setBuffers(new ByteBufferSlicePool(100, 1000));
    for(Class<?> serverEndpoint : scannerResult.getServerEndpoints() ){
      wsDeployInfo.addEndpoint( serverEndpoint );
    }
    builder.addServletContextAttribute(WebSocketDeploymentInfo.ATTRIBUTE_NAME, wsDeployInfo);
    builder.setDeploymentName("websocketDeploy.war");

    final ServletContainer container = ServletContainer.Factory.newInstance();
    DeploymentManager manager = container.addDeployment(builder);
    manager.deploy();
    try {
      OvertownSessionManager sessionManager = OvertownSessionManager.getInstance();
      String wsContextPath = "ws";
      if( !appContext.endsWith("/") ){
        wsContextPath += appContext + "/" + wsContextPath;
      }
      pathHandler.addPrefixPath( wsContextPath ,
              new SessionAttachmentHandler(  manager.start() , sessionManager.getSessionManager(),
                sessionManager.getSessionConfig()) );
    } catch (ServletException e) {
      e.printStackTrace();
    }
  }
  String staticContextPath = configuration.getStaticRootPath();
  if( !appContext.endsWith("/") ){
    staticContextPath = appContext + "/" + staticContextPath;
  }
  pathHandler.addPrefixPath( staticContextPath , new ResourceHandlerMounter().mount());
  return pathHandler;
}
 
开发者ID:EsmerilProgramming,项目名称:overtown,代码行数:39,代码来源:StartupHandlerImpl.java


示例4: makeSessionHandler

import io.undertow.server.session.SessionAttachmentHandler; //导入依赖的package包/类
@Override
protected HttpHandler makeSessionHandler(App root, OptionMap config,
		HttpHandler next) {
	InMemorySessionManager sessionManager = new InMemorySessionManager(
			"SessionManagerOfSiden", config.get(Config.MAX_SESSIONS));
	sessionManager.setDefaultSessionTimeout(config
			.get(Config.DEFAULT_SESSION_TIMEOUT_SECONDS));
	SessionCookieConfig sessionConfig = new SessionCookieConfig();
	sessionConfig.setCookieName(config.get(Config.SESSION_COOKIE_NAME));

	register(root, SessionMetrics.to(sessionManager),
			Arrays.asList("type", "Session"));

	return new SessionAttachmentHandler(next, sessionManager, sessionConfig);
}
 
开发者ID:taichi,项目名称:siden,代码行数:16,代码来源:MetricsAppBuilder.java


示例5: makeSessionHandler

import io.undertow.server.session.SessionAttachmentHandler; //导入依赖的package包/类
protected HttpHandler makeSessionHandler(App root, OptionMap config,
		HttpHandler next) {
	InMemorySessionManager sessionManager = new InMemorySessionManager(
			"SessionManagerOfSiden", config.get(Config.MAX_SESSIONS));
	sessionManager.setDefaultSessionTimeout(config
			.get(Config.DEFAULT_SESSION_TIMEOUT_SECONDS));
	SessionCookieConfig sessionConfig = new SessionCookieConfig();
	sessionConfig.setCookieName(config.get(Config.SESSION_COOKIE_NAME));
	return new SessionAttachmentHandler(next, sessionManager, sessionConfig);
}
 
开发者ID:taichi,项目名称:siden,代码行数:11,代码来源:DefaultAppBuilder.java


示例6: main

import io.undertow.server.session.SessionAttachmentHandler; //导入依赖的package包/类
public static void main(final String[] args) {

        final Config config = new DemoConfigFactory().build();

        PathHandler path = new PathHandler();

        path.addExactPath("/", SecurityHandler.build(DemoHandlers.indexHandler(), config, "AnonymousClient"));
        path.addExactPath("/index.html", SecurityHandler.build(DemoHandlers.indexHandler(), config, "AnonymousClient"));

        path.addExactPath("/facebook/notprotected.html", DemoHandlers.protectedIndex);
        path.addExactPath("/facebook/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "FacebookClient"));
        path.addExactPath("/facebook/notprotected.html", SecurityHandler.build(DemoHandlers.notProtectedIndex, config, "AnonymousClient"));
        path.addExactPath("/facebookadmin/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "FacebookClient", "admin"));
        path.addExactPath("/facebookcustom/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "FacebookClient", "custom"));
        path.addExactPath("/twitter/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "TwitterClient,FacebookClient"));
        path.addExactPath("/form/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "FormClient"));
        path.addExactPath("/form/index.html.json", SecurityHandler.build(DemoHandlers.authenticatedJsonHandler, config, "FormClient"));
        path.addExactPath("/basicauth/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "IndirectBasicAuthClient"));
        path.addExactPath("/cas/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "CasClient"));
        path.addExactPath("/saml2/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "SAML2Client"));
        path.addExactPath("/oidc/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "OidcClient"));
        path.addExactPath("/protected/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config));

        path.addExactPath("/dba/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "DirectBasicAuthClient,ParameterClient"));
        path.addExactPath("/rest-jwt/index.html", SecurityHandler.build(DemoHandlers.protectedIndex, config, "ParameterClient"));

        path.addExactPath("/callback", CallbackHandler.build(config, null, true));
        path.addExactPath("/logout", new ApplicationLogoutHandler(config, "/?defaulturlafterlogout"));

        path.addPrefixPath("/assets/js", Handlers.resource(new ClassPathResourceManager(DemoServer.class.getClassLoader())));

        path.addExactPath("/loginForm.html", DemoHandlers.loginFormHandler(config));
        path.addExactPath("/jwt.html", SecurityHandler.build(DemoHandlers.jwtHandler(), config, "AnonymousClient"));
        path.addExactPath("/forceLogin", DemoHandlers.forceLoginHandler(config));

        Undertow server = Undertow.builder().addHttpListener(8080, "localhost")
                .setHandler(new SessionAttachmentHandler(new ErrorHandler(path), new InMemorySessionManager("SessionManager"), new SessionCookieConfig())).build();
        server.start();
    }
 
开发者ID:pac4j,项目名称:undertow-pac4j-demo,代码行数:40,代码来源:DemoServer.java


示例7: createHandlerForPage

import io.undertow.server.session.SessionAttachmentHandler; //导入依赖的package包/类
private HttpHandler createHandlerForPage(final Class<?> pageClass, final Method method,
    final List<Method> beforeExecutemethods) {
  final String[] parameterNames = paranamer.lookupParameterNames(method);
  Page methodPagePath = method.getAnnotation(Page.class);
  final String responseTemplate = methodPagePath.responseTemplate();
  final boolean isJsonResponse = method.getAnnotation(JSONResponse.class) != null;

  HttpHandler handler = null;
  handler = new HttpHandler() {
    private final Logger LOGGER = Logger.getLogger(pageClass);

    // private final Object newInstance = pageClass.getConstructor().newInstance();
    final Map<String, GenericConverter<?>> converterMap = new ConverterMounterImpl()
        .mountParameterConveters(method, parameterNames);
    final Map<String, ParameterConverter> paramConverterMap = new ParameterConverterMounter()
        .identifyParametersTranslators(parameterNames, method.getParameterTypes());

    public void handleRequest(HttpServerExchange exchange) throws Exception {
      Object newInstance = pageClass.getConstructor().newInstance();
      try {
        Class<?>[] parameterTypes = method.getParameterTypes();
        OvertownRequest request = new OvertownRequest(exchange);

        for (Method method : beforeExecutemethods) {
          method.invoke(newInstance, request);
        }
        request.addConverters(converterMap);
        ParametersConverter translator = new ParametersConverter(paramConverterMap);

        Object[] parameters =
            translator.translateParameters(parameterNames, parameterTypes, request);
        CoreClassInjector injector = new CoreClassInjectorImpl();
        parameters =
            injector.injectCoreInstances(parameterNames, parameters, parameterTypes, request);

        method.invoke(newInstance, parameters);

        finishResponse( request );
      } catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException e) {
        e.printStackTrace();
        LOGGER.error(e.getMessage());
      }
    }

    public void finishResponse(OvertownRequest request){
      if(isJsonResponse){
        request.respondAsJson();
      }
      Response response = request.getResponse();
      if (!Page.NO_TEMPLATE.equals(responseTemplate) && !response.isResponseSend()) {
        request.respondAsHttp();

        ((HttpResponse) request.getResponse()).fowardTo(responseTemplate);
      } else {
        if (!response.isResponseSend()) {
          response.finishResponse();
        }
      }
    }
  };

  OvertownSessionManager sessionManager = OvertownSessionManager.getInstance();
  return new SessionAttachmentHandler(handler, sessionManager.getSessionManager(),
      sessionManager.getSessionConfig());
}
 
开发者ID:EsmerilProgramming,项目名称:overtown,代码行数:66,代码来源:HandlerCreator.java


示例8: wrapWithSessionHandler

import io.undertow.server.session.SessionAttachmentHandler; //导入依赖的package包/类
protected HttpHandler wrapWithSessionHandler(HttpHandler handler) {
    return new SessionAttachmentHandler(handler, sessionManager, new SessionCookieConfig());
}
 
开发者ID:projectodd,项目名称:wunderboss,代码行数:4,代码来源:UndertowWeb.java



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java Position类代码示例发布时间:2022-05-23
下一篇:
Java DBFException类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap