<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.7) on Mon Aug 17 10:33:47 EDT 2020 -->
<title>ModularRealmAuthorizer (Apache Shiro :: Core 1.6.0 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2020-08-17">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="ModularRealmAuthorizer (Apache Shiro :: Core 1.6.0 API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ModularRealmAuthorizer.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.shiro.authz</a></div>
<h2 title="Class ModularRealmAuthorizer" class="title">Class ModularRealmAuthorizer</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.shiro.authz.ModularRealmAuthorizer</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code>, <code><a href="permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">PermissionResolverAware</a></code>, <code><a href="permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolverAware</a></code></dd>
</dl>
<hr>
<pre>public class <a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.38">ModularRealmAuthorizer</a>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
implements <a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a>, <a href="permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">PermissionResolverAware</a>, <a href="permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolverAware</a></pre>
<div class="block">A <tt>ModularRealmAuthorizer</tt> is an <tt>Authorizer</tt> implementation that consults one or more configured
 <a href="../realm/Realm.html" title="interface in org.apache.shiro.realm"><code>Realm</code></a>s during an authorization operation.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.2</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#permissionResolver">permissionResolver</a></span></code></th>
<td class="colLast">
<div class="block">A PermissionResolver to be used by <em>all</em> configured realms.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../realm/Realm.html" title="interface in org.apache.shiro.realm">Realm</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#realms">realms</a></span></code></th>
<td class="colLast">
<div class="block">The realms to consult during any authorization check.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#rolePermissionResolver">rolePermissionResolver</a></span></code></th>
<td class="colLast">
<div class="block">A RolePermissionResolver to be used by <em>all</em> configured realms.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">ModularRealmAuthorizer</a></span>()</code></th>
<td class="colLast">
<div class="block">Default no-argument constructor, does nothing.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.util.Collection)">ModularRealmAuthorizer</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../realm/Realm.html" title="interface in org.apache.shiro.realm">Realm</a>&gt;&nbsp;realms)</code></th>
<td class="colLast">
<div class="block">Constructor that accepts the <code>Realm</code>s to consult during an authorization check.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#applyPermissionResolverToRealms()">applyPermissionResolverToRealms</a></span>()</code></th>
<td class="colLast">
<div class="block">Sets the internal <a href="#getPermissionResolver()"><code>getPermissionResolver()</code></a> on any internal configured
 <a href="#getRealms()"><code>Realms</code></a> that implement the <a href="permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission"><code>PermissionResolverAware</code></a> interface.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#applyRolePermissionResolverToRealms()">applyRolePermissionResolverToRealms</a></span>()</code></th>
<td class="colLast">
<div class="block">Sets the internal <a href="#getRolePermissionResolver()"><code>getRolePermissionResolver()</code></a> on any internal configured
 <a href="#getRealms()"><code>Realms</code></a> that implement the <a href="permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission"><code>RolePermissionResolverAware</code></a> interface.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#assertRealmsConfigured()">assertRealmsConfigured</a></span>()</code></th>
<td class="colLast">
<div class="block">Used by the <a href="Authorizer.html" title="interface in org.apache.shiro.authz"><code>Authorizer</code></a> implementation methods to ensure that the <a href="#setRealms(java.util.Collection)"><code>realms</code></a>
 has been set.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPermission(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">checkPermission</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;permission)</code></th>
<td class="colLast">
<div class="block">If !<a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>isPermitted(permission)</code></a>, throws
 an <code>UnauthorizedException</code> otherwise returns quietly.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPermission(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">checkPermission</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
               <a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)</code></th>
<td class="colLast">
<div class="block">If !<a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)"><code>isPermitted(permission)</code></a>, throws
 an <code>UnauthorizedException</code> otherwise returns quietly.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">checkPermissions</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)</code></th>
<td class="colLast">
<div class="block">If !<a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)"><code>isPermitted(permission)</code></a>,
 throws an <code>UnauthorizedException</code> otherwise returns quietly.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">checkPermissions</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</code></th>
