public class org.apache.shiro.realm.text.IniRealm extends org.apache.shiro.realm.text.TextConfigurationRealm
{
public static final java.lang.String USERS_SECTION_NAME;
public static final java.lang.String ROLES_SECTION_NAME;
private static final transient org.slf4j.Logger log;
private java.lang.String resourcePath;
private org.apache.shiro.config.Ini ini;
public void <init>()
{
org.apache.shiro.realm.text.IniRealm v;
v := @this: org.apache.shiro.realm.text.IniRealm;
specialinvoke v.<org.apache.shiro.realm.text.TextConfigurationRealm: void <init>()>();
return;
}
public void <init>(org.apache.shiro.config.Ini)
{
org.apache.shiro.realm.text.IniRealm v;
org.apache.shiro.config.Ini v;
v := @this: org.apache.shiro.realm.text.IniRealm;
v := @parameter: org.apache.shiro.config.Ini;
specialinvoke v.<org.apache.shiro.realm.text.IniRealm: void <init>()>();
specialinvoke v.<org.apache.shiro.realm.text.IniRealm: void processDefinitions(org.apache.shiro.config.Ini)>(v);
return;
}
public void <init>(java.lang.String)
{
org.apache.shiro.realm.text.IniRealm v;
java.lang.String v;
org.apache.shiro.config.Ini v;
v := @this: org.apache.shiro.realm.text.IniRealm;
v := @parameter: java.lang.String;
specialinvoke v.<org.apache.shiro.realm.text.IniRealm: void <init>()>();
v = staticinvoke <org.apache.shiro.config.Ini: org.apache.shiro.config.Ini fromResourcePath(java.lang.String)>(v);
v.<org.apache.shiro.realm.text.IniRealm: org.apache.shiro.config.Ini ini> = v;
v.<org.apache.shiro.realm.text.IniRealm: java.lang.String resourcePath> = v;
specialinvoke v.<org.apache.shiro.realm.text.IniRealm: void processDefinitions(org.apache.shiro.config.Ini)>(v);
return;
}
public java.lang.String getResourcePath()
{
org.apache.shiro.realm.text.IniRealm v;
java.lang.String v;
v := @this: org.apache.shiro.realm.text.IniRealm;
v = v.<org.apache.shiro.realm.text.IniRealm: java.lang.String resourcePath>;
return v;
}
public void setResourcePath(java.lang.String)
{
org.apache.shiro.realm.text.IniRealm v;
java.lang.String v;
v := @this: org.apache.shiro.realm.text.IniRealm;
v := @parameter: java.lang.String;
v.<org.apache.shiro.realm.text.IniRealm: java.lang.String resourcePath> = v;
return;
}
public org.apache.shiro.config.Ini getIni()
{
org.apache.shiro.realm.text.IniRealm v;
org.apache.shiro.config.Ini v;
v := @this: org.apache.shiro.realm.text.IniRealm;
v = v.<org.apache.shiro.realm.text.IniRealm: org.apache.shiro.config.Ini ini>;
return v;
}
public void setIni(org.apache.shiro.config.Ini)
{
org.apache.shiro.realm.text.IniRealm v;
org.apache.shiro.config.Ini v;
v := @this: org.apache.shiro.realm.text.IniRealm;
v := @parameter: org.apache.shiro.config.Ini;
v.<org.apache.shiro.realm.text.IniRealm: org.apache.shiro.config.Ini ini> = v;
return;
}
protected void onInit()
{
org.apache.shiro.realm.text.IniRealm v;
java.lang.IllegalStateException v;
org.apache.shiro.config.Ini v;
java.util.Map v, v;
java.lang.String v;
boolean v, v, v, v, v, v, v, v;
org.slf4j.Logger v, v, v, v, v;
v := @this: org.apache.shiro.realm.text.IniRealm;
specialinvoke v.<org.apache.shiro.realm.text.TextConfigurationRealm: void onInit()>();
v = virtualinvoke v.<org.apache.shiro.realm.text.IniRealm: org.apache.shiro.config.Ini getIni()>();
v = virtualinvoke v.<org.apache.shiro.realm.text.IniRealm: java.lang.String getResourcePath()>();
v = v.<org.apache.shiro.realm.text.IniRealm: java.util.Map users>;
v = staticinvoke <org.apache.shiro.util.CollectionUtils: boolean isEmpty(java.util.Map)>(v);
if v == 0 goto label;
v = v.<org.apache.shiro.realm.text.IniRealm: java.util.Map roles>;
v = staticinvoke <org.apache.shiro.util.CollectionUtils: boolean isEmpty(java.util.Map)>(v);
if v != 0 goto label;
label:
v = staticinvoke <org.apache.shiro.util.CollectionUtils: boolean isEmpty(java.util.Map)>(v);
if v != 0 goto label;
v = <org.apache.shiro.realm.text.IniRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>("Users or Roles are already populated.  Configured Ini instance will be ignored.");
label:
v = staticinvoke <org.apache.shiro.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v == 0 goto label;
v = <org.apache.shiro.realm.text.IniRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Users or Roles are already populated.  resourcePath \'{}\' will be ignored.", v);
label:
v = <org.apache.shiro.realm.text.IniRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Instance is already populated with users or roles.  No additional user/role population will be performed.");
return;
label:
v = staticinvoke <org.apache.shiro.util.CollectionUtils: boolean isEmpty(java.util.Map)>(v);
if v == 0 goto label;
v = <org.apache.shiro.realm.text.IniRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("No INI instance configuration present.  Checking resourcePath...");
v = staticinvoke <org.apache.shiro.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v == 0 goto label;
v = <org.apache.shiro.realm.text.IniRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Resource path {} defined.  Creating INI instance.", v);
v = staticinvoke <org.apache.shiro.config.Ini: org.apache.shiro.config.Ini fromResourcePath(java.lang.String)>(v);
v = staticinvoke <org.apache.shiro.util.CollectionUtils: boolean isEmpty(java.util.Map)>(v);
if v != 0 goto label;
virtualinvoke v.<org.apache.shiro.realm.text.IniRealm: void setIni(org.apache.shiro.config.Ini)>(v);
label:
v = staticinvoke <org.apache.shiro.util.CollectionUtils: boolean isEmpty(java.util.Map)>(v);
if v == 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Ini instance and/or resourcePath resulted in null or empty Ini configuration.  Cannot load account data.");
throw v;
label:
specialinvoke v.<org.apache.shiro.realm.text.IniRealm: void processDefinitions(org.apache.shiro.config.Ini)>(v);
return;
}
private void processDefinitions(org.apache.shiro.config.Ini)
{
org.apache.shiro.realm.text.IniRealm v;
org.slf4j.Logger v, v, v, v;
org.apache.shiro.config.Ini v;
java.lang.Class v, v;
java.lang.String v, v;
org.apache.shiro.config.Ini$Section v, v;
boolean v, v, v;
v := @this: org.apache.shiro.realm.text.IniRealm;
v := @parameter: org.apache.shiro.config.Ini;
v = staticinvoke <org.apache.shiro.util.CollectionUtils: boolean isEmpty(java.util.Map)>(v);
if v == 0 goto label;
v = <org.apache.shiro.realm.text.IniRealm: org.slf4j.Logger log>;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("{} defined, but the ini instance is null or empty.", v);
return;
label:
v = virtualinvoke v.<org.apache.shiro.config.Ini: org.apache.shiro.config.Ini$Section getSection(java.lang.String)>("roles");
v = staticinvoke <org.apache.shiro.util.CollectionUtils: boolean isEmpty(java.util.Map)>(v);
if v != 0 goto label;
v = <org.apache.shiro.realm.text.IniRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Discovered the [{}] section.  Processing...", "roles");
virtualinvoke v.<org.apache.shiro.realm.text.IniRealm: void processRoleDefinitions(java.util.Map)>(v);
label:
v = virtualinvoke v.<org.apache.shiro.config.Ini: org.apache.shiro.config.Ini$Section getSection(java.lang.String)>("users");
v = staticinvoke <org.apache.shiro.util.CollectionUtils: boolean isEmpty(java.util.Map)>(v);
if v != 0 goto label;
v = <org.apache.shiro.realm.text.IniRealm: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Discovered the [{}] section.  Processing...", "users");
virtualinvoke v.<org.apache.shiro.realm.text.IniRealm: void processUserDefinitions(java.util.Map)>(v);
goto label;
label:
v = <org.apache.shiro.realm.text.IniRealm: org.slf4j.Logger log>;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} defined, but there is no [{}] section defined.  This realm will not be populated with any users and it is assumed that they will be populated programatically.  Users must be defined for this Realm instance to be useful.", v, "users");
label:
return;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/shiro/realm/text/IniRealm;");
<org.apache.shiro.realm.text.IniRealm: org.slf4j.Logger log> = v;
return;
}
}