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
ConstructorDescriptionAvailabilityChangeEvent
(Object source, S state) Create a newAvailabilityChangeEvent
instance. -
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 anAvailabilityChangeEvent
to the given application context.static <S extends AvailabilityState>
voidpublish
(ApplicationEventPublisher publisher, Object source, S state) Convenience method that can be used to publish anAvailabilityChangeEvent
to the given application context.Methods inherited from class org.springframework.context.PayloadApplicationEvent
getPayload
Methods inherited from class org.springframework.context.ApplicationEvent
getTimestamp
Methods inherited from class java.util.EventObject
getSource, toString
-
Constructor Details
-
AvailabilityChangeEvent
Create a newAvailabilityChangeEvent
instance.- 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:
getResolvableType
in interfaceResolvableTypeProvider
- Overrides:
getResolvableType
in classPayloadApplicationEvent<S extends AvailabilityState>
-
publish
Convenience method that can be used to publish anAvailabilityChangeEvent
to 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 anAvailabilityChangeEvent
to 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
-