<td class="colLast">
<div class="block">If !<a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)"><code>isPermitted(permission)</code></a> for
 <em>all</em> the given Permissions, throws
 an <code>UnauthorizedException</code> otherwise returns quietly.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">checkRole</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;role)</code></th>
<td class="colLast">
<div class="block">If !<a href="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>hasRole(role)</code></a>, throws
 an <code>UnauthorizedException</code> otherwise returns quietly.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">checkRoles</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
          <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;roles)</code></th>
<td class="colLast">
<div class="block">Calls <a href="#checkRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>checkRole</code></a> for each role specified.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">checkRoles</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roles)</code></th>
<td class="colLast">
<div class="block">Calls <a href="#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)"><code>checkRoles(PrincipalCollection principals, String... roles) </code></a>.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPermissionResolver()">getPermissionResolver</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the PermissionResolver to be used on <em>all</em> configured realms, or <code>null</code (the default)
 if all realm instances will each configure their own permission resolver.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../realm/Realm.html" title="interface in org.apache.shiro.realm">Realm</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRealms()">getRealms</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the realms wrapped by this <code>Authorizer</code> which are consulted during an authorization check.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRolePermissionResolver()">getRolePermissionResolver</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the RolePermissionResolver to be used on <em>all</em> configured realms, or <code>null</code (the default)
 if all realm instances will each configure their own permission resolver.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasAllRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">hasAllRoles</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roleIdentifiers)</code></th>
<td class="colLast">
<div class="block">Returns <code>true</code> iff any of the configured realms'
 <a href="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>hasRole(org.apache.shiro.subject.PrincipalCollection, String)</code></a> call returns <code>true</code> for
 <em>all</em> roles specified, <code>false</code> otherwise.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">hasRole</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;roleIdentifier)</code></th>
<td class="colLast">
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>hasRole(org.apache.shiro.subject.PrincipalCollection, String)</code></a> call returns <code>true</code>,
 <code>false</code> otherwise.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>boolean[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasRoles(org.apache.shiro.subject.PrincipalCollection,java.util.List)">hasRoles</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roleIdentifiers)</code></th>
<td class="colLast">
<div class="block">Calls <a href="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>hasRole(org.apache.shiro.subject.PrincipalCollection, String)</code></a> for each role name in the specified
 collection and places the return value from each call at the respective location in the returned array.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">isPermitted</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;permission)</code></th>
<td class="colLast">
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, String)</code></a> returns <code>true</code>,
 <code>false</code> otherwise.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>boolean[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">isPermitted</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)</code></th>
<td class="colLast">
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)"><code>isPermittedAll(org.apache.shiro.subject.PrincipalCollection, String...)</code></a> call returns
 <code>true</code>, <code>false</code> otherwise.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>boolean[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.util.List)">isPermitted</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</code></th>
<td class="colLast">
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.util.List)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, List)</code></a> call returns <code>true</code>,
 <code>false</code> otherwise.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">isPermitted</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
           <a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)</code></th>
<td class="colLast">
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, Permission)</code></a> call returns <code>true</code>,
 <code>false</code> otherwise.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">isPermittedAll</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)</code></th>
<td class="colLast">
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, String)</code></a> call returns <code>true</code>
 for <em>all</em> of the specified string permissions, <code>false</code> otherwise.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">isPermittedAll</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</code></th>
<td class="colLast">
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, Permission)</code></a> call returns <code>true</code>
 for <em>all</em> of the specified Permissions, <code>false</code> otherwise.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setPermissionResolver(org.apache.shiro.authz.permission.PermissionResolver)">setPermissionResolver</a></span>&#8203;(<a href="permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a>&nbsp;permissionResolver)</code></th>
<td class="colLast">
<div class="block">Sets the specified <a href="permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission"><code>PermissionResolver</code></a> on <em>all</em> of the wrapped realms that
 implement the <a href="permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission"><code>PermissionResolverAware</code></a> interface.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setRealms(java.util.Collection)">setRealms</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../realm/Realm.html" title="interface in org.apache.shiro.realm">Realm</a>&gt;&nbsp;realms)</code></th>
