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 EventObject
source
-
Constructor Summary
ConstructorsConstructorDescriptionAvailabilityChangeEvent
(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 PayloadApplicationEvent
getPayload
Methods inherited from class ApplicationEvent
getTimestamp
Methods inherited from class EventObject
getSource, toString
-
Constructor Details
-
AvailabilityChangeEvent
Create a newAvailabilityChangeEvent
instance.- Parameters:
source
- the source of the eventstate
- the availability state (nevernull
)
-
-
Method Details
-
getState
-
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
-