Index: fedd/abac-src/rtml/doc/edu/stanford/rt/credential/CredentialStore.html
===================================================================
--- fedd/abac-src/rtml/doc/edu/stanford/rt/credential/CredentialStore.html	(revision 8780cbecc6db2bdc2b9ef31eec6e5209ad3bff15)
+++ fedd/abac-src/rtml/doc/edu/stanford/rt/credential/CredentialStore.html	(revision 8780cbecc6db2bdc2b9ef31eec6e5209ad3bff15)
@@ -0,0 +1,652 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN""http://www.w3.org/TR/REC-html40/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc on Wed Oct 02 14:27:56 PDT 2002 -->
+<TITLE>
+CredentialStore
+</TITLE>
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+</HEAD>
+<SCRIPT>
+function asd()
+{
+parent.document.title="CredentialStore";
+}
+</SCRIPT>
+<BODY BGCOLOR="white" onload="asd();">
+
+<!-- ========== START OF NAVBAR ========== -->
+<A NAME="navbar_top"><!-- --></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
+<TR>
+<TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
+  <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/CredentialStore.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-files/index-1.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="../../../../edu/stanford/rt/credential/CredentialDomain.html"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../edu/stanford/rt/credential/DataValuePrincipal.html"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="CredentialStore.html" TARGET="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;
+<SCRIPT>
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../allclasses-noframe.html" TARGET=""><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+<A HREF="../../../../allclasses-noframe.html" TARGET=""><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>
+<!-- =========== END OF NAVBAR =========== -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+edu.stanford.rt.credential</FONT>
+<BR>
+Class  CredentialStore</H2>
+<PRE>
+java.lang.Object
+  |
+  +--<A HREF="../../../../edu/stanford/rt/credential/RTContext.html">edu.stanford.rt.credential.RTContext</A>
+        |
+        +--<B>edu.stanford.rt.credential.CredentialStore</B>
+</PRE>
+<HR>
+<DL>
+<DT>public class <B>CredentialStore</B><DT>extends <A HREF="../../../../edu/stanford/rt/credential/RTContext.html">RTContext</A></DL>
+
+<P>
+<DL>
+<DT><B>Author:</B><DD>Ninghui Li, Sandra Qiu<br>
+ 
+ This class stores all the <code>CredentialDomain</code>, and 
+ <code>RoleDefinition</code> index information.
+ <p>
+ A special principal is stored in the credential store to ....
+ <p></DD>
+</DD>
+</DL>
+<HR>
+
+<P>
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+
+
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=2><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;java.util.HashMap</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#credentialDomains">credentialDomains</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A map of <code>CredentialDomain</code> objects.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;java.util.HashMap</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#indexByIssuer">indexByIssuer</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Role definitions indexed by issuer.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;java.util.HashMap</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#indexByIssuerAndRoleDeclaration">indexByIssuerAndRoleDeclaration</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Role definitions indexed by issuer and role declaration.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;java.util.HashSet</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#roleDefinitions">roleDefinitions</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A set of <code>RoleDefinition</code> objects, including all 
+ roles defined in the <code>Credential</code> included in this 
+ <code>CredentialStore</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;<A HREF="../../../../edu/stanford/rt/credential/Principal.html">Principal</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#specialPrincipal">specialPrincipal</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_edu.stanford.rt.credential.RTContext"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TD><B>Fields inherited from class edu.stanford.rt.credential.<A HREF="../../../../edu/stanford/rt/credential/RTContext.html">RTContext</A></B></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=2><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#CredentialStore(edu.stanford.rt.parser.RTParser)">CredentialStore</A></B>(<A HREF="../../../../edu/stanford/rt/parser/RTParser.html">RTParser</A>&nbsp;rtParser)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructor for CredentialStore.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=2><FONT SIZE="+2">
+<B>Method Summary</B></FONT></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="../../../../edu/stanford/rt/credential/CredentialStore.html#addCredentialDomain(edu.stanford.rt.credential.HashID, edu.stanford.rt.credential.CredentialDomain)">addCredentialDomain</A></B>(<A HREF="../../../../edu/stanford/rt/credential/HashID.html">HashID</A>&nbsp;id,
+                    <A HREF="../../../../edu/stanford/rt/credential/CredentialDomain.html">CredentialDomain</A>&nbsp;credentialDomain)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method addCredentialDomain.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#addIndexByIssuer(edu.stanford.rt.credential.RoleDefinition)">addIndexByIssuer</A></B>(<A HREF="../../../../edu/stanford/rt/credential/RoleDefinition.html">RoleDefinition</A>&nbsp;roleDefinition)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method addIndexByIssuer.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#addIndexByIssuerAndRoleDeclaration(edu.stanford.rt.credential.RoleDefinition)">addIndexByIssuerAndRoleDeclaration</A></B>(<A HREF="../../../../edu/stanford/rt/credential/RoleDefinition.html">RoleDefinition</A>&nbsp;roleDefinition)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method addIndexByIssuerAndRoleDeclaration.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#addRoleDefinition(edu.stanford.rt.credential.RoleDefinition)">addRoleDefinition</A></B>(<A HREF="../../../../edu/stanford/rt/credential/RoleDefinition.html">RoleDefinition</A>&nbsp;roleDefinition)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds a new role definition to the roleDefinitions.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../edu/stanford/rt/credential/CredentialDomain.html">CredentialDomain</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#getCredentialDomain(edu.stanford.rt.credential.HashID)">getCredentialDomain</A></B>(<A HREF="../../../../edu/stanford/rt/credential/HashID.html">HashID</A>&nbsp;id)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method getCredentialDomain.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../edu/stanford/rt/credential/CredentialDomain.html">CredentialDomain</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#getCredentialDomain(java.lang.String)">getCredentialDomain</A></B>(java.lang.String&nbsp;id)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method getCredentialDomain.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.util.ArrayList</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#getIndexByIssuer(edu.stanford.rt.credential.Principal)">getIndexByIssuer</A></B>(<A HREF="../../../../edu/stanford/rt/credential/Principal.html">Principal</A>&nbsp;issuer)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method getIndexByIssuer.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.util.ArrayList</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#getIndexByIssuerAndRoleDeclaration(edu.stanford.rt.credential.IssuerAndRoleDeclaration)">getIndexByIssuerAndRoleDeclaration</A></B>(<A HREF="../../../../edu/stanford/rt/credential/IssuerAndRoleDeclaration.html">IssuerAndRoleDeclaration</A>&nbsp;issuerAndRoleDeclaration)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method getIndexByIssuerAndRoleDeclaration.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../edu/stanford/rt/credential/Principal.html">Principal</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#getSpecialPrincipal()">getSpecialPrincipal</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the specialPrincipal.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.util.Iterator</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#roleDefinitionIterator()">roleDefinitionIterator</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method roleDefinitionIterator.</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="../../../../edu/stanford/rt/credential/CredentialStore.html#setSpecialPrincipal(edu.stanford.rt.credential.Principal)">setSpecialPrincipal</A></B>(<A HREF="../../../../edu/stanford/rt/credential/Principal.html">Principal</A>&nbsp;specialPrincipal)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the specialPrincipal.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/CredentialStore.html#toString(java.lang.String)">toString</A></B>(java.lang.String&nbsp;indent)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_edu.stanford.rt.credential.RTContext"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TD><B>Methods inherited from class edu.stanford.rt.credential.<A HREF="../../../../edu/stanford/rt/credential/RTContext.html">RTContext</A></B></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../edu/stanford/rt/credential/RTContext.html#addApplicationDomain(edu.stanford.rt.credential.HashID, edu.stanford.rt.credential.ApplicationDomain)">addApplicationDomain</A>, <A HREF="../../../../edu/stanford/rt/credential/RTContext.html#addPrincipal(edu.stanford.rt.credential.PublicKeyPrincipal, edu.stanford.rt.credential.PublicKeyPrincipalInfo)">addPrincipal</A>, <A HREF="../../../../edu/stanford/rt/credential/RTContext.html#getApplicationDomain(edu.stanford.rt.credential.HashID)">getApplicationDomain</A>, <A HREF="../../../../edu/stanford/rt/credential/RTContext.html#getApplicationDomain(java.lang.String)">getApplicationDomain</A>, <A HREF="../../../../edu/stanford/rt/credential/RTContext.html#getPrincipal(edu.stanford.rt.credential.PublicKeyPrincipal)">getPrincipal</A>, <A HREF="../../../../edu/stanford/rt/credential/RTContext.html#getSystemDomain()">getSystemDomain</A>, <A HREF="../../../../edu/stanford/rt/credential/RTContext.html#hasDomainWithID(java.lang.String)">hasDomainWithID</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TD><B>Methods inherited from class java.lang.Object</B></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=1><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TD>
+</TR>
+</TABLE>
+
+<A NAME="specialPrincipal"><!-- --></A><H3>
+specialPrincipal</H3>
+<PRE>
+private <A HREF="../../../../edu/stanford/rt/credential/Principal.html">Principal</A> <B>specialPrincipal</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="credentialDomains"><!-- --></A><H3>
+credentialDomains</H3>
+<PRE>
+private java.util.HashMap <B>credentialDomains</B></PRE>
+<DL>
+<DD>A map of <code>CredentialDomain</code> objects. A CredentialDomain 
+ contains all the info about a <code>Credential</code>.<br>
+ 
+ Key: <code>HashID</code> <br>
+ Value: <code>CredentialDomain</code>
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="roleDefinitions"><!-- --></A><H3>
+roleDefinitions</H3>
+<PRE>
+private java.util.HashSet <B>roleDefinitions</B></PRE>
+<DL>
+<DD>A set of <code>RoleDefinition</code> objects, including all 
+ roles defined in the <code>Credential</code> included in this 
+ <code>CredentialStore</code>.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="indexByIssuer"><!-- --></A><H3>
+indexByIssuer</H3>
+<PRE>
+private java.util.HashMap <B>indexByIssuer</B></PRE>
+<DL>
+<DD>Role definitions indexed by issuer. <br>
+ 
+ Key: <code>Principal</code>: the issuer <br>
+ Value: an ArrayList of <code>RoleDefinition</code>.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="indexByIssuerAndRoleDeclaration"><!-- --></A><H3>
+indexByIssuerAndRoleDeclaration</H3>
+<PRE>
+private java.util.HashMap <B>indexByIssuerAndRoleDeclaration</B></PRE>
+<DL>
+<DD>Role definitions indexed by issuer and role declaration. 
+ The issuer is the issuer of the credential and the role
+ declaration is the one corresponding to the head role term in the
+ role definition.
+ <br>
+ 
+ Key: <code>IssuerAndRoleDeclaration</code> <br>
+ Value: an ArrayList of <code>RoleDefinition</code>
+<P>
+<DL>
+</DL>
+</DL>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=1><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TD>
+</TR>
+</TABLE>
+
+<A NAME="CredentialStore(edu.stanford.rt.parser.RTParser)"><!-- --></A><H3>
+CredentialStore</H3>
+<PRE>
+public <B>CredentialStore</B>(<A HREF="../../../../edu/stanford/rt/parser/RTParser.html">RTParser</A>&nbsp;rtParser)
+                throws java.lang.Exception</PRE>
+<DL>
+<DD>Constructor for CredentialStore.
+<P>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=1><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TD>
+</TR>
+</TABLE>
+
+<A NAME="getSpecialPrincipal()"><!-- --></A><H3>
+getSpecialPrincipal</H3>
+<PRE>
+public <A HREF="../../../../edu/stanford/rt/credential/Principal.html">Principal</A> <B>getSpecialPrincipal</B>()</PRE>
+<DL>
+<DD>Returns the specialPrincipal.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>Principal</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setSpecialPrincipal(edu.stanford.rt.credential.Principal)"><!-- --></A><H3>
+setSpecialPrincipal</H3>
+<PRE>
+public void <B>setSpecialPrincipal</B>(<A HREF="../../../../edu/stanford/rt/credential/Principal.html">Principal</A>&nbsp;specialPrincipal)</PRE>
+<DL>
+<DD>Sets the specialPrincipal.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>specialPrincipal</CODE> - The specialPrincipal to set</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getCredentialDomain(edu.stanford.rt.credential.HashID)"><!-- --></A><H3>
+getCredentialDomain</H3>
+<PRE>
+public <A HREF="../../../../edu/stanford/rt/credential/CredentialDomain.html">CredentialDomain</A> <B>getCredentialDomain</B>(<A HREF="../../../../edu/stanford/rt/credential/HashID.html">HashID</A>&nbsp;id)</PRE>
+<DL>
+<DD>Method getCredentialDomain.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>id</CODE> - 
+<DT><B>Returns:</B><DD>CredentialDomain</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getCredentialDomain(java.lang.String)"><!-- --></A><H3>
+getCredentialDomain</H3>
+<PRE>
+public <A HREF="../../../../edu/stanford/rt/credential/CredentialDomain.html">CredentialDomain</A> <B>getCredentialDomain</B>(java.lang.String&nbsp;id)</PRE>
+<DL>
+<DD>Method getCredentialDomain.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>id</CODE> - 
+<DT><B>Returns:</B><DD>CredentialDomain</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="roleDefinitionIterator()"><!-- --></A><H3>
+roleDefinitionIterator</H3>
+<PRE>
+public java.util.Iterator <B>roleDefinitionIterator</B>()</PRE>
+<DL>
+<DD>Method roleDefinitionIterator.
+      returns an Iterator for the set of role definitions.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>Iterator</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getIndexByIssuer(edu.stanford.rt.credential.Principal)"><!-- --></A><H3>
+getIndexByIssuer</H3>
+<PRE>
+public java.util.ArrayList <B>getIndexByIssuer</B>(<A HREF="../../../../edu/stanford/rt/credential/Principal.html">Principal</A>&nbsp;issuer)</PRE>
+<DL>
+<DD>Method getIndexByIssuer.
+      returns a list of role definitions by the given issuer.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>issuer</CODE> - 
+<DT><B>Returns:</B><DD>ArrayList</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getIndexByIssuerAndRoleDeclaration(edu.stanford.rt.credential.IssuerAndRoleDeclaration)"><!-- --></A><H3>
+getIndexByIssuerAndRoleDeclaration</H3>
+<PRE>
+public java.util.ArrayList <B>getIndexByIssuerAndRoleDeclaration</B>(<A HREF="../../../../edu/stanford/rt/credential/IssuerAndRoleDeclaration.html">IssuerAndRoleDeclaration</A>&nbsp;issuerAndRoleDeclaration)</PRE>
+<DL>
+<DD>Method getIndexByIssuerAndRoleDeclaration.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>issuerAndRoleDeclaration</CODE> - 
+<DT><B>Returns:</B><DD>ArrayList</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="addCredentialDomain(edu.stanford.rt.credential.HashID, edu.stanford.rt.credential.CredentialDomain)"><!-- --></A><H3>
+addCredentialDomain</H3>
+<PRE>
+public void <B>addCredentialDomain</B>(<A HREF="../../../../edu/stanford/rt/credential/HashID.html">HashID</A>&nbsp;id,
+                                <A HREF="../../../../edu/stanford/rt/credential/CredentialDomain.html">CredentialDomain</A>&nbsp;credentialDomain)
+                         throws <A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></PRE>
+<DL>
+<DD>Method addCredentialDomain.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>id</CODE> - <DD><CODE>credentialDomain</CODE> - 
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="addRoleDefinition(edu.stanford.rt.credential.RoleDefinition)"><!-- --></A><H3>
+addRoleDefinition</H3>
+<PRE>
+private void <B>addRoleDefinition</B>(<A HREF="../../../../edu/stanford/rt/credential/RoleDefinition.html">RoleDefinition</A>&nbsp;roleDefinition)
+                        throws <A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></PRE>
+<DL>
+<DD>Adds a new role definition to the roleDefinitions.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>roleDefinition</CODE> - The roleDefinition to set
+<DD><CODE><A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="addIndexByIssuer(edu.stanford.rt.credential.RoleDefinition)"><!-- --></A><H3>
+addIndexByIssuer</H3>
+<PRE>
+private void <B>addIndexByIssuer</B>(<A HREF="../../../../edu/stanford/rt/credential/RoleDefinition.html">RoleDefinition</A>&nbsp;roleDefinition)</PRE>
+<DL>
+<DD>Method addIndexByIssuer.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>roleDefinition</CODE> - </DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="addIndexByIssuerAndRoleDeclaration(edu.stanford.rt.credential.RoleDefinition)"><!-- --></A><H3>
+addIndexByIssuerAndRoleDeclaration</H3>
+<PRE>
+private void <B>addIndexByIssuerAndRoleDeclaration</B>(<A HREF="../../../../edu/stanford/rt/credential/RoleDefinition.html">RoleDefinition</A>&nbsp;roleDefinition)</PRE>
+<DL>
+<DD>Method addIndexByIssuerAndRoleDeclaration.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>roleDefinition</CODE> - </DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="toString(java.lang.String)"><!-- --></A><H3>
+toString</H3>
+<PRE>
+public java.lang.String <B>toString</B>(java.lang.String&nbsp;indent)</PRE>
+<DL>
+<DD><DL>
+<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../edu/stanford/rt/credential/RTContext.html#toString(java.lang.String)">toString</A></CODE> in class <CODE><A HREF="../../../../edu/stanford/rt/credential/RTContext.html">RTContext</A></CODE></DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+<!-- ========== START OF NAVBAR ========== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
+<TR>
+<TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
+  <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/CredentialStore.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-files/index-1.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="../../../../edu/stanford/rt/credential/CredentialDomain.html"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../edu/stanford/rt/credential/DataValuePrincipal.html"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="CredentialStore.html" TARGET="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;
+<SCRIPT>
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../allclasses-noframe.html" TARGET=""><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+<A HREF="../../../../allclasses-noframe.html" TARGET=""><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>
+<!-- =========== END OF NAVBAR =========== -->
+
+<HR>
+
+</BODY>
+</HTML>