<td class="colLast">
<div class="block">Sets the realms wrapped by this <code>Authorizer</code> which are consulted during an authorization check.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setRolePermissionResolver(org.apache.shiro.authz.permission.RolePermissionResolver)">setRolePermissionResolver</a></span>&#8203;(<a href="permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a>&nbsp;rolePermissionResolver)</code></th>
<td class="colLast">
<div class="block">Sets the specified <a href="permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission"><code>RolePermissionResolver</code></a> on <em>all</em> of the wrapped realms that
 implement the <a href="permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission"><code>PermissionResolverAware</code></a> interface.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a id="realms">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>realms</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../realm/Realm.html" title="interface in org.apache.shiro.realm">Realm</a>&gt; <a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.43">realms</a></pre>
<div class="block">The realms to consult during any authorization check.</div>
</li>
</ul>
<a id="permissionResolver">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>permissionResolver</h4>
<pre>protected&nbsp;<a href="permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a> <a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.49">permissionResolver</a></pre>
<div class="block">A PermissionResolver to be used by <em>all</em> configured realms.  Leave <code>null</code> if you wish
 to configure different resolvers for different realms.</div>
</li>
</ul>
<a id="rolePermissionResolver">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>rolePermissionResolver</h4>
<pre>protected&nbsp;<a href="permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a> <a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.55">rolePermissionResolver</a></pre>
<div class="block">A RolePermissionResolver to be used by <em>all</em> configured realms.  Leave <code>null</code> if you wish
 to configure different resolvers for different realms.</div>
</li>
</ul>
</li>
</ul>
</section>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ModularRealmAuthorizer</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.60">ModularRealmAuthorizer</a>()</pre>
<div class="block">Default no-argument constructor, does nothing.</div>
</li>
</ul>
<a id="&lt;init&gt;(java.util.Collection)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ModularRealmAuthorizer</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.69">ModularRealmAuthorizer</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../realm/Realm.html" title="interface in org.apache.shiro.realm">Realm</a>&gt;&nbsp;realms)</pre>
<div class="block">Constructor that accepts the <code>Realm</code>s to consult during an authorization check.  Immediately calls
 <a href="#setRealms(java.util.Collection)"><code>setRealms(realms)</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>realms</code> - the realms to consult during an authorization check.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="getRealms()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRealms</h4>
<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../realm/Realm.html" title="interface in org.apache.shiro.realm">Realm</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.78">getRealms</a>()</pre>
<div class="block">Returns the realms wrapped by this <code>Authorizer</code> which are consulted during an authorization check.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the realms wrapped by this <code>Authorizer</code> which are consulted during an authorization check.</dd>
</dl>
</li>
</ul>
<a id="setRealms(java.util.Collection)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRealms</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.87">setRealms</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../realm/Realm.html" title="interface in org.apache.shiro.realm">Realm</a>&gt;&nbsp;realms)</pre>
<div class="block">Sets the realms wrapped by this <code>Authorizer</code> which are consulted during an authorization check.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>realms</code> - the realms wrapped by this <code>Authorizer</code> which are consulted during an authorization check.</dd>
</dl>
</li>
</ul>
<a id="getPermissionResolver()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPermissionResolver</h4>
<pre class="methodSignature">public&nbsp;<a href="permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.101">getPermissionResolver</a>()</pre>
<div class="block">Returns the PermissionResolver to be used on <em>all</em> configured realms, or <code>null</code (the default)
 if all realm instances will each configure their own permission resolver.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the PermissionResolver to be used on <em>all</em> configured realms, or <code>null</code (the default)
         if realm instances will each configure their own permission resolver.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.0</dd>
