Class DefaultAuthenticationEventPublisher

  • All Implemented Interfaces:
    org.springframework.beans.factory.Aware, org.springframework.context.ApplicationEventPublisherAware, AuthenticationEventPublisher

    public class DefaultAuthenticationEventPublisher
    extends java.lang.Object
    implements AuthenticationEventPublisher, org.springframework.context.ApplicationEventPublisherAware
    The default strategy for publishing authentication events.

    Maps well-known AuthenticationException types to events and publishes them via the application context. If configured as a bean, it will pick up the ApplicationEventPublisher automatically. Otherwise, the constructor which takes the publisher as an argument should be used.

    The exception-mapping system can be fine-tuned by setting the additionalExceptionMappings as a java.util.Properties object. In the properties object, each of the keys represent the fully qualified classname of the exception, and each of the values represent the name of an event class which subclasses AbstractAuthenticationFailureEvent and provides its constructor. The additionalExceptionMappings will be merged with the default ones.

    Since:
    3.0
    • Constructor Detail

      • DefaultAuthenticationEventPublisher

        public DefaultAuthenticationEventPublisher()
      • DefaultAuthenticationEventPublisher

        public DefaultAuthenticationEventPublisher​(org.springframework.context.ApplicationEventPublisher applicationEventPublisher)
    • Method Detail

      • setApplicationEventPublisher

        public void setApplicationEventPublisher​(org.springframework.context.ApplicationEventPublisher applicationEventPublisher)
        Specified by:
        setApplicationEventPublisher in interface org.springframework.context.ApplicationEventPublisherAware
      • setAdditionalExceptionMappings

        @Deprecated
        public void setAdditionalExceptionMappings​(java.util.Properties additionalExceptionMappings)
        Sets additional exception to event mappings. These are automatically merged with the default exception to event mappings that ProviderManager defines.
        Parameters:
        additionalExceptionMappings - where keys are the fully-qualified string name of the exception class and the values are the fully-qualified string name of the event class to fire.
      • setAdditionalExceptionMappings

        public void setAdditionalExceptionMappings​(java.util.Map<java.lang.Class<? extends AuthenticationException>,​java.lang.Class<? extends AbstractAuthenticationFailureEvent>> mappings)
        Sets additional exception to event mappings. These are automatically merged with the default exception to event mappings that ProviderManager defines.
        Parameters:
        mappings - where keys are exception classes and values are event classes.
        Since:
        5.3
      • setDefaultAuthenticationFailureEvent

        public void setDefaultAuthenticationFailureEvent​(java.lang.Class<? extends AbstractAuthenticationFailureEvent> defaultAuthenticationFailureEventClass)
        Sets a default authentication failure event as a fallback event for any unmapped exceptions not mapped in the exception mappings.
        Parameters:
        defaultAuthenticationFailureEventClass - is the authentication failure event class to be fired for unmapped exceptions.