public abstract class org.apache.shiro.realm.AuthenticatingRealm extends org.apache.shiro.realm.CachingRealm implements org.apache.shiro.util.Initializable
{
private static final org.slf4j.Logger log;
private static final java.util.concurrent.atomic.AtomicInteger INSTANCE_COUNT;
private static final java.lang.String DEFAULT_AUTHENTICATION_CACHE_SUFFIX;
private org.apache.shiro.authc.credential.CredentialsMatcher credentialsMatcher;
private org.apache.shiro.cache.Cache authenticationCache;
private boolean authenticationCachingEnabled;
private java.lang.String authenticationCacheName;
private java.lang.Class authenticationTokenClass;
public void <init>()
{
org.apache.shiro.realm.AuthenticatingRealm v;
org.apache.shiro.authc.credential.SimpleCredentialsMatcher v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v = new org.apache.shiro.authc.credential.SimpleCredentialsMatcher;
specialinvoke v.<org.apache.shiro.authc.credential.SimpleCredentialsMatcher: void <init>()>();
specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: void <init>(org.apache.shiro.cache.CacheManager,org.apache.shiro.authc.credential.CredentialsMatcher)>(null, v);
return;
}
public void <init>(org.apache.shiro.cache.CacheManager)
{
org.apache.shiro.cache.CacheManager v;
org.apache.shiro.realm.AuthenticatingRealm v;
org.apache.shiro.authc.credential.SimpleCredentialsMatcher v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.cache.CacheManager;
v = new org.apache.shiro.authc.credential.SimpleCredentialsMatcher;
specialinvoke v.<org.apache.shiro.authc.credential.SimpleCredentialsMatcher: void <init>()>();
specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: void <init>(org.apache.shiro.cache.CacheManager,org.apache.shiro.authc.credential.CredentialsMatcher)>(v, v);
return;
}
public void <init>(org.apache.shiro.authc.credential.CredentialsMatcher)
{
org.apache.shiro.authc.credential.CredentialsMatcher v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.authc.credential.CredentialsMatcher;
specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: void <init>(org.apache.shiro.cache.CacheManager,org.apache.shiro.authc.credential.CredentialsMatcher)>(null, v);
return;
}
public void <init>(org.apache.shiro.cache.CacheManager, org.apache.shiro.authc.credential.CredentialsMatcher)
{
org.apache.shiro.authc.credential.CredentialsMatcher v;
org.apache.shiro.cache.CacheManager v;
java.util.concurrent.atomic.AtomicInteger v;
int v;
java.lang.Class v;
java.lang.String v, v, v, v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.cache.CacheManager;
v := @parameter: org.apache.shiro.authc.credential.CredentialsMatcher;
specialinvoke v.<org.apache.shiro.realm.CachingRealm: void <init>()>();
v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.Class authenticationTokenClass> = class "Lorg/apache/shiro/authc/UsernamePasswordToken;";
v.<org.apache.shiro.realm.AuthenticatingRealm: boolean authenticationCachingEnabled> = 0;
v = <org.apache.shiro.realm.AuthenticatingRealm: java.util.concurrent.atomic.AtomicInteger INSTANCE_COUNT>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int getAndIncrement()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
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.authenticationCache");
v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.String authenticationCacheName> = v;
if v <= 0 goto label;
v = v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.String authenticationCacheName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,int)>(v, 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.\u0001");
v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.String authenticationCacheName> = v;
label:
if v == null goto label;
virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: void setCacheManager(org.apache.shiro.cache.CacheManager)>(v);
label:
if v == null goto label;
virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: void setCredentialsMatcher(org.apache.shiro.authc.credential.CredentialsMatcher)>(v);
label:
return;
}
public org.apache.shiro.authc.credential.CredentialsMatcher getCredentialsMatcher()
{
org.apache.shiro.authc.credential.CredentialsMatcher v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v = v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.authc.credential.CredentialsMatcher credentialsMatcher>;
return v;
}
public void setCredentialsMatcher(org.apache.shiro.authc.credential.CredentialsMatcher)
{
org.apache.shiro.authc.credential.CredentialsMatcher v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.authc.credential.CredentialsMatcher;
v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.authc.credential.CredentialsMatcher credentialsMatcher> = v;
return;
}
public java.lang.Class getAuthenticationTokenClass()
{
java.lang.Class v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v = v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.Class authenticationTokenClass>;
return v;
}
public void setAuthenticationTokenClass(java.lang.Class)
{
java.lang.Class v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: java.lang.Class;
v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.Class authenticationTokenClass> = v;
return;
}
public void setAuthenticationCache(org.apache.shiro.cache.Cache)
{
org.apache.shiro.realm.AuthenticatingRealm v;
org.apache.shiro.cache.Cache v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.cache.Cache;
v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache authenticationCache> = v;
return;
}
public org.apache.shiro.cache.Cache getAuthenticationCache()
{
org.apache.shiro.realm.AuthenticatingRealm v;
org.apache.shiro.cache.Cache v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v = v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache authenticationCache>;
return v;
}
public java.lang.String getAuthenticationCacheName()
{
java.lang.String v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v = v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.String authenticationCacheName>;
return v;
}
public void setAuthenticationCacheName(java.lang.String)
{
java.lang.String v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: java.lang.String;
v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.String authenticationCacheName> = v;
return;
}
public boolean isAuthenticationCachingEnabled()
{
org.apache.shiro.realm.AuthenticatingRealm v;
boolean v, v, v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v = v.<org.apache.shiro.realm.AuthenticatingRealm: boolean authenticationCachingEnabled>;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: boolean isCachingEnabled()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public void setAuthenticationCachingEnabled(boolean)
{
org.apache.shiro.realm.AuthenticatingRealm v;
boolean v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: boolean;
v.<org.apache.shiro.realm.AuthenticatingRealm: boolean authenticationCachingEnabled> = v;
if v == 0 goto label;
virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: void setCachingEnabled(boolean)>(1);
label:
return;
}
public void setName(java.lang.String)
{
java.lang.Class v;
java.lang.String v, v, v, v;
org.apache.shiro.realm.AuthenticatingRealm v;
boolean v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: java.lang.String;
specialinvoke v.<org.apache.shiro.realm.CachingRealm: void setName(java.lang.String)>(v);
v = v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.String authenticationCacheName>;
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>(v);
if v == 0 goto label;
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.authenticationCache");
v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.String authenticationCacheName> = v;
label:
return;
}
public boolean supports(org.apache.shiro.authc.AuthenticationToken)
{
java.lang.Class v, v;
org.apache.shiro.authc.AuthenticationToken v;
org.apache.shiro.realm.AuthenticatingRealm v;
boolean v, v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.authc.AuthenticationToken;
if v == null goto label;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.Class getAuthenticationTokenClass()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public final void init()
{
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache getAvailableAuthenticationCache()>();
virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: void onInit()>();
return;
}
protected void onInit()
{
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
return;
}
protected void afterCacheManagerSet()
{
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache getAvailableAuthenticationCache()>();
return;
}
private org.apache.shiro.cache.Cache getAvailableAuthenticationCache()
{
org.apache.shiro.realm.AuthenticatingRealm v;
boolean v;
org.apache.shiro.cache.Cache v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache getAuthenticationCache()>();
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: boolean isAuthenticationCachingEnabled()>();
if v != null goto label;
if v == 0 goto label;
v = specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache getAuthenticationCacheLazy()>();
label:
return v;
}
private org.apache.shiro.cache.Cache getAuthenticationCacheLazy()
{
org.slf4j.Logger v, v;
org.apache.shiro.cache.CacheManager v;
java.lang.String v;
org.apache.shiro.realm.AuthenticatingRealm v;
org.apache.shiro.cache.Cache v, v, v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v = v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache authenticationCache>;
if v != null goto label;
v = <org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String)>("No authenticationCache instance set.  Checking for a cacheManager...");
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.CacheManager getCacheManager()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.String getAuthenticationCacheName()>();
v = <org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("CacheManager [{}] configured.  Building authentication cache \'{}\'", v, v);
v = interfaceinvoke v.<org.apache.shiro.cache.CacheManager: org.apache.shiro.cache.Cache getCache(java.lang.String)>(v);
v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache authenticationCache> = v;
label:
v = v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache authenticationCache>;
return v;
}
private org.apache.shiro.authc.AuthenticationInfo getCachedAuthenticationInfo(org.apache.shiro.authc.AuthenticationToken)
{
org.slf4j.Logger v, v, v;
org.apache.shiro.authc.AuthenticationToken v;
java.lang.Object v, v;
org.apache.shiro.realm.AuthenticatingRealm v;
org.apache.shiro.cache.Cache v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.authc.AuthenticationToken;
v = specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache getAvailableAuthenticationCache()>();
if v == null goto label;
if v == null goto label;
v = <org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String)>("Attempting to retrieve the AuthenticationInfo from cache.");
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.Object getAuthenticationCacheKey(org.apache.shiro.authc.AuthenticationToken)>(v);
v = interfaceinvoke v.<org.apache.shiro.cache.Cache: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = <org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String,java.lang.Object)>("No AuthorizationInfo found in cache for key [{}]", v);
goto label;
label:
v = <org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String,java.lang.Object)>("Found cached AuthorizationInfo for key [{}]", v);
label:
return v;
}
private void cacheAuthenticationInfoIfPossible(org.apache.shiro.authc.AuthenticationToken, org.apache.shiro.authc.AuthenticationInfo)
{
org.apache.shiro.authc.AuthenticationInfo v;
org.slf4j.Logger v, v;
org.apache.shiro.authc.AuthenticationToken v;
java.lang.Object v;
org.apache.shiro.realm.AuthenticatingRealm v;
boolean v;
org.apache.shiro.cache.Cache v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.authc.AuthenticationToken;
v := @parameter: org.apache.shiro.authc.AuthenticationInfo;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: boolean isAuthenticationCachingEnabled(org.apache.shiro.authc.AuthenticationToken,org.apache.shiro.authc.AuthenticationInfo)>(v, v);
if v != 0 goto label;
v = <org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("AuthenticationInfo caching is disabled for info [{}].  Submitted token: [{}].", v, v);
return;
label:
v = specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache getAvailableAuthenticationCache()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.Object getAuthenticationCacheKey(org.apache.shiro.authc.AuthenticationToken)>(v);
interfaceinvoke v.<org.apache.shiro.cache.Cache: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String,java.lang.Object,java.lang.Object)>("Cached AuthenticationInfo for continued authentication.  key=[{}], value=[{}].", v, v);
label:
return;
}
protected boolean isAuthenticationCachingEnabled(org.apache.shiro.authc.AuthenticationToken, org.apache.shiro.authc.AuthenticationInfo)
{
org.apache.shiro.authc.AuthenticationInfo v;
org.apache.shiro.authc.AuthenticationToken v;
org.apache.shiro.realm.AuthenticatingRealm v;
boolean v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.authc.AuthenticationToken;
v := @parameter: org.apache.shiro.authc.AuthenticationInfo;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: boolean isAuthenticationCachingEnabled()>();
return v;
}
public final org.apache.shiro.authc.AuthenticationInfo getAuthenticationInfo(org.apache.shiro.authc.AuthenticationToken) throws org.apache.shiro.authc.AuthenticationException
{
org.apache.shiro.authc.AuthenticationInfo v;
org.slf4j.Logger v, v, v;
org.apache.shiro.authc.AuthenticationToken v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.authc.AuthenticationToken;
v = specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.authc.AuthenticationInfo getCachedAuthenticationInfo(org.apache.shiro.authc.AuthenticationToken)>(v);
if v != null goto label;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.authc.AuthenticationInfo doGetAuthenticationInfo(org.apache.shiro.authc.AuthenticationToken)>(v);
v = <org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Looked up AuthenticationInfo [{}] from doGetAuthenticationInfo", v);
if v == null goto label;
if v == null goto label;
specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: void cacheAuthenticationInfoIfPossible(org.apache.shiro.authc.AuthenticationToken,org.apache.shiro.authc.AuthenticationInfo)>(v, v);
goto label;
label:
v = <org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Using cached authentication info [{}] to perform credentials matching.", v);
label:
if v == null goto label;
virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: void assertCredentialsMatch(org.apache.shiro.authc.AuthenticationToken,org.apache.shiro.authc.AuthenticationInfo)>(v, v);
goto label;
label:
v = <org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("No AuthenticationInfo found for submitted AuthenticationToken [{}].  Returning null.", v);
label:
return v;
}
protected void assertCredentialsMatch(org.apache.shiro.authc.AuthenticationToken, org.apache.shiro.authc.AuthenticationInfo) throws org.apache.shiro.authc.AuthenticationException
{
org.apache.shiro.authc.AuthenticationInfo v;
org.apache.shiro.authc.credential.CredentialsMatcher v;
org.apache.shiro.authc.AuthenticationToken v;
org.apache.shiro.authc.AuthenticationException v;
org.apache.shiro.authc.IncorrectCredentialsException v;
java.lang.Class v;
java.lang.String v, v, v;
org.apache.shiro.realm.AuthenticatingRealm v;
boolean v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.authc.AuthenticationToken;
v := @parameter: org.apache.shiro.authc.AuthenticationInfo;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.authc.credential.CredentialsMatcher getCredentialsMatcher()>();
if v == null goto label;
v = interfaceinvoke v.<org.apache.shiro.authc.credential.CredentialsMatcher: boolean doCredentialsMatch(org.apache.shiro.authc.AuthenticationToken,org.apache.shiro.authc.AuthenticationInfo)>(v, v);
if v != 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.shiro.authc.AuthenticationToken)>(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[])>("Submitted credentials for token [\u] did not match the expected credentials.");
v = new org.apache.shiro.authc.IncorrectCredentialsException;
specialinvoke v.<org.apache.shiro.authc.IncorrectCredentialsException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new org.apache.shiro.authc.AuthenticationException;
v = class "Lorg/apache/shiro/authc/credential/AllowAllCredentialsMatcher;";
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[])>("A CredentialsMatcher must be configured in order to verify credentials during authentication.  If you do not wish for credentials to be examined, you can configure an \u instance.");
specialinvoke v.<org.apache.shiro.authc.AuthenticationException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
protected java.lang.Object getAuthenticationCacheKey(org.apache.shiro.authc.AuthenticationToken)
{
java.lang.Object v;
org.apache.shiro.authc.AuthenticationToken v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.authc.AuthenticationToken;
if v == null goto label;
v = interfaceinvoke v.<org.apache.shiro.authc.AuthenticationToken: java.lang.Object getPrincipal()>();
goto label;
label:
v = null;
label:
return v;
}
protected java.lang.Object getAuthenticationCacheKey(org.apache.shiro.subject.PrincipalCollection)
{
java.lang.Object v;
org.apache.shiro.subject.PrincipalCollection v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.Object getAvailablePrincipal(org.apache.shiro.subject.PrincipalCollection)>(v);
return v;
}
protected void doClearCache(org.apache.shiro.subject.PrincipalCollection)
{
org.apache.shiro.subject.PrincipalCollection v;
org.apache.shiro.realm.AuthenticatingRealm v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
specialinvoke v.<org.apache.shiro.realm.CachingRealm: void doClearCache(org.apache.shiro.subject.PrincipalCollection)>(v);
virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: void clearCachedAuthenticationInfo(org.apache.shiro.subject.PrincipalCollection)>(v);
return;
}
private static boolean isEmpty(org.apache.shiro.subject.PrincipalCollection)
{
org.apache.shiro.subject.PrincipalCollection v;
boolean v, v;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
if v == null goto label;
v = interfaceinvoke v.<org.apache.shiro.subject.PrincipalCollection: boolean isEmpty()>();
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
protected void clearCachedAuthenticationInfo(org.apache.shiro.subject.PrincipalCollection)
{
java.lang.Object v;
org.apache.shiro.subject.PrincipalCollection v;
org.apache.shiro.realm.AuthenticatingRealm v;
boolean v;
org.apache.shiro.cache.Cache v;
v := @this: org.apache.shiro.realm.AuthenticatingRealm;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v = staticinvoke <org.apache.shiro.realm.AuthenticatingRealm: boolean isEmpty(org.apache.shiro.subject.PrincipalCollection)>(v);
if v != 0 goto label;
v = specialinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: org.apache.shiro.cache.Cache getAvailableAuthenticationCache()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.shiro.realm.AuthenticatingRealm: java.lang.Object getAuthenticationCacheKey(org.apache.shiro.subject.PrincipalCollection)>(v);
interfaceinvoke v.<org.apache.shiro.cache.Cache: java.lang.Object remove(java.lang.Object)>(v);
label:
return;
}
protected abstract org.apache.shiro.authc.AuthenticationInfo doGetAuthenticationInfo(org.apache.shiro.authc.AuthenticationToken) throws org.apache.shiro.authc.AuthenticationException;
static void <clinit>()
{
org.slf4j.Logger v;
java.util.concurrent.atomic.AtomicInteger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/shiro/realm/AuthenticatingRealm;");
<org.apache.shiro.realm.AuthenticatingRealm: org.slf4j.Logger log> = v;
v = new java.util.concurrent.atomic.AtomicInteger;
specialinvoke v.<java.util.concurrent.atomic.AtomicInteger: void <init>()>();
<org.apache.shiro.realm.AuthenticatingRealm: java.util.concurrent.atomic.AtomicInteger INSTANCE_COUNT> = v;
return;
}
}