public class org.apache.shiro.web.session.HttpServletSession extends java.lang.Object implements org.apache.shiro.session.Session
{
private static final java.lang.String HOST_SESSION_KEY;
private static final java.lang.String TOUCH_OBJECT_SESSION_KEY;
private javax.servlet.http.HttpSession httpSession;
public void <init>(javax.servlet.http.HttpSession, java.lang.String)
{
javax.servlet.http.HttpSession v;
java.lang.String v;
org.apache.shiro.web.session.HttpServletSession v;
java.lang.IllegalArgumentException v, v;
boolean v, v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
v := @parameter: javax.servlet.http.HttpSession;
v := @parameter: java.lang.String;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession> = null;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("HttpSession constructor argument cannot be null.");
throw v;
label:
v = v instanceof org.apache.shiro.web.servlet.ShiroHttpSession;
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("HttpSession constructor argument cannot be an instance of ShiroHttpSession.  This is enforced to prevent circular dependencies and infinite loops.");
throw v;
label:
v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession> = v;
v = staticinvoke <org.apache.shiro.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v == 0 goto label;
virtualinvoke v.<org.apache.shiro.web.session.HttpServletSession: void setHost(java.lang.String)>(v);
label:
return;
}
public java.io.Serializable getId()
{
javax.servlet.http.HttpSession v;
java.lang.String v;
org.apache.shiro.web.session.HttpServletSession v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
v = interfaceinvoke v.<javax.servlet.http.HttpSession: java.lang.String getId()>();
return v;
}
public java.util.Date getStartTimestamp()
{
javax.servlet.http.HttpSession v;
java.util.Date v;
long v;
org.apache.shiro.web.session.HttpServletSession v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
v = new java.util.Date;
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
v = interfaceinvoke v.<javax.servlet.http.HttpSession: long getCreationTime()>();
specialinvoke v.<java.util.Date: void <init>(long)>(v);
return v;
}
public java.util.Date getLastAccessTime()
{
javax.servlet.http.HttpSession v;
java.util.Date v;
long v;
org.apache.shiro.web.session.HttpServletSession v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
v = new java.util.Date;
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
v = interfaceinvoke v.<javax.servlet.http.HttpSession: long getLastAccessedTime()>();
specialinvoke v.<java.util.Date: void <init>(long)>(v);
return v;
}
public long getTimeout() throws org.apache.shiro.session.InvalidSessionException
{
javax.servlet.http.HttpSession v;
org.apache.shiro.session.InvalidSessionException v;
int v;
long v;
org.apache.shiro.web.session.HttpServletSession v;
java.lang.Exception v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
label:
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
v = interfaceinvoke v.<javax.servlet.http.HttpSession: int getMaxInactiveInterval()>();
v = v * 1000L;
label:
return v;
label:
v := @caughtexception;
v = new org.apache.shiro.session.InvalidSessionException;
specialinvoke v.<org.apache.shiro.session.InvalidSessionException: void <init>(java.lang.Throwable)>(v);
throw v;
catch java.lang.Exception from label to label with label;
}
public void setTimeout(long) throws org.apache.shiro.session.InvalidSessionException
{
javax.servlet.http.HttpSession v;
org.apache.shiro.session.InvalidSessionException v;
long v, v;
java.lang.Exception v;
java.lang.Long v;
int v;
org.apache.shiro.web.session.HttpServletSession v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
v := @parameter: long;
label:
v = v / 1000L;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = virtualinvoke v.<java.lang.Long: int intValue()>();
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
interfaceinvoke v.<javax.servlet.http.HttpSession: void setMaxInactiveInterval(int)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.shiro.session.InvalidSessionException;
specialinvoke v.<org.apache.shiro.session.InvalidSessionException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
}
protected void setHost(java.lang.String)
{
java.lang.String v, v;
org.apache.shiro.web.session.HttpServletSession v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
v := @parameter: java.lang.String;
v = <org.apache.shiro.web.session.HttpServletSession: java.lang.String HOST_SESSION_KEY>;
virtualinvoke v.<org.apache.shiro.web.session.HttpServletSession: void setAttribute(java.lang.Object,java.lang.Object)>(v, v);
return;
}
public java.lang.String getHost()
{
java.lang.Object v;
java.lang.String v;
org.apache.shiro.web.session.HttpServletSession v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
v = <org.apache.shiro.web.session.HttpServletSession: java.lang.String HOST_SESSION_KEY>;
v = virtualinvoke v.<org.apache.shiro.web.session.HttpServletSession: java.lang.Object getAttribute(java.lang.Object)>(v);
return v;
}
public void touch() throws org.apache.shiro.session.InvalidSessionException
{
javax.servlet.http.HttpSession v, v;
org.apache.shiro.session.InvalidSessionException v;
java.lang.Exception v;
java.lang.String v, v, v;
org.apache.shiro.web.session.HttpServletSession v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
label:
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
v = <org.apache.shiro.web.session.HttpServletSession: java.lang.String TOUCH_OBJECT_SESSION_KEY>;
v = <org.apache.shiro.web.session.HttpServletSession: java.lang.String TOUCH_OBJECT_SESSION_KEY>;
interfaceinvoke v.<javax.servlet.http.HttpSession: void setAttribute(java.lang.String,java.lang.Object)>(v, v);
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
v = <org.apache.shiro.web.session.HttpServletSession: java.lang.String TOUCH_OBJECT_SESSION_KEY>;
interfaceinvoke v.<javax.servlet.http.HttpSession: void removeAttribute(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.shiro.session.InvalidSessionException;
specialinvoke v.<org.apache.shiro.session.InvalidSessionException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
}
public void stop() throws org.apache.shiro.session.InvalidSessionException
{
javax.servlet.http.HttpSession v;
org.apache.shiro.session.InvalidSessionException v;
org.apache.shiro.web.session.HttpServletSession v;
java.lang.Exception v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
label:
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
interfaceinvoke v.<javax.servlet.http.HttpSession: void invalidate()>();
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.shiro.session.InvalidSessionException;
specialinvoke v.<org.apache.shiro.session.InvalidSessionException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
}
public java.util.Collection getAttributeKeys() throws org.apache.shiro.session.InvalidSessionException
{
javax.servlet.http.HttpSession v;
org.apache.shiro.session.InvalidSessionException v;
java.util.Enumeration v;
java.lang.Exception v;
java.util.ArrayList v, v;
java.lang.Object v;
org.apache.shiro.web.session.HttpServletSession v;
boolean v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
label:
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
v = interfaceinvoke v.<javax.servlet.http.HttpSession: java.util.Enumeration getAttributeNames()>();
v = null;
if v == null goto label;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v;
label:
v = interfaceinvoke v.<java.util.Enumeration: boolean hasMoreElements()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Enumeration: java.lang.Object nextElement()>();
interfaceinvoke v.<java.util.Collection: boolean add(java.lang.Object)>(v);
goto label;
label:
return v;
label:
v := @caughtexception;
v = new org.apache.shiro.session.InvalidSessionException;
specialinvoke v.<org.apache.shiro.session.InvalidSessionException: void <init>(java.lang.Throwable)>(v);
throw v;
catch java.lang.Exception from label to label with label;
}
private static java.lang.String assertString(java.lang.Object)
{
java.lang.Object v;
java.lang.IllegalArgumentException v;
boolean v;
v := @parameter: java.lang.Object;
v = v instanceof java.lang.String;
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("HttpSession based implementations of the Shiro Session interface requires attribute keys to be String objects.  The HttpSession class does not support anything other than String keys.");
throw v;
label:
return v;
}
public java.lang.Object getAttribute(java.lang.Object) throws org.apache.shiro.session.InvalidSessionException
{
javax.servlet.http.HttpSession v;
org.apache.shiro.session.InvalidSessionException v;
java.lang.Object v, v;
java.lang.String v;
org.apache.shiro.web.session.HttpServletSession v;
java.lang.Exception v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
v := @parameter: java.lang.Object;
label:
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
v = staticinvoke <org.apache.shiro.web.session.HttpServletSession: java.lang.String assertString(java.lang.Object)>(v);
v = interfaceinvoke v.<javax.servlet.http.HttpSession: java.lang.Object getAttribute(java.lang.String)>(v);
label:
return v;
label:
v := @caughtexception;
v = new org.apache.shiro.session.InvalidSessionException;
specialinvoke v.<org.apache.shiro.session.InvalidSessionException: void <init>(java.lang.Throwable)>(v);
throw v;
catch java.lang.Exception from label to label with label;
}
public void setAttribute(java.lang.Object, java.lang.Object) throws org.apache.shiro.session.InvalidSessionException
{
javax.servlet.http.HttpSession v;
org.apache.shiro.session.InvalidSessionException v;
java.lang.Object v, v;
java.lang.String v;
org.apache.shiro.web.session.HttpServletSession v;
java.lang.Exception v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
label:
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
v = staticinvoke <org.apache.shiro.web.session.HttpServletSession: java.lang.String assertString(java.lang.Object)>(v);
interfaceinvoke v.<javax.servlet.http.HttpSession: void setAttribute(java.lang.String,java.lang.Object)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.shiro.session.InvalidSessionException;
specialinvoke v.<org.apache.shiro.session.InvalidSessionException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
}
public java.lang.Object removeAttribute(java.lang.Object) throws org.apache.shiro.session.InvalidSessionException
{
javax.servlet.http.HttpSession v, v;
org.apache.shiro.session.InvalidSessionException v;
java.lang.Exception v;
java.lang.Object v, v;
java.lang.String v;
org.apache.shiro.web.session.HttpServletSession v;
v := @this: org.apache.shiro.web.session.HttpServletSession;
v := @parameter: java.lang.Object;
label:
v = staticinvoke <org.apache.shiro.web.session.HttpServletSession: java.lang.String assertString(java.lang.Object)>(v);
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
v = interfaceinvoke v.<javax.servlet.http.HttpSession: java.lang.Object getAttribute(java.lang.String)>(v);
v = v.<org.apache.shiro.web.session.HttpServletSession: javax.servlet.http.HttpSession httpSession>;
interfaceinvoke v.<javax.servlet.http.HttpSession: void removeAttribute(java.lang.String)>(v);
label:
return v;
label:
v := @caughtexception;
v = new org.apache.shiro.session.InvalidSessionException;
specialinvoke v.<org.apache.shiro.session.InvalidSessionException: void <init>(java.lang.Throwable)>(v);
throw v;
catch java.lang.Exception from label to label with label;
}
static void <clinit>()
{
java.lang.Class v, v;
java.lang.String v, v, v, v;
v = class "Lorg/apache/shiro/web/session/HttpServletSession;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u.HOST_SESSION_KEY");
<org.apache.shiro.web.session.HttpServletSession: java.lang.String HOST_SESSION_KEY> = v;
v = class "Lorg/apache/shiro/web/session/HttpServletSession;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u.TOUCH_OBJECT_SESSION_KEY");
<org.apache.shiro.web.session.HttpServletSession: java.lang.String TOUCH_OBJECT_SESSION_KEY> = v;
return;
}
}