class org.glassfish.common.util.admin.RestSessionManager$SessionData extends java.lang.Object
{
private java.lang.String clientAddress;
private long lastAccessedTime;
private final long inactiveSessionLifeTime;
private static final java.lang.String DISABLE_REMOTE_ADDRESS_VALIDATION_PROPERTY_NAME;
private final boolean disableRemoteAddressValidation;
private final javax.security.auth.Subject subject;
public void <init>(java.lang.String, java.lang.String, javax.security.auth.Subject, int)
{
long v, v;
javax.security.auth.Subject v;
org.glassfish.common.util.admin.RestSessionManager$SessionData v;
int v;
java.lang.String v, v;
boolean v;
v := @this: org.glassfish.common.util.admin.RestSessionManager$SessionData;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: javax.security.auth.Subject;
v := @parameter: int;
specialinvoke v.<java.lang.Object: void <init>()>();
v = staticinvoke <java.lang.System: long currentTimeMillis()>();
v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: long lastAccessedTime> = v;
v = staticinvoke <java.lang.Boolean: boolean getBoolean(java.lang.String)>("org.glassfish.admin.rest.disable.remote.address.validation");
v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: boolean disableRemoteAddressValidation> = v;
v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: java.lang.String clientAddress> = v;
v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: javax.security.auth.Subject subject> = v;
v = v * 60000L;
v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: long inactiveSessionLifeTime> = v;
return;
}
public boolean isSessionActive()
{
org.glassfish.common.util.admin.RestSessionManager$SessionData v;
byte v;
long v, v, v, v;
boolean v;
v := @this: org.glassfish.common.util.admin.RestSessionManager$SessionData;
v = v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: long lastAccessedTime>;
v = v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: long inactiveSessionLifeTime>;
v = v + v;
v = staticinvoke <java.lang.System: long currentTimeMillis()>();
v = v cmp v;
if v <= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public void updateLastAccessTime()
{
org.glassfish.common.util.admin.RestSessionManager$SessionData v;
long v;
v := @this: org.glassfish.common.util.admin.RestSessionManager$SessionData;
v = staticinvoke <java.lang.System: long currentTimeMillis()>();
v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: long lastAccessedTime> = v;
return;
}
public boolean authenticate(java.lang.String)
{
org.glassfish.common.util.admin.RestSessionManager$SessionData v;
java.lang.String v, v;
boolean v, v, v, v;
v := @this: org.glassfish.common.util.admin.RestSessionManager$SessionData;
v := @parameter: java.lang.String;
v = virtualinvoke v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: boolean isSessionActive()>();
if v == 0 goto label;
v = v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: java.lang.String clientAddress>;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: boolean disableRemoteAddressValidation>;
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public javax.security.auth.Subject subject()
{
org.glassfish.common.util.admin.RestSessionManager$SessionData v;
javax.security.auth.Subject v;
v := @this: org.glassfish.common.util.admin.RestSessionManager$SessionData;
v = v.<org.glassfish.common.util.admin.RestSessionManager$SessionData: javax.security.auth.Subject subject>;
return v;
}
}