Interface GenericApplicationListener

All Superinterfaces:
ApplicationListener<ApplicationEvent>, EventListener, org.springframework.core.Ordered, SmartApplicationListener
All Known Implementing Classes:
ApplicationListenerMethodAdapter, GenericApplicationListenerAdapter, SourceFilteringListener

public interface GenericApplicationListener extends SmartApplicationListener
Extended variant of the standard ApplicationListener interface, exposing further metadata such as the supported event and source type.

As of Spring Framework 4.2, this interface supersedes the Class-based SmartApplicationListener with full handling of generic event types. As of 5.3.5, it formally extends SmartApplicationListener, adapting supportsEventType(Class) to supportsEventType(ResolvableType) with a default method.

Since:
4.2
Author:
Stephane Nicoll, Juergen Hoeller
See Also:
  • Method Details

    • supportsEventType

      default boolean supportsEventType(Class<? extends ApplicationEvent> eventType)
      Specified by:
      supportsEventType in interface SmartApplicationListener
      Parameters:
      eventType - the event type (never null)
    • supportsEventType

      boolean supportsEventType(org.springframework.core.ResolvableType eventType)
      Determine whether this listener actually supports the given event type.
      Parameters:
      eventType - the event type (never null)
    • forEventType

      static <E extends ApplicationEvent> GenericApplicationListener forEventType(Class<E> eventType, Consumer<E> consumer)
      Create a new ApplicationListener for the given event type.
      Type Parameters:
      E - the specific ApplicationEvent subclass to listen to
      Parameters:
      eventType - the event to listen to
      consumer - the consumer to invoke when a matching event is fired
      Returns:
      a corresponding ApplicationListener instance
      Since:
      6.1.3