blob: 281e4bf9d9aa4a475257b6c8cfce2c8052001fb9 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_65) on Fri Mar 04 17:58:56 EST 2016 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
PropertiesRealm (Apache Shiro 1.2.4 API)
</TITLE>
<META NAME="date" CONTENT="2016-03-04">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="PropertiesRealm (Apache Shiro 1.2.4 API)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/PropertiesRealm.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/shiro/realm/text/IniRealm.html" title="class in org.apache.shiro.realm.text"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html" title="class in org.apache.shiro.realm.text"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/shiro/realm/text/PropertiesRealm.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="PropertiesRealm.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.shiro.realm.text</FONT>
<BR>
Class PropertiesRealm</H2>
<PRE>
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/shiro/realm/CachingRealm.html" title="class in org.apache.shiro.realm">org.apache.shiro.realm.CachingRealm</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm">org.apache.shiro.realm.AuthenticatingRealm</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html" title="class in org.apache.shiro.realm">org.apache.shiro.realm.AuthorizingRealm</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html" title="class in org.apache.shiro.realm">org.apache.shiro.realm.SimpleAccountRealm</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html" title="class in org.apache.shiro.realm.text">org.apache.shiro.realm.text.TextConfigurationRealm</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.shiro.realm.text.PropertiesRealm</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</A>, <A HREF="../../../../../org/apache/shiro/authc/LogoutAware.html" title="interface in org.apache.shiro.authc">LogoutAware</A>, <A HREF="../../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</A>, <A HREF="../../../../../org/apache/shiro/authz/permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">PermissionResolverAware</A>, <A HREF="../../../../../org/apache/shiro/authz/permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolverAware</A>, <A HREF="../../../../../org/apache/shiro/cache/CacheManagerAware.html" title="interface in org.apache.shiro.cache">CacheManagerAware</A>, <A HREF="../../../../../org/apache/shiro/realm/Realm.html" title="interface in org.apache.shiro.realm">Realm</A>, <A HREF="../../../../../org/apache/shiro/util/Destroyable.html" title="interface in org.apache.shiro.util">Destroyable</A>, <A HREF="../../../../../org/apache/shiro/util/Initializable.html" title="interface in org.apache.shiro.util">Initializable</A>, <A HREF="../../../../../org/apache/shiro/util/Nameable.html" title="interface in org.apache.shiro.util">Nameable</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.84"><B>PropertiesRealm</B></A><DT>extends <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html" title="class in org.apache.shiro.realm.text">TextConfigurationRealm</A><DT>implements <A HREF="../../../../../org/apache/shiro/util/Destroyable.html" title="interface in org.apache.shiro.util">Destroyable</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</A></DL>
</PRE>
<P>
A <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html" title="class in org.apache.shiro.realm.text"><CODE>TextConfigurationRealm</CODE></A> that defers all logic to the parent class, but just enables
<A HREF="http://java.sun.com/javase/6/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util"><CODE>Properties</CODE></A> based configuration in addition to the parent class's String configuration.
<p/>
This class allows processing of a single .properties file for user, role, and
permission configuration.
<p/>
The <A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#setResourcePath(java.lang.String)"><CODE>resourcePath</CODE></A> <em>MUST</em> be set before this realm can be initialized. You
can specify any resource path supported by
<A HREF="../../../../../org/apache/shiro/io/ResourceUtils.html#getInputStreamForPath(java.lang.String)"><CODE>ResourceUtils.getInputStreamForPath</CODE></A> method.
<p/>
The Properties format understood by this implementation must be written as follows:
<p/>
Each line's key/value pair represents either a user-to-role(s) mapping <em>or</em> a role-to-permission(s)
mapping.
<p/>
The user-to-role(s) lines have this format:</p>
<p/>
<code><b>user.</b><em>username</em> = <em>password</em>,role1,role2,...</code></p>
<p/>
Note that each key is prefixed with the token <b><code>user.</code></b> Each value must adhere to the
the <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#setUserDefinitions(java.lang.String)"><CODE>setUserDefinitions(String)</CODE></A> JavaDoc.
<p/>
The role-to-permission(s) lines have this format:</p>
<p/>
<code><b>role.</b><em>rolename</em> = <em>permissionDefinition1</em>, <em>permissionDefinition2</em>, ...</code>
<p/>
where each key is prefixed with the token <b><code>role.</code></b> and the value adheres to the format specified in
the <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#setRoleDefinitions(java.lang.String)"><CODE>setRoleDefinitions(String)</CODE></A> JavaDoc.
<p/>
Here is an example of a very simple properties definition that conforms to the above format rules and corresponding
method JavaDocs:
<p/>
<code>user.root = <em>rootPassword</em>,administrator<br/>
user.jsmith = <em>jsmithPassword</em>,manager,engineer,employee<br/>
user.abrown = <em>abrownPassword</em>,qa,employee<br/>
user.djones = <em>djonesPassword</em>,qa,contractor<br/>
<br/>
role.administrator = *<br/>
role.manager = &quot;user:read,write&quot;, file:execute:/usr/local/emailManagers.sh<br/>
role.engineer = &quot;file:read,execute:/usr/local/tomcat/bin/startup.sh&quot;<br/>
role.employee = application:use:wiki<br/>
role.qa = &quot;server:view,start,shutdown,restart:someQaServer&quot;, server:view:someProductionServer<br/>
role.contractor = application:use:timesheet</code>
<P>
<P>
<DL>
<DT><B>Since:</B></DT>
<DD>0.2</DD>
</DL>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#fileLastModified">fileLastModified</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#reloadIntervalSeconds">reloadIntervalSeconds</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#resourcePath">resourcePath</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/util/concurrent/ExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ExecutorService</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#scheduler">scheduler</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#useXmlFormat">useXmlFormat</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.shiro.realm.SimpleAccountRealm"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.shiro.realm.<A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html" title="class in org.apache.shiro.realm">SimpleAccountRealm</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#roles">roles</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#ROLES_LOCK">ROLES_LOCK</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#users">users</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#USERS_LOCK">USERS_LOCK</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#PropertiesRealm()">PropertiesRealm</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#afterRoleCacheSet()">afterRoleCacheSet</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#destroy()">destroy</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Destroy reload scheduler if one exists.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#getName(java.lang.String, java.lang.String)">getName</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;key,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;prefix)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#getRolename(java.lang.String)">getRolename</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#getUsername(java.lang.String)">getUsername</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#isRolename(java.lang.String)">isRolename</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#isUsername(java.lang.String)">isUsername</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#onInit()">onInit</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Will call 'processDefinitions' on startup.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#run()">run</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#setReloadIntervalSeconds(int)">setReloadIntervalSeconds</A></B>(int&nbsp;reloadIntervalSeconds)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the interval in seconds at which the property file will be checked for changes and reloaded.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#setResourcePath(java.lang.String)">setResourcePath</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;resourcePath)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the path of the properties file to load user, role, and permission information from.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#setUseXmlFormat(boolean)">setUseXmlFormat</A></B>(boolean&nbsp;useXmlFormat)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determines whether or not the properties XML format should be used.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/realm/text/PropertiesRealm.html#startReloadThread()">startReloadThread</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.shiro.realm.text.TextConfigurationRealm"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.shiro.realm.text.<A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html" title="class in org.apache.shiro.realm.text">TextConfigurationRealm</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#getRoleDefinitions()">getRoleDefinitions</A>, <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#getUserDefinitions()">getUserDefinitions</A>, <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#processDefinitions()">processDefinitions</A>, <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#processRoleDefinitions()">processRoleDefinitions</A>, <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#processRoleDefinitions(java.util.Map)">processRoleDefinitions</A>, <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#processUserDefinitions()">processUserDefinitions</A>, <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#processUserDefinitions(java.util.Map)">processUserDefinitions</A>, <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#setRoleDefinitions(java.lang.String)">setRoleDefinitions</A>, <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#setUserDefinitions(java.lang.String)">setUserDefinitions</A>, <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#toLines(java.lang.String)">toLines</A>, <A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#toMap(java.util.Collection)">toMap</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.shiro.realm.SimpleAccountRealm"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.shiro.realm.<A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html" title="class in org.apache.shiro.realm">SimpleAccountRealm</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#accountExists(java.lang.String)">accountExists</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#add(org.apache.shiro.authc.SimpleAccount)">add</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#add(org.apache.shiro.authz.SimpleRole)">add</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#addAccount(java.lang.String, java.lang.String)">addAccount</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#addAccount(java.lang.String, java.lang.String, java.lang.String...)">addAccount</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#addRole(java.lang.String)">addRole</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#doGetAuthenticationInfo(org.apache.shiro.authc.AuthenticationToken)">doGetAuthenticationInfo</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#doGetAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)">doGetAuthorizationInfo</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#getRole(java.lang.String)">getRole</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#getUser(java.lang.String)">getUser</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#getUsername(org.apache.shiro.subject.PrincipalCollection)">getUsername</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#getUsername(org.apache.shiro.authc.SimpleAccount)">getUsername</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#roleExists(java.lang.String)">roleExists</A>, <A HREF="../../../../../org/apache/shiro/realm/SimpleAccountRealm.html#toSet(java.lang.String, java.lang.String)">toSet</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.shiro.realm.AuthorizingRealm"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.shiro.realm.<A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html" title="class in org.apache.shiro.realm">AuthorizingRealm</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#afterCacheManagerSet()">afterCacheManagerSet</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermission(org.apache.shiro.authz.Permission, org.apache.shiro.authz.AuthorizationInfo)">checkPermission</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermission(org.apache.shiro.subject.PrincipalCollection, org.apache.shiro.authz.Permission)">checkPermission</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermission(org.apache.shiro.subject.PrincipalCollection, java.lang.String)">checkPermission</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermissions(java.util.Collection, org.apache.shiro.authz.AuthorizationInfo)">checkPermissions</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermissions(org.apache.shiro.subject.PrincipalCollection, java.util.Collection)">checkPermissions</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermissions(org.apache.shiro.subject.PrincipalCollection, java.lang.String...)">checkPermissions</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkRole(org.apache.shiro.subject.PrincipalCollection, java.lang.String)">checkRole</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkRole(java.lang.String, org.apache.shiro.authz.AuthorizationInfo)">checkRole</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkRoles(java.util.Collection, org.apache.shiro.authz.AuthorizationInfo)">checkRoles</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkRoles(org.apache.shiro.subject.PrincipalCollection, java.util.Collection)">checkRoles</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkRoles(org.apache.shiro.subject.PrincipalCollection, java.lang.String...)">checkRoles</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#clearCachedAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)">clearCachedAuthorizationInfo</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#doClearCache(org.apache.shiro.subject.PrincipalCollection)">doClearCache</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationCache()">getAuthorizationCache</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationCacheKey(org.apache.shiro.subject.PrincipalCollection)">getAuthorizationCacheKey</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationCacheName()">getAuthorizationCacheName</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)">getAuthorizationInfo</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#getPermissionResolver()">getPermissionResolver</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#getPermissions(org.apache.shiro.authz.AuthorizationInfo)">getPermissions</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#getRolePermissionResolver()">getRolePermissionResolver</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#hasAllRoles(org.apache.shiro.subject.PrincipalCollection, java.util.Collection)">hasAllRoles</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#hasRole(org.apache.shiro.subject.PrincipalCollection, java.lang.String)">hasRole</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#hasRole(java.lang.String, org.apache.shiro.authz.AuthorizationInfo)">hasRole</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#hasRoles(java.util.List, org.apache.shiro.authz.AuthorizationInfo)">hasRoles</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#hasRoles(org.apache.shiro.subject.PrincipalCollection, java.util.List)">hasRoles</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#isAuthorizationCachingEnabled()">isAuthorizationCachingEnabled</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted(java.util.List, org.apache.shiro.authz.AuthorizationInfo)">isPermitted</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted(org.apache.shiro.authz.Permission, org.apache.shiro.authz.AuthorizationInfo)">isPermitted</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted(org.apache.shiro.subject.PrincipalCollection, java.util.List)">isPermitted</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted(org.apache.shiro.subject.PrincipalCollection, org.apache.shiro.authz.Permission)">isPermitted</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted(org.apache.shiro.subject.PrincipalCollection, java.lang.String...)">isPermitted</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted(org.apache.shiro.subject.PrincipalCollection, java.lang.String)">isPermitted</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermittedAll(java.util.Collection, org.apache.shiro.authz.AuthorizationInfo)">isPermittedAll</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermittedAll(org.apache.shiro.subject.PrincipalCollection, java.util.Collection)">isPermittedAll</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermittedAll(org.apache.shiro.subject.PrincipalCollection, java.lang.String...)">isPermittedAll</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#setAuthorizationCache(org.apache.shiro.cache.Cache)">setAuthorizationCache</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#setAuthorizationCacheName(java.lang.String)">setAuthorizationCacheName</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#setAuthorizationCachingEnabled(boolean)">setAuthorizationCachingEnabled</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#setName(java.lang.String)">setName</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#setPermissionResolver(org.apache.shiro.authz.permission.PermissionResolver)">setPermissionResolver</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthorizingRealm.html#setRolePermissionResolver(org.apache.shiro.authz.permission.RolePermissionResolver)">setRolePermissionResolver</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.shiro.realm.AuthenticatingRealm"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.shiro.realm.<A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#assertCredentialsMatch(org.apache.shiro.authc.AuthenticationToken, org.apache.shiro.authc.AuthenticationInfo)">assertCredentialsMatch</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#clearCachedAuthenticationInfo(org.apache.shiro.subject.PrincipalCollection)">clearCachedAuthenticationInfo</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationCache()">getAuthenticationCache</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationCacheKey(org.apache.shiro.authc.AuthenticationToken)">getAuthenticationCacheKey</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationCacheKey(org.apache.shiro.subject.PrincipalCollection)">getAuthenticationCacheKey</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationCacheName()">getAuthenticationCacheName</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationInfo(org.apache.shiro.authc.AuthenticationToken)">getAuthenticationInfo</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationTokenClass()">getAuthenticationTokenClass</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getCredentialsMatcher()">getCredentialsMatcher</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#init()">init</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#isAuthenticationCachingEnabled()">isAuthenticationCachingEnabled</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#isAuthenticationCachingEnabled(org.apache.shiro.authc.AuthenticationToken, org.apache.shiro.authc.AuthenticationInfo)">isAuthenticationCachingEnabled</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setAuthenticationCache(org.apache.shiro.cache.Cache)">setAuthenticationCache</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setAuthenticationCacheName(java.lang.String)">setAuthenticationCacheName</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setAuthenticationCachingEnabled(boolean)">setAuthenticationCachingEnabled</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setAuthenticationTokenClass(java.lang.Class)">setAuthenticationTokenClass</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setCredentialsMatcher(org.apache.shiro.authc.credential.CredentialsMatcher)">setCredentialsMatcher</A>, <A HREF="../../../../../org/apache/shiro/realm/AuthenticatingRealm.html#supports(org.apache.shiro.authc.AuthenticationToken)">supports</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.shiro.realm.CachingRealm"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.shiro.realm.<A HREF="../../../../../org/apache/shiro/realm/CachingRealm.html" title="class in org.apache.shiro.realm">CachingRealm</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/shiro/realm/CachingRealm.html#clearCache(org.apache.shiro.subject.PrincipalCollection)">clearCache</A>, <A HREF="../../../../../org/apache/shiro/realm/CachingRealm.html#getAvailablePrincipal(org.apache.shiro.subject.PrincipalCollection)">getAvailablePrincipal</A>, <A HREF="../../../../../org/apache/shiro/realm/CachingRealm.html#getCacheManager()">getCacheManager</A>, <A HREF="../../../../../org/apache/shiro/realm/CachingRealm.html#getName()">getName</A>, <A HREF="../../../../../org/apache/shiro/realm/CachingRealm.html#isCachingEnabled()">isCachingEnabled</A>, <A HREF="../../../../../org/apache/shiro/realm/CachingRealm.html#onLogout(org.apache.shiro.subject.PrincipalCollection)">onLogout</A>, <A HREF="../../../../../org/apache/shiro/realm/CachingRealm.html#setCacheManager(org.apache.shiro.cache.CacheManager)">setCacheManager</A>, <A HREF="../../../../../org/apache/shiro/realm/CachingRealm.html#setCachingEnabled(boolean)">setCachingEnabled</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.shiro.util.Initializable"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface org.apache.shiro.util.<A HREF="../../../../../org/apache/shiro/util/Initializable.html" title="interface in org.apache.shiro.util">Initializable</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/shiro/util/Initializable.html#init()">init</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="scheduler"><!-- --></A><H3>
scheduler</H3>
<PRE>
protected <A HREF="http://java.sun.com/javase/6/docs/api/java/util/concurrent/ExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ExecutorService</A> <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.101"><B>scheduler</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="useXmlFormat"><!-- --></A><H3>
useXmlFormat</H3>
<PRE>
protected boolean <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.102"><B>useXmlFormat</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="resourcePath"><!-- --></A><H3>
resourcePath</H3>
<PRE>
protected <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.103"><B>resourcePath</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="fileLastModified"><!-- --></A><H3>
fileLastModified</H3>
<PRE>
protected long <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.104"><B>fileLastModified</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="reloadIntervalSeconds"><!-- --></A><H3>
reloadIntervalSeconds</H3>
<PRE>
protected int <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.105"><B>reloadIntervalSeconds</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="PropertiesRealm()"><!-- --></A><H3>
PropertiesRealm</H3>
<PRE>
public <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.107"><B>PropertiesRealm</B></A>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="setUseXmlFormat(boolean)"><!-- --></A><H3>
setUseXmlFormat</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.121"><B>setUseXmlFormat</B></A>(boolean&nbsp;useXmlFormat)</PRE>
<DL>
<DD>Determines whether or not the properties XML format should be used. For more information, see
<A HREF="http://java.sun.com/javase/6/docs/api/java/util/Properties.html?is-external=true#loadFromXML(java.io.InputStream)" title="class or interface in java.util"><CODE>Properties.loadFromXML(java.io.InputStream)</CODE></A>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>useXmlFormat</CODE> - true to use XML or false to use the normal format. Defaults to false.</DL>
</DD>
</DL>
<HR>
<A NAME="setResourcePath(java.lang.String)"><!-- --></A><H3>
setResourcePath</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.134"><B>setResourcePath</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;resourcePath)</PRE>
<DL>
<DD>Sets the path of the properties file to load user, role, and permission information from. The properties
file will be loaded using <A HREF="../../../../../org/apache/shiro/io/ResourceUtils.html#getInputStreamForPath(java.lang.String)"><CODE>ResourceUtils.getInputStreamForPath(String)</CODE></A> so any convention recongized
by that method is accepted here. For example, to load a file from the classpath use
<code>classpath:myfile.properties</code>; to load a file from disk simply specify the full path; to load
a file from a URL use <code>url:www.mysite.com/myfile.properties</code>.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>resourcePath</CODE> - the path to load the properties file from. This is a required property.</DL>
</DD>
</DL>
<HR>
<A NAME="setReloadIntervalSeconds(int)"><!-- --></A><H3>
setReloadIntervalSeconds</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.146"><B>setReloadIntervalSeconds</B></A>(int&nbsp;reloadIntervalSeconds)</PRE>
<DL>
<DD>Sets the interval in seconds at which the property file will be checked for changes and reloaded. If this is
set to zero or less, property file reloading will be disabled. If it is set to 1 or greater, then a
separate thread will be created to monitor the propery file for changes and reload the file if it is updated.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>reloadIntervalSeconds</CODE> - the interval in seconds at which the property file should be examined for changes.
If set to zero or less, reloading is disabled.</DL>
</DD>
</DL>
<HR>
<A NAME="onInit()"><!-- --></A><H3>
onInit</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.155"><B>onInit</B></A>()</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#onInit()">TextConfigurationRealm</A></CODE></B></DD>
<DD>Will call 'processDefinitions' on startup.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html#onInit()">onInit</A></CODE> in class <CODE><A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html" title="class in org.apache.shiro.realm.text">TextConfigurationRealm</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><a href="https://issues.apache.org/jira/browse/SHIRO-223">SHIRO-223</a></DL>
</DD>
</DL>
<HR>
<A NAME="afterRoleCacheSet()"><!-- --></A><H3>
afterRoleCacheSet</H3>
<PRE>
protected void <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.161"><B>afterRoleCacheSet</B></A>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="destroy()"><!-- --></A><H3>
destroy</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.173"><B>destroy</B></A>()</PRE>
<DL>
<DD>Destroy reload scheduler if one exists.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/shiro/util/Destroyable.html#destroy()">destroy</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/shiro/util/Destroyable.html" title="interface in org.apache.shiro.util">Destroyable</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="startReloadThread()"><!-- --></A><H3>
startReloadThread</H3>
<PRE>
protected void <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.187"><B>startReloadThread</B></A>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="run()"><!-- --></A><H3>
run</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.194"><B>run</B></A>()</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Runnable.html?is-external=true#run()" title="class or interface in java.lang">run</A></CODE> in interface <CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getName(java.lang.String, java.lang.String)"><!-- --></A><H3>
getName</H3>
<PRE>
protected <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.333"><B>getName</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;key,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;prefix)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isUsername(java.lang.String)"><!-- --></A><H3>
isUsername</H3>
<PRE>
protected boolean <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.337"><B>isUsername</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;key)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isRolename(java.lang.String)"><!-- --></A><H3>
isRolename</H3>
<PRE>
protected boolean <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.341"><B>isRolename</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;key)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getUsername(java.lang.String)"><!-- --></A><H3>
getUsername</H3>
<PRE>
protected <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.345"><B>getUsername</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;key)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getRolename(java.lang.String)"><!-- --></A><H3>
getRolename</H3>
<PRE>
protected <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/realm/text/PropertiesRealm.html#line.349"><B>getRolename</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;key)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/PropertiesRealm.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/shiro/realm/text/IniRealm.html" title="class in org.apache.shiro.realm.text"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/shiro/realm/text/TextConfigurationRealm.html" title="class in org.apache.shiro.realm.text"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/shiro/realm/text/PropertiesRealm.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="PropertiesRealm.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &#169; 2004-2016 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>