Author: vtence
Date: Sat Mar 19 11:22:53 2005
New Revision: 158264
URL: http://svn.apache.org/viewcvs?view=rev&rev=158264
Log:
Javadocs
Modified:
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/AttributePrincipal.java
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/AttributeProvider.java
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/CyclicAssociationException.java
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/GroupPrincipal.java
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/InformationProvider.java
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/MutableInformationProvider.java
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/RolePrincipal.java
Modified:
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/AttributePrincipal.java
URL:
http://svn.apache.org/viewcvs/directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/AttributePrincipal.java?view=diff&r1=158263&r2=158264
==============================================================================
---
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/AttributePrincipal.java
(original)
+++
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/AttributePrincipal.java
Sat Mar 19 11:22:53 2005
@@ -19,6 +19,12 @@
import org.apache.authx.authentication.AbstractPrincipal;
/**
+ * A principal used to represent attributes that may be used
+ * for authorization purposes.
+ *
+ * @see GroupPrincipal
+ * @see RolePrincipal
+ *
* @author <a href="mailto:[EMAIL PROTECTED]">Vincent Tence</a>
*/
public class AttributePrincipal extends AbstractPrincipal
Modified:
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/AttributeProvider.java
URL:
http://svn.apache.org/viewcvs/directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/AttributeProvider.java?view=diff&r1=158263&r2=158264
==============================================================================
---
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/AttributeProvider.java
(original)
+++
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/AttributeProvider.java
Sat Mar 19 11:22:53 2005
@@ -24,6 +24,14 @@
import java.util.Iterator;
import java.util.Map;
+/**
+ * A straightforward implementation of a
<code>MutableInformationProvider</code>
+ * that maintains a map of associations between principals and attributes.
+ * <p>
+ * This implementation prevents cyclic associations between, meaning a
principal
+ * cannot have an attribute that is itself associated the principal. This
prevents
+ * for instance groups to be subgroups of themselves.
+ */
public class AttributeProvider implements MutableInformationProvider
{
private final Map m_attributes;
Modified:
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/CyclicAssociationException.java
URL:
http://svn.apache.org/viewcvs/directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/CyclicAssociationException.java?view=diff&r1=158263&r2=158264
==============================================================================
---
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/CyclicAssociationException.java
(original)
+++
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/CyclicAssociationException.java
Sat Mar 19 11:22:53 2005
@@ -18,6 +18,10 @@
import java.security.Principal;
+/**
+ * Thrown by an <code>InformationProvider</code> to prevent cyclic
+ * associations between principals.
+ */
public class CyclicAssociationException extends RuntimeException
{
private final Principal m_principal;
Modified:
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/GroupPrincipal.java
URL:
http://svn.apache.org/viewcvs/directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/GroupPrincipal.java?view=diff&r1=158263&r2=158264
==============================================================================
---
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/GroupPrincipal.java
(original)
+++
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/GroupPrincipal.java
Sat Mar 19 11:22:53 2005
@@ -21,6 +21,8 @@
import java.io.Serializable;
/**
+ * A principal representing a group membership.
+ *
* @author <a href="mailto:[EMAIL PROTECTED]">Vincent Tence</a>
*/
public class GroupPrincipal extends AbstractPrincipal implements Serializable
Modified:
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/InformationProvider.java
URL:
http://svn.apache.org/viewcvs/directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/InformationProvider.java?view=diff&r1=158263&r2=158264
==============================================================================
---
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/InformationProvider.java
(original)
+++
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/InformationProvider.java
Sat Mar 19 11:22:53 2005
@@ -18,6 +18,16 @@
import javax.security.auth.Subject;
+/**
+ * An <code>InformationProvider</code> populates a subject
+ * with principals that provide additional information on the
+ * subject.
+ * <p>
+ * Information providers are used to provide additional details
+ * on a newly authenticated subject. These details may be used
+ * during the authorization process to decide on the outcome
+ * of an authorization decision.
+ */
public interface InformationProvider
{
void populate( Subject s );
Modified:
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/MutableInformationProvider.java
URL:
http://svn.apache.org/viewcvs/directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/MutableInformationProvider.java?view=diff&r1=158263&r2=158264
==============================================================================
---
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/MutableInformationProvider.java
(original)
+++
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/MutableInformationProvider.java
Sat Mar 19 11:22:53 2005
@@ -19,9 +19,31 @@
import java.security.Principal;
import java.util.Collection;
+/**
+ * An interface to programmatically specify attributes to principal
associations
+ * for an <code>InformationProvider</code>.
+ */
public interface MutableInformationProvider extends InformationProvider
{
+ /**
+ * Associates a collection of principal attributes with the specified
principal.
+ *
+ * @param principal The principal receiving attributes
+ * @param attributes a collection of Principal objects that represents
attributes
+ * of the principal
+ * @return true if the collection of attribues for this principal has been
modified
+ * by this operation, false otherwise
+ */
boolean addAllAttributes( Principal principal, Collection attributes );
+ /**
+ * Associates a single principal attribute with the specified principal.
+ *
+ * @param principal The principal receiving the attribute
+ * @param attribute a Principal object that represents an attribute
+ * of the principal
+ * @return true if the collection of attribues for this principal has been
modified
+ * by this operation, false otherwise
+ */
boolean addAttribute( Principal principal, Principal attribute );
}
Modified:
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/RolePrincipal.java
URL:
http://svn.apache.org/viewcvs/directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/RolePrincipal.java?view=diff&r1=158263&r2=158264
==============================================================================
---
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/RolePrincipal.java
(original)
+++
directory/authx/trunk/core/src/java/org/apache/authx/authentication/attribute/RolePrincipal.java
Sat Mar 19 11:22:53 2005
@@ -21,6 +21,8 @@
import java.io.Serializable;
/**
+ * A principal representing a role grant.
+ *
* @author <a href="mailto:[EMAIL PROTECTED]">Vincent Tence</a>
*/
public class RolePrincipal extends AbstractPrincipal implements Serializable