public class org.apache.shiro.authz.ModularRealmAuthorizer extends java.lang.Object implements org.apache.shiro.authz.Authorizer, org.apache.shiro.authz.permission.PermissionResolverAware, org.apache.shiro.authz.permission.RolePermissionResolverAware
{
protected java.util.Collection realms;
protected org.apache.shiro.authz.permission.PermissionResolver permissionResolver;
protected org.apache.shiro.authz.permission.RolePermissionResolver rolePermissionResolver;
public void <init>()
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public void <init>(java.util.Collection)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Collection v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: java.util.Collection;
specialinvoke v.<java.lang.Object: void <init>()>();
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void setRealms(java.util.Collection)>(v);
return;
}
public java.util.Collection getRealms()
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Collection v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v = v.<org.apache.shiro.authz.ModularRealmAuthorizer: java.util.Collection realms>;
return v;
}
public void setRealms(java.util.Collection)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Collection v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: java.util.Collection;
v.<org.apache.shiro.authz.ModularRealmAuthorizer: java.util.Collection realms> = v;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void applyPermissionResolverToRealms()>();
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void applyRolePermissionResolverToRealms()>();
return;
}
public org.apache.shiro.authz.permission.PermissionResolver getPermissionResolver()
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
org.apache.shiro.authz.permission.PermissionResolver v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v = v.<org.apache.shiro.authz.ModularRealmAuthorizer: org.apache.shiro.authz.permission.PermissionResolver permissionResolver>;
return v;
}
public void setPermissionResolver(org.apache.shiro.authz.permission.PermissionResolver)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
org.apache.shiro.authz.permission.PermissionResolver v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.authz.permission.PermissionResolver;
v.<org.apache.shiro.authz.ModularRealmAuthorizer: org.apache.shiro.authz.permission.PermissionResolver permissionResolver> = v;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void applyPermissionResolverToRealms()>();
return;
}
protected void applyPermissionResolverToRealms()
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Iterator v;
java.util.Collection v;
org.apache.shiro.authz.permission.PermissionResolver v;
org.apache.shiro.realm.Realm v;
java.lang.Object v;
boolean v, v, v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: org.apache.shiro.authz.permission.PermissionResolver getPermissionResolver()>();
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: java.util.Collection getRealms()>();
if v == null goto label;
if v == null goto label;
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v instanceof org.apache.shiro.authz.permission.PermissionResolverAware;
if v == 0 goto label;
interfaceinvoke v.<org.apache.shiro.authz.permission.PermissionResolverAware: void setPermissionResolver(org.apache.shiro.authz.permission.PermissionResolver)>(v);
goto label;
label:
return;
}
public org.apache.shiro.authz.permission.RolePermissionResolver getRolePermissionResolver()
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
org.apache.shiro.authz.permission.RolePermissionResolver v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v = v.<org.apache.shiro.authz.ModularRealmAuthorizer: org.apache.shiro.authz.permission.RolePermissionResolver rolePermissionResolver>;
return v;
}
public void setRolePermissionResolver(org.apache.shiro.authz.permission.RolePermissionResolver)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
org.apache.shiro.authz.permission.RolePermissionResolver v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.authz.permission.RolePermissionResolver;
v.<org.apache.shiro.authz.ModularRealmAuthorizer: org.apache.shiro.authz.permission.RolePermissionResolver rolePermissionResolver> = v;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void applyRolePermissionResolverToRealms()>();
return;
}
protected void applyRolePermissionResolverToRealms()
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Iterator v;
java.util.Collection v;
org.apache.shiro.authz.permission.RolePermissionResolver v;
org.apache.shiro.realm.Realm v;
java.lang.Object v;
boolean v, v, v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: org.apache.shiro.authz.permission.RolePermissionResolver getRolePermissionResolver()>();
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: java.util.Collection getRealms()>();
if v == null goto label;
if v == null goto label;
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v instanceof org.apache.shiro.authz.permission.RolePermissionResolverAware;
if v == 0 goto label;
interfaceinvoke v.<org.apache.shiro.authz.permission.RolePermissionResolverAware: void setRolePermissionResolver(org.apache.shiro.authz.permission.RolePermissionResolver)>(v);
goto label;
label:
return;
}
protected void assertRealmsConfigured() throws java.lang.IllegalStateException
{
java.lang.IllegalStateException v;
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Collection v;
boolean v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: java.util.Collection getRealms()>();
if v == null goto label;
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v == 0 goto label;
label:
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Configuration error:  No realms have been configured!  One or more realms must be present to execute an authorization operation.");
throw v;
label:
return;
}
public boolean isPermitted(org.apache.shiro.subject.PrincipalCollection, java.lang.String)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Iterator v;
java.util.Collection v;
org.apache.shiro.realm.Realm v;
java.lang.Object v;
org.apache.shiro.subject.PrincipalCollection v;
java.lang.String v;
boolean v, v, v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.lang.String;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: java.util.Collection getRealms()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v instanceof org.apache.shiro.authz.Authorizer;
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.shiro.authz.Authorizer: boolean isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)>(v, v);
if v == 0 goto label;
return 1;
label:
return 0;
}
public boolean isPermitted(org.apache.shiro.subject.PrincipalCollection, org.apache.shiro.authz.Permission)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Iterator v;
java.util.Collection v;
org.apache.shiro.authz.Permission v;
org.apache.shiro.realm.Realm v;
java.lang.Object v;
org.apache.shiro.subject.PrincipalCollection v;
boolean v, v, v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: org.apache.shiro.authz.Permission;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: java.util.Collection getRealms()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v instanceof org.apache.shiro.authz.Authorizer;
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.shiro.authz.Authorizer: boolean isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)>(v, v);
if v == 0 goto label;
return 1;
label:
return 0;
}
public transient boolean[] isPermitted(org.apache.shiro.subject.PrincipalCollection, java.lang.String[])
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
boolean[] v, v;
java.lang.String[] v;
int v, v, v, v;
org.apache.shiro.subject.PrincipalCollection v;
java.lang.String v;
boolean v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.lang.String[];
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
if v == null goto label;
v = lengthof v;
if v <= 0 goto label;
v = lengthof v;
v = newarray (boolean)[v];
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: boolean isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)>(v, v);
v[v] = v;
v = v + 1;
goto label;
label:
return v;
label:
v = newarray (boolean)[0];
return v;
}
public boolean[] isPermitted(org.apache.shiro.subject.PrincipalCollection, java.util.List)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Iterator v;
boolean[] v, v;
java.util.List v;
int v, v, v;
java.lang.Object v;
org.apache.shiro.subject.PrincipalCollection v;
boolean v, v, v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.util.List;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
if v == null goto label;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.util.List: int size()>();
v = newarray (boolean)[v];
v = 0;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v;
v = v + 1;
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: boolean isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)>(v, v);
v[v] = v;
goto label;
label:
return v;
label:
v = newarray (boolean)[0];
return v;
}
public transient boolean isPermittedAll(org.apache.shiro.subject.PrincipalCollection, java.lang.String[])
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.lang.String[] v;
int v, v, v;
org.apache.shiro.subject.PrincipalCollection v;
java.lang.String v;
boolean v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.lang.String[];
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
if v == null goto label;
v = lengthof v;
if v <= 0 goto label;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: boolean isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)>(v, v);
if v != 0 goto label;
return 0;
label:
v = v + 1;
goto label;
label:
return 1;
}
public boolean isPermittedAll(org.apache.shiro.subject.PrincipalCollection, java.util.Collection)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Iterator v;
java.util.Collection v;
java.lang.Object v;
org.apache.shiro.subject.PrincipalCollection v;
boolean v, v, v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.util.Collection;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
if v == null goto label;
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: boolean isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)>(v, v);
if v != 0 goto label;
return 0;
label:
return 1;
}
public void checkPermission(org.apache.shiro.subject.PrincipalCollection, java.lang.String) throws org.apache.shiro.authz.AuthorizationException
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
org.apache.shiro.authz.UnauthorizedException v;
org.apache.shiro.subject.PrincipalCollection v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.lang.String;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: boolean isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)>(v, v);
if v != 0 goto label;
v = new org.apache.shiro.authz.UnauthorizedException;
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[])>("Subject does not have permission [\u]");
specialinvoke v.<org.apache.shiro.authz.UnauthorizedException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public void checkPermission(org.apache.shiro.subject.PrincipalCollection, org.apache.shiro.authz.Permission) throws org.apache.shiro.authz.AuthorizationException
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
org.apache.shiro.authz.UnauthorizedException v;
org.apache.shiro.subject.PrincipalCollection v;
java.lang.String v;
org.apache.shiro.authz.Permission v;
boolean v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: org.apache.shiro.authz.Permission;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: boolean isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)>(v, v);
if v != 0 goto label;
v = new org.apache.shiro.authz.UnauthorizedException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.shiro.authz.Permission)>(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[])>("Subject does not have permission [\u]");
specialinvoke v.<org.apache.shiro.authz.UnauthorizedException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public transient void checkPermissions(org.apache.shiro.subject.PrincipalCollection, java.lang.String[]) throws org.apache.shiro.authz.AuthorizationException
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
int v, v, v;
java.lang.String[] v;
org.apache.shiro.subject.PrincipalCollection v;
java.lang.String v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.lang.String[];
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
if v == null goto label;
v = lengthof v;
if v <= 0 goto label;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void checkPermission(org.apache.shiro.subject.PrincipalCollection,java.lang.String)>(v, v);
v = v + 1;
goto label;
label:
return;
}
public void checkPermissions(org.apache.shiro.subject.PrincipalCollection, java.util.Collection) throws org.apache.shiro.authz.AuthorizationException
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Iterator v;
java.util.Collection v;
java.lang.Object v;
org.apache.shiro.subject.PrincipalCollection v;
boolean v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.util.Collection;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
if v == null goto label;
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void checkPermission(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)>(v, v);
goto label;
label:
return;
}
public boolean hasRole(org.apache.shiro.subject.PrincipalCollection, java.lang.String)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Iterator v;
java.util.Collection v;
org.apache.shiro.realm.Realm v;
java.lang.Object v;
org.apache.shiro.subject.PrincipalCollection v;
java.lang.String v;
boolean v, v, v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.lang.String;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: java.util.Collection getRealms()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v instanceof org.apache.shiro.authz.Authorizer;
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.shiro.authz.Authorizer: boolean hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)>(v, v);
if v == 0 goto label;
return 1;
label:
return 0;
}
public boolean[] hasRoles(org.apache.shiro.subject.PrincipalCollection, java.util.List)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Iterator v;
boolean[] v, v;
java.util.List v;
int v, v, v;
java.lang.Object v;
org.apache.shiro.subject.PrincipalCollection v;
boolean v, v, v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.util.List;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
if v == null goto label;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.util.List: int size()>();
v = newarray (boolean)[v];
v = 0;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v;
v = v + 1;
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: boolean hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)>(v, v);
v[v] = v;
goto label;
label:
return v;
label:
v = newarray (boolean)[0];
return v;
}
public boolean hasAllRoles(org.apache.shiro.subject.PrincipalCollection, java.util.Collection)
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.util.Iterator v;
java.util.Collection v;
java.lang.Object v;
org.apache.shiro.subject.PrincipalCollection v;
boolean v, v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.util.Collection;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: boolean hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)>(v, v);
if v != 0 goto label;
return 0;
label:
return 1;
}
public void checkRole(org.apache.shiro.subject.PrincipalCollection, java.lang.String) throws org.apache.shiro.authz.AuthorizationException
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
org.apache.shiro.authz.UnauthorizedException v;
org.apache.shiro.subject.PrincipalCollection v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.lang.String;
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
v = virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: boolean hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)>(v, v);
if v != 0 goto label;
v = new org.apache.shiro.authz.UnauthorizedException;
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[])>("Subject does not have role [\u]");
specialinvoke v.<org.apache.shiro.authz.UnauthorizedException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public void checkRoles(org.apache.shiro.subject.PrincipalCollection, java.util.Collection) throws org.apache.shiro.authz.AuthorizationException
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
java.lang.Object[] v;
java.util.Collection v;
int v;
java.lang.String[] v;
org.apache.shiro.subject.PrincipalCollection v;
boolean v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.util.Collection;
if v == null goto label;
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.util.Collection: int size()>();
v = newarray (java.lang.String)[v];
v = interfaceinvoke v.<java.util.Collection: java.lang.Object[] toArray(java.lang.Object[])>(v);
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void checkRoles(org.apache.shiro.subject.PrincipalCollection,java.lang.String[])>(v, v);
label:
return;
}
public transient void checkRoles(org.apache.shiro.subject.PrincipalCollection, java.lang.String[]) throws org.apache.shiro.authz.AuthorizationException
{
org.apache.shiro.authz.ModularRealmAuthorizer v;
int v, v;
java.lang.String[] v;
org.apache.shiro.subject.PrincipalCollection v;
java.lang.String v;
v := @this: org.apache.shiro.authz.ModularRealmAuthorizer;
v := @parameter: org.apache.shiro.subject.PrincipalCollection;
v := @parameter: java.lang.String[];
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void assertRealmsConfigured()>();
if v == null goto label;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
virtualinvoke v.<org.apache.shiro.authz.ModularRealmAuthorizer: void checkRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)>(v, v);
v = v + 1;
goto label;
label:
return;
}
}