Package io.hekate.core.service
Interface InitializingService
-
- All Known Subinterfaces:
CoreService
public interface InitializingService
Lifecycle interface for services that require initialization.Methods of this interface get invoked when
Hekate
instance startsjoining
the cluster.Invocation order is:
preInitialize(InitializationContext)
all services one by one- Await for
ClusterContext.onJoin(int, Set)
notification from the cluster service initialize(InitializationContext)
all services one by onepostInitialize(InitializationContext)
all services one by one
Note: Initialization order takes dependencies into account. If some service
A
depends
on some other serviceB
then it is guaranteed that initialization methods of serviceB
will be called prior to initialization methods of serviceA
.- See Also:
TerminatingService
,DependentService
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description void
initialize(InitializationContext ctx)
Initializes this service.default void
postInitialize(InitializationContext ctx)
Post-initializes this service.default void
preInitialize(InitializationContext ctx)
Pre-initializes this service.
-
-
-
Method Detail
-
initialize
void initialize(InitializationContext ctx) throws HekateException
Initializes this service.- Parameters:
ctx
- Context.- Throws:
HekateException
- If initialization failed.
-
preInitialize
default void preInitialize(InitializationContext ctx) throws HekateException
Pre-initializes this service.Default implementation of this method is empty.
- Parameters:
ctx
- Context.- Throws:
HekateException
- If pre-initialization failed.
-
postInitialize
default void postInitialize(InitializationContext ctx) throws HekateException
Post-initializes this service.Default implementation of this method is empty.
- Parameters:
ctx
- Context.- Throws:
HekateException
- If post-initialization failed.
-
-