com.atlassian.crowd.integration.springsecurity
Class DynamicProviderManagerImpl

java.lang.Object
  extended by org.springframework.security.AbstractAuthenticationManager
      extended by org.springframework.security.providers.ProviderManager
          extended by com.atlassian.crowd.integration.springsecurity.DynamicProviderManagerImpl
All Implemented Interfaces:
DynamicProviderManager, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationEventPublisherAware, org.springframework.context.MessageSourceAware, org.springframework.security.AuthenticationManager

public class DynamicProviderManagerImpl
extends org.springframework.security.providers.ProviderManager
implements DynamicProviderManager

An extension to the standard ProviderManager implementation of the AuthenticationManager wich allows adding and removing provider managers at runtime.

This ensures that the provider manager is threadsafe (to some degree). It is still possible to obtain a collection of providers and manipulate it in a non-threadsafe manner by using the getter/setter.

Note: if you have no need for runtime-pluggable behaviour, simply use org.springframework.security.providers.ProviderManager.


Field Summary
 
Fields inherited from class org.springframework.security.providers.ProviderManager
messages
 
Constructor Summary
DynamicProviderManagerImpl()
           
 
Method Summary
 void addProvider(org.springframework.security.providers.AuthenticationProvider provider)
           
 org.springframework.security.Authentication doAuthentication(org.springframework.security.Authentication authentication)
           
 boolean removeProvider(org.springframework.security.providers.AuthenticationProvider provider)
           
 
Methods inherited from class org.springframework.security.providers.ProviderManager
afterPropertiesSet, getProviders, getSessionController, setAdditionalExceptionMappings, setApplicationEventPublisher, setMessageSource, setProviders, setSessionController
 
Methods inherited from class org.springframework.security.AbstractAuthenticationManager
authenticate, setClearExtraInformation
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.springframework.security.AuthenticationManager
authenticate
 

Constructor Detail

DynamicProviderManagerImpl

public DynamicProviderManagerImpl()
Method Detail

doAuthentication

public org.springframework.security.Authentication doAuthentication(org.springframework.security.Authentication authentication)
                                                             throws org.springframework.security.AuthenticationException
Overrides:
doAuthentication in class org.springframework.security.providers.ProviderManager
Throws:
org.springframework.security.AuthenticationException

addProvider

public void addProvider(org.springframework.security.providers.AuthenticationProvider provider)
Specified by:
addProvider in interface DynamicProviderManager

removeProvider

public boolean removeProvider(org.springframework.security.providers.AuthenticationProvider provider)
Specified by:
removeProvider in interface DynamicProviderManager


Copyright © 2011 Atlassian. All Rights Reserved.