com.atlassian.crowd.integration.springsecurity
Class DynamicProviderManagerImpl

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

public class DynamicProviderManagerImpl
extends org.springframework.security.authentication.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.authentication.ProviderManager
messages
 
Constructor Summary
DynamicProviderManagerImpl()
           
 
Method Summary
 void addProvider(org.springframework.security.authentication.AuthenticationProvider provider)
           
 org.springframework.security.core.Authentication authenticate(org.springframework.security.core.Authentication authentication)
           
 boolean removeProvider(org.springframework.security.authentication.AuthenticationProvider provider)
           
 
Methods inherited from class org.springframework.security.authentication.ProviderManager
afterPropertiesSet, getProviders, isEraseCredentialsAfterAuthentication, setAuthenticationEventPublisher, setClearExtraInformation, setEraseCredentialsAfterAuthentication, setMessageSource, setParent, setProviders
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DynamicProviderManagerImpl

public DynamicProviderManagerImpl()
Method Detail

authenticate

public org.springframework.security.core.Authentication authenticate(org.springframework.security.core.Authentication authentication)
                                                              throws org.springframework.security.core.AuthenticationException
Specified by:
authenticate in interface org.springframework.security.authentication.AuthenticationManager
Overrides:
authenticate in class org.springframework.security.authentication.ProviderManager
Throws:
org.springframework.security.core.AuthenticationException

addProvider

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

removeProvider

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


Copyright © 2013 Atlassian. All Rights Reserved.