org.apache.shiro.web.servlet
Class ShiroHttpSession

java.lang.Object
  extended by org.apache.shiro.web.servlet.ShiroHttpSession
All Implemented Interfaces:
HttpSession

public class ShiroHttpSession
extends Object
implements HttpSession

Wrapper class that uses a Shiro Session under the hood for all session operations instead of the Servlet Container's session mechanism. This is required in heterogeneous client environments where the Session is used on both the business tier as well as in multiple client technologies (web, swing, flash, etc) since Servlet container sessions alone cannot support this feature.

Since:
0.2

Field Summary
protected  HttpServletRequest currentRequest
           
static String DEFAULT_SESSION_ID_NAME
           
protected  ServletContext servletContext
           
protected  Session session
           
 
Constructor Summary
ShiroHttpSession(Session session, HttpServletRequest currentRequest, ServletContext servletContext)
           
 
Method Summary
protected  void afterBound(String s, Object o)
           
protected  void afterUnbound(String s, Object o)
           
 Object getAttribute(String s)
           
 Enumeration getAttributeNames()
           
 long getCreationTime()
           
 String getId()
           
protected  Set<String> getKeyNames()
           
 long getLastAccessedTime()
           
 int getMaxInactiveInterval()
           
 ServletContext getServletContext()
           
 Session getSession()
           
 HttpSessionContext getSessionContext()
           
 Object getValue(String s)
           
 String[] getValueNames()
           
 void invalidate()
           
 boolean isNew()
           
 void putValue(String s, Object o)
           
 void removeAttribute(String s)
           
 void removeValue(String s)
           
 void setAttribute(String s, Object o)
           
 void setMaxInactiveInterval(int i)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_SESSION_ID_NAME

public static final String DEFAULT_SESSION_ID_NAME
See Also:
Constant Field Values

servletContext

protected ServletContext servletContext

currentRequest

protected HttpServletRequest currentRequest

session

protected Session session
Constructor Detail

ShiroHttpSession

public ShiroHttpSession(Session session,
                        HttpServletRequest currentRequest,
                        ServletContext servletContext)
Method Detail

getSession

public Session getSession()

getCreationTime

public long getCreationTime()
Specified by:
getCreationTime in interface HttpSession

getId

public String getId()
Specified by:
getId in interface HttpSession

getLastAccessedTime

public long getLastAccessedTime()
Specified by:
getLastAccessedTime in interface HttpSession

getServletContext

public ServletContext getServletContext()
Specified by:
getServletContext in interface HttpSession

setMaxInactiveInterval

public void setMaxInactiveInterval(int i)
Specified by:
setMaxInactiveInterval in interface HttpSession

getMaxInactiveInterval

public int getMaxInactiveInterval()
Specified by:
getMaxInactiveInterval in interface HttpSession

getSessionContext

public HttpSessionContext getSessionContext()
Specified by:
getSessionContext in interface HttpSession

getAttribute

public Object getAttribute(String s)
Specified by:
getAttribute in interface HttpSession

getValue

public Object getValue(String s)
Specified by:
getValue in interface HttpSession

getKeyNames

protected Set<String> getKeyNames()

getAttributeNames

public Enumeration getAttributeNames()
Specified by:
getAttributeNames in interface HttpSession

getValueNames

public String[] getValueNames()
Specified by:
getValueNames in interface HttpSession

afterBound

protected void afterBound(String s,
                          Object o)

afterUnbound

protected void afterUnbound(String s,
                            Object o)

setAttribute

public void setAttribute(String s,
                         Object o)
Specified by:
setAttribute in interface HttpSession

putValue

public void putValue(String s,
                     Object o)
Specified by:
putValue in interface HttpSession

removeAttribute

public void removeAttribute(String s)
Specified by:
removeAttribute in interface HttpSession

removeValue

public void removeValue(String s)
Specified by:
removeValue in interface HttpSession

invalidate

public void invalidate()
Specified by:
invalidate in interface HttpSession

isNew

public boolean isNew()
Specified by:
isNew in interface HttpSession


Copyright © 2004-2014 The Apache Software Foundation. All Rights Reserved.