</dl>
</li>
</ul>
<a id="setPermissionResolver(org.apache.shiro.authz.permission.PermissionResolver)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPermissionResolver</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.116">setPermissionResolver</a>&#8203;(<a href="permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a>&nbsp;permissionResolver)</pre>
<div class="block">Sets the specified <a href="permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission"><code>PermissionResolver</code></a> on <em>all</em> of the wrapped realms that
 implement the <a href="permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission"><code>PermissionResolverAware</code></a> interface.
 <p/>
 Only call this method if you want the permission resolver to be passed to all realms that implement the
 <code>PermissionResolver</code> interface.  If you do not want this to occur, the realms must
 configure themselves individually (or be configured individually).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="permission/PermissionResolverAware.html#setPermissionResolver(org.apache.shiro.authz.permission.PermissionResolver)">setPermissionResolver</a></code>&nbsp;in interface&nbsp;<code><a href="permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">PermissionResolverAware</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>permissionResolver</code> - the permissionResolver to set on all of the wrapped realms that implement the
                           <a href="permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission"><code>PermissionResolverAware</code></a> interface.</dd>
</dl>
</li>
</ul>
<a id="applyPermissionResolverToRealms()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>applyPermissionResolverToRealms</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.133">applyPermissionResolverToRealms</a>()</pre>
<div class="block">Sets the internal <a href="#getPermissionResolver()"><code>getPermissionResolver()</code></a> on any internal configured
 <a href="#getRealms()"><code>Realms</code></a> that implement the <a href="permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission"><code>PermissionResolverAware</code></a> interface.
 <p/>
 This method is called after setting a permissionResolver on this ModularRealmAuthorizer via the
 <a href="#setPermissionResolver(org.apache.shiro.authz.permission.PermissionResolver)"><code>setPermissionResolver</code></a> method.
 <p/>
 It is also called after setting one or more realms via the <a href="#setRealms(java.util.Collection)"><code>setRealms</code></a> method to allow these
 newly available realms to be given the <code>PermissionResolver</code> already in use.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.0</dd>
</dl>
</li>
</ul>
<a id="getRolePermissionResolver()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRolePermissionResolver</h4>
<pre class="methodSignature">public&nbsp;<a href="permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.153">getRolePermissionResolver</a>()</pre>
<div class="block">Returns the RolePermissionResolver to be used on <em>all</em> configured realms, or <code>null</code (the default)
 if all realm instances will each configure their own permission resolver.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the RolePermissionResolver to be used on <em>all</em> configured realms, or <code>null</code (the default)
         if realm instances will each configure their own role permission resolver.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.0</dd>
</dl>
</li>
</ul>
<a id="setRolePermissionResolver(org.apache.shiro.authz.permission.RolePermissionResolver)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRolePermissionResolver</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.168">setRolePermissionResolver</a>&#8203;(<a href="permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a>&nbsp;rolePermissionResolver)</pre>
<div class="block">Sets the specified <a href="permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission"><code>RolePermissionResolver</code></a> on <em>all</em> of the wrapped realms that
 implement the <a href="permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission"><code>PermissionResolverAware</code></a> interface.
 <p/>
 Only call this method if you want the permission resolver to be passed to all realms that implement the
 <code>RolePermissionResolver</code> interface.  If you do not want this to occur, the realms must
 configure themselves individually (or be configured individually).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="permission/RolePermissionResolverAware.html#setRolePermissionResolver(org.apache.shiro.authz.permission.RolePermissionResolver)">setRolePermissionResolver</a></code>&nbsp;in interface&nbsp;<code><a href="permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolverAware</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rolePermissionResolver</code> - the rolePermissionResolver to set on all of the wrapped realms that implement the
                               <a href="permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission"><code>RolePermissionResolverAware</code></a> interface.</dd>
</dl>
</li>
</ul>
<a id="applyRolePermissionResolverToRealms()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>applyRolePermissionResolverToRealms</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.186">applyRolePermissionResolverToRealms</a>()</pre>
<div class="block">Sets the internal <a href="#getRolePermissionResolver()"><code>getRolePermissionResolver()</code></a> on any internal configured
 <a href="#getRealms()"><code>Realms</code></a> that implement the <a href="permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission"><code>RolePermissionResolverAware</code></a> interface.
 <p/>
 This method is called after setting a rolePermissionResolver on this ModularRealmAuthorizer via the
 <a href="#setRolePermissionResolver(org.apache.shiro.authz.permission.RolePermissionResolver)"><code>setRolePermissionResolver</code></a> method.
 <p/>
 It is also called after setting one or more realms via the <a href="#setRealms(java.util.Collection)"><code>setRealms</code></a> method to allow these
 newly available realms to be given the <code>RolePermissionResolver</code> already in use.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.0</dd>
</dl>
</li>
</ul>
<a id="assertRealmsConfigured()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>assertRealmsConfigured</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.205">assertRealmsConfigured</a>()
                               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IllegalStateException</a></pre>
<div class="block">Used by the <a href="Authorizer.html" title="interface in org.apache.shiro.authz"><code>Authorizer</code></a> implementation methods to ensure that the <a href="#setRealms(java.util.Collection)"><code>realms</code></a>
 has been set.  The default implementation ensures the property is not null and not empty.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IllegalStateException</a></code> - if the <tt>realms</tt> property is configured incorrectly.</dd>
</dl>
</li>
</ul>
<a id="isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.219">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                           <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;permission)</pre>
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, String)</code></a> returns <code>true</code>,
 <code>false</code> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permission</code> - the String representation of a Permission that is being checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the corresponding Subject/user is permitted, false otherwise.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Authorizer.html#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)"><code>Authorizer.isPermitted(PrincipalCollection principals,Permission permission)</code></a></dd>
</dl>
</li>
</ul>
<a id="isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.235">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                           <a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)</pre>
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, Permission)</code></a> call returns <code>true</code>,
 <code>false</code> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permission</code> - the permission that is being checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the corresponding Subject/user is permitted, false otherwise.</dd>
</dl>
</li>
</ul>
<a id="isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">public&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.251">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)</pre>
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)"><code>isPermittedAll(org.apache.shiro.subject.PrincipalCollection, String...)</code></a> call returns
 <code>true</code>, <code>false</code> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the String representations of the Permissions that are being checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an array of booleans whose indices correspond to the index of the
         permissions in the given list.  A true value at an index indicates the user is permitted for
         for the associated <tt>Permission</tt> string in the list.  A false value at an index
         indicates otherwise.</dd>
</dl>
</li>
</ul>
<a id="isPermitted(org.apache.shiro.subject.PrincipalCollection,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">public&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.268">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</pre>
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.util.List)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, List)</code></a> call returns <code>true</code>,
 <code>false</code> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.util.List)">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the permissions that are being checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an array of booleans whose indices correspond to the index of the
         permissions in the given list.  A true value at an index indicates the user is permitted for
         for the associated <tt>Permission</tt> object in the list.  A false value at an index
         indicates otherwise.</dd>
</dl>
</li>
</ul>
<a id="isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermittedAll</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.287">isPermittedAll</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)</pre>
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, String)</code></a> call returns <code>true</code>
 for <em>all</em> of the specified string permissions, <code>false</code> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">isPermittedAll</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the String representations of the Permissions that are being checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the user has all of the specified permissions, false otherwise.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Authorizer.html#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)"><code>Authorizer.isPermittedAll(PrincipalCollection,Collection)</code></a></dd>
</dl>
</li>
</ul>
<a id="isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermittedAll</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.304">isPermittedAll</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</pre>
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, Permission)</code></a> call returns <code>true</code>
 for <em>all</em> of the specified Permissions, <code>false</code> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">isPermittedAll</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the permissions to check.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the user has all of the specified permissions, false otherwise.</dd>
</dl>
</li>
</ul>
<a id="checkPermission(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermission</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.320">checkPermission</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                            <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;permission)
                     throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">If !<a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>isPermitted(permission)</code></a>, throws
 an <code>UnauthorizedException</code> otherwise returns quietly.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#checkPermission(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">checkPermission</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permission</code> - the String representation of the Permission to check.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have the permission.</dd>
</dl>
</li>
</ul>
<a id="checkPermission(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermission</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.331">checkPermission</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                            <a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)
                     throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">If !<a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)"><code>isPermitted(permission)</code></a>, throws
 an <code>UnauthorizedException</code> otherwise returns quietly.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#checkPermission(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">checkPermission</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permission</code> - the Permission to check.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have the permission.</dd>
</dl>
</li>
</ul>
<a id="checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermissions</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.342">checkPermissions</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)
                      throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">If !<a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)"><code>isPermitted(permission)</code></a>,
 throws an <code>UnauthorizedException</code> otherwise returns quietly.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">checkPermissions</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the string representations of Permissions to check.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have all of the given permissions.</dd>
</dl>
</li>
</ul>
<a id="checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermissions</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.356">checkPermissions</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)
                      throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">If !<a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)"><code>isPermitted(permission)</code></a> for
 <em>all</em> the given Permissions, throws
 an <code>UnauthorizedException</code> otherwise returns quietly.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">checkPermissions</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the Permissions to check.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have all of the given permissions.</dd>
</dl>
</li>
</ul>
<a id="hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRole</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.370">hasRole</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;roleIdentifier)</pre>
<div class="block">Returns <code>true</code> if any of the configured realms'
 <a href="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>hasRole(org.apache.shiro.subject.PrincipalCollection, String)</code></a> call returns <code>true</code>,
 <code>false</code> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">hasRole</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>roleIdentifier</code> - the application-specific role identifier (usually a role id or role name).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><tt>true</tt> if the corresponding subject has the specified role, <tt>false</tt> otherwise.</dd>
</dl>
</li>
</ul>
<a id="hasRoles(org.apache.shiro.subject.PrincipalCollection,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRoles</h4>
<pre class="methodSignature">public&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.385">hasRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                          <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roleIdentifiers)</pre>
<div class="block">Calls <a href="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>hasRole(org.apache.shiro.subject.PrincipalCollection, String)</code></a> for each role name in the specified
 collection and places the return value from each call at the respective location in the returned array.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#hasRoles(org.apache.shiro.subject.PrincipalCollection,java.util.List)">hasRoles</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>roleIdentifiers</code> - the application-specific role identifiers to check (usually role ids or role names).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an array of booleans whose indices correspond to the index of the
         roles in the given identifiers.  A true value indicates the user has the
         role at that index.  False indicates the user does not have the role at that index.</dd>
</dl>
</li>
</ul>
<a id="hasAllRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasAllRoles</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.404">hasAllRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roleIdentifiers)</pre>
<div class="block">Returns <code>true</code> iff any of the configured realms'
 <a href="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>hasRole(org.apache.shiro.subject.PrincipalCollection, String)</code></a> call returns <code>true</code> for
 <em>all</em> roles specified, <code>false</code> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#hasAllRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">hasAllRoles</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>roleIdentifiers</code> - the application-specific role identifiers to check (usually role ids or role names).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the user has all the roles, false otherwise.</dd>
</dl>
</li>
</ul>
<a id="checkRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRole</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.418">checkRole</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;role)
               throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">If !<a href="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>hasRole(role)</code></a>, throws
 an <code>UnauthorizedException</code> otherwise returns quietly.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#checkRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">checkRole</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>role</code> - the application-specific role identifier (usually a role id or role name ).</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have the role.</dd>
</dl>
</li>
</ul>
<a id="checkRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRoles</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.428">checkRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roles)
                throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">Calls <a href="#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)"><code>checkRoles(PrincipalCollection principals, String... roles) </code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">checkRoles</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>roles</code> - the application-specific role identifiers to check (usually role ids or role names).</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have all of the specified roles.</dd>
</dl>
</li>
</ul>
<a id="checkRoles(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>checkRoles</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/ModularRealmAuthorizer.html#line.436">checkRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
                       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;roles)
                throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">Calls <a href="#checkRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>checkRole</code></a> for each role specified.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Authorizer.html#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">checkRoles</a></code>&nbsp;in interface&nbsp;<code><a href="Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>roles</code> - the application-specific role identifiers to check (usually role ids or role names).</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have all of the specified roles.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ModularRealmAuthorizer.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2004&#x2013;2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
