org.jasig.portal.security.provider
Class BrokenSecurityContext

java.lang.Object
  extended by org.jasig.portal.security.provider.ChainingSecurityContext
      extended by org.jasig.portal.security.provider.BrokenSecurityContext
All Implemented Interfaces:
java.io.Serializable, ISecurityContext

public class BrokenSecurityContext
extends ChainingSecurityContext

A SecurityContext that can never be authenticated.

An unauthenticatable security context which a security context factory may return in the case where its initialization of the security context it was supposed to return failed. This allows a security context factory to "fail gracefully", fulfilling its API contract and allowing other security contexts in the chain to continue to operate.

This class is a descendent of edu.yale.its.tp.portal.security.BrokenSecurityContext, which was distributed in the Yale CAS uPortal security provider module version 3.0.0.

Version:
$Revision$ $Date$
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jasig.portal.security.provider.ChainingSecurityContext
ChainingSecurityContext.ChainingAdditionalDescriptor, ChainingSecurityContext.ChainingOpaqueCredentials, ChainingSecurityContext.ChainingPrincipal
 
Field Summary
static int BROKEN_AUTH_TYPE
           
private static long serialVersionUID
           
 
Fields inherited from class org.jasig.portal.security.provider.ChainingSecurityContext
isauth, log, myAdditionalDescriptor, myOpaqueCredentials, myOrder, myPrincipal, mySubContexts, stopWhenAuthenticated
 
Constructor Summary
BrokenSecurityContext()
          Instantiate a BrokenSecurityContext
 
Method Summary
 void authenticate()
          We walk the chain of subcontext assigning principals and opaquecredentials from the parent.
 int getAuthType()
          Returns the canonical authentication type for this flavor of authentication.
 java.lang.String toString()
           
 
Methods inherited from class org.jasig.portal.security.provider.ChainingSecurityContext
addSubContext, doesSubContextExist, getAdditionalDescriptor, getOpaqueCredentials, getOpaqueCredentialsInstance, getPrincipal, getPrincipalInstance, getSubContext, getSubContextNames, getSubContexts, isAuthenticated
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

BROKEN_AUTH_TYPE

public static final int BROKEN_AUTH_TYPE
See Also:
Constant Field Values
Constructor Detail

BrokenSecurityContext

public BrokenSecurityContext()
Instantiate a BrokenSecurityContext

Method Detail

getAuthType

public int getAuthType()
Description copied from interface: ISecurityContext
Returns the canonical authentication type for this flavor of authentication. Each value returned should be either a globally registered auth flavor or a local variant.

Returns:
The unique authentication value identifier. Values with the high order 16 bits clear are local (0x0000 - 0x00FF) where values with the high order 16 bits set (0xFF00 - 0xFFFF are foundation types distributed by JASIG. All other should be registered and globally unique.

authenticate

public void authenticate()
                  throws PortalSecurityException
Description copied from class: ChainingSecurityContext
We walk the chain of subcontext assigning principals and opaquecredentials from the parent. Note that the contexts themselves should resist actually performing the assignment if an assignment has already been made to either the credentials or the UID.

Specified by:
authenticate in interface ISecurityContext
Overrides:
authenticate in class ChainingSecurityContext
Throws:
PortalSecurityException
See Also:
ISecurityContext.getPrincipalInstance(), ISecurityContext.getOpaqueCredentialsInstance()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object