Interface ReloadableService<T>
-
- Type Parameters:
T- The sort of service that this implements
- All Superinterfaces:
Component,InitializableComponent
- All Known Implementing Classes:
AbstractReloadableService
public interface ReloadableService<T> extends InitializableComponent
A service that supports reloading its configuration.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description InstantgetLastReloadAttemptInstant()Gets the time when the service last attempted to reload.InstantgetLastSuccessfulReloadInstant()Gets the time when the service was last successfully reloaded.ThrowablegetReloadFailureCause()Gets the reason the last reload failed.ServiceableComponent<T>getServiceableComponent()Get the serviceable component that this service supports.voidreload()Reloads the configuration of the service.-
Methods inherited from interface net.shibboleth.utilities.java.support.component.InitializableComponent
initialize, isInitialized
-
-
-
-
Method Detail
-
getLastSuccessfulReloadInstant
@Nullable Instant getLastSuccessfulReloadInstant()
Gets the time when the service was last successfully reloaded. Returns null if the service has never reloaded.- Returns:
- time when the service was last successfully reloaded
-
getLastReloadAttemptInstant
@Nullable Instant getLastReloadAttemptInstant()
Gets the time when the service last attempted to reload. If the reload was successful this time should match the time given bygetLastSuccessfulReloadInstant().- Returns:
- time when the service last attempted to reload
-
getReloadFailureCause
@Nullable Throwable getReloadFailureCause()
Gets the reason the last reload failed.- Returns:
- reason the last reload failed or null if the last reload was successful
-
reload
void reload()
Reloads the configuration of the service. Whether internal state is maintained between reloads is implementation dependent.- Throws:
ServiceException- thrown if there is a problem reloading the service
-
getServiceableComponent
@Nullable ServiceableComponent<T> getServiceableComponent()
Get the serviceable component that this service supports. If the component hasn't been successfully loaded yet or if this service does not support a ServiceableComponent, null is returned. On a non-null value, the returned component will be pinned and MUST be unpinned by a call toServiceableComponent.unpinComponent().- Returns:
- the component, if appropriate.
-
-