Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * JBoss, Home of Professional Open Source.
   * Copyright 2012 Red Hat, Inc., and individual contributors
   * as indicated by the @author tags.
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package io.undertow.server.session;
 
 import java.util.Map;
 
Encapsulation of session cookie configuration. This removes the need for the session manager to know about cookie configuration.

Author(s):
Stuart Douglas
 
 public class SessionCookieConfig implements SessionConfig {
 
     public static final String DEFAULT_SESSION_ID = "JSESSIONID";
 
     private String cookieName = ;
     private String path = "/";
     private String domain;
     private boolean discard;
     private boolean secure;
     private boolean httpOnly;
     private int maxAge;
     private String comment;
 
 
     @Override
     public String rewriteUrl(final String originalUrlfinal String sessionId) {
         return originalUrl;
     }
 
     @Override
     public void setSessionId(final HttpServerExchange exchangefinal String sessionId) {
         Cookie cookie = new CookieImpl(sessionId)
                 .setPath()
                 .setDomain()
                 .setDiscard()
                 .setSecure()
                 .setHttpOnly()
                 .setComment();
         if ( > 0) {
             cookie.setMaxAge();
         }
         exchange.setResponseCookie(cookie);
         exchange.getRequestCookies().put(cookie);
     }
 
     @Override
     public void clearSession(final HttpServerExchange exchangefinal String sessionId) {
         Cookie cookie = new CookieImpl(sessionId)
                 .setPath()
                 .setDomain()
                 .setDiscard()
                 .setSecure()
                 .setHttpOnly()
                 .setMaxAge(0);
         exchange.setResponseCookie(cookie);
         exchange.getRequestCookies().remove();
     }
 
     @Override
     public String findSessionId(final HttpServerExchange exchange) {
         Map<StringCookiecookies = exchange.getRequestCookies();
         if (cookies != null) {
             Cookie sessionId = cookies.get();
             if (sessionId != null) {
                 return sessionId.getValue();
             }
         }
         return null;
     }
 
     @Override
         return findSessionId(exchange) != null ? . : .;
     }
 
     public String getCookieName() {
         return ;
    }
    public SessionCookieConfig setCookieName(final String cookieName) {
        this. = cookieName;
        return this;
    }
    public String getPath() {
        return ;
    }
    public SessionCookieConfig setPath(final String path) {
        this. = path;
        return this;
    }
    public String getDomain() {
        return ;
    }
    public SessionCookieConfig setDomain(final String domain) {
        this. = domain;
        return this;
    }
    public boolean isDiscard() {
        return ;
    }
    public SessionCookieConfig setDiscard(final boolean discard) {
        this. = discard;
        return this;
    }
    public boolean isSecure() {
        return ;
    }
    public SessionCookieConfig setSecure(final boolean secure) {
        this. = secure;
        return this;
    }
    public boolean isHttpOnly() {
        return ;
    }
    public SessionCookieConfig setHttpOnly(final boolean httpOnly) {
        this. = httpOnly;
        return this;
    }
    public int getMaxAge() {
        return ;
    }
    public SessionCookieConfig setMaxAge(final int maxAge) {
        this. = maxAge;
        return this;
    }
    public String getComment() {
        return ;
    }
    public SessionCookieConfig setComment(final String comment) {
        this. = comment;
        return this;
    }
New to GrepCode? Check out our FAQ X