Class AvailabilityChangeEvent<S extends AvailabilityState>
java.lang.Object
java.util.EventObject
org.springframework.context.ApplicationEvent
org.springframework.context.PayloadApplicationEvent<S>
org.springframework.boot.availability.AvailabilityChangeEvent<S>
- Type Parameters:
S- the availability state type
- All Implemented Interfaces:
Serializable,ResolvableTypeProvider
public class AvailabilityChangeEvent<S extends AvailabilityState>
extends PayloadApplicationEvent<S>
ApplicationEvent sent when the AvailabilityState of the application
changes.
Any application component can send such events to update the state of the application.
- Since:
- 2.3.0
- Author:
- Brian Clozel, Phillip Webb
- See Also:
-
Field Summary
Fields inherited from class java.util.EventObject
source -
Constructor Summary
ConstructorsConstructorDescriptionAvailabilityChangeEvent(Object source, S state) Create a newAvailabilityChangeEventinstance. -
Method Summary
Modifier and TypeMethodDescriptiongetState()Return the changed availability state.static <S extends AvailabilityState>
voidpublish(ApplicationContext context, S state) Convenience method that can be used to publish anAvailabilityChangeEventto the given application context.static <S extends AvailabilityState>
voidpublish(ApplicationEventPublisher publisher, Object source, S state) Convenience method that can be used to publish anAvailabilityChangeEventto the given application context.Methods inherited from class org.springframework.context.PayloadApplicationEvent
getPayloadMethods inherited from class org.springframework.context.ApplicationEvent
getTimestampMethods inherited from class java.util.EventObject
getSource, toString
-
Constructor Details
-
AvailabilityChangeEvent
Create a newAvailabilityChangeEventinstance.- Parameters:
source- the source of the eventstate- the availability state (nevernull)
-
-
Method Details
-
getState
Return the changed availability state.- Returns:
- the availability state
-
getResolvableType
- Specified by:
getResolvableTypein interfaceResolvableTypeProvider- Overrides:
getResolvableTypein classPayloadApplicationEvent<S extends AvailabilityState>
-
publish
Convenience method that can be used to publish anAvailabilityChangeEventto the given application context.- Type Parameters:
S- the availability state type- Parameters:
context- the context used to publish the eventstate- the changed availability state
-
publish
public static <S extends AvailabilityState> void publish(ApplicationEventPublisher publisher, Object source, S state) Convenience method that can be used to publish anAvailabilityChangeEventto the given application context.- Type Parameters:
S- the availability state type- Parameters:
publisher- the publisher used to publish the eventsource- the source of the eventstate- the changed availability state
-