Class BufferedDatabaseUtilizationService
java.lang.Object
de.hybris.platform.azure.dtu.impl.BufferedDatabaseUtilizationService
- All Implemented Interfaces:
DatabaseUtilizationService
public class BufferedDatabaseUtilizationService
extends Object
implements DatabaseUtilizationService
Buffered implementation of
DatabaseUtilizationService, used for retrieving information about database utilization.
Information about database utilization is cached when is requested.
It supports below cache configuration settings:
- database.utilization.query.interval.seconds
- database.utilization.buffer.size.seconds - allows to specify how long DatabaseUtilization objects are available to retrieve
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateNewBuffer(Instant now, BufferedDatabaseUtilizationService.DatabaseUtilizationBuffer currentBuffer) Returns the reason if the service is not active.getUtilization(Duration duration) Returns DatabaseUtilization objects for given duration (counted from now)booleanisActive()Checks if the utilization can be determined at all.
-
Constructor Details
-
BufferedDatabaseUtilizationService
-
-
Method Details
-
getUtilization
Description copied from interface:DatabaseUtilizationServiceReturns DatabaseUtilization objects for given duration (counted from now)List must be sorted and returned in descending order of observationTime.
- Specified by:
getUtilizationin interfaceDatabaseUtilizationService- Returns:
- the list of DatabaseUtilization objects
-
isActive
public boolean isActive()Description copied from interface:DatabaseUtilizationServiceChecks if the utilization can be determined at all.- Specified by:
isActivein interfaceDatabaseUtilizationService- Returns:
- True for readiness
-
getStatusReason
Description copied from interface:DatabaseUtilizationServiceReturns the reason if the service is not active.- Specified by:
getStatusReasonin interfaceDatabaseUtilizationService- Returns:
- The reason or null
-
getRefreshedBufferIfNeeded
protected BufferedDatabaseUtilizationService.DatabaseUtilizationBuffer getRefreshedBufferIfNeeded(Instant now) -
createNewBuffer
protected Optional<BufferedDatabaseUtilizationService.DatabaseUtilizationBuffer> createNewBuffer(Instant now, BufferedDatabaseUtilizationService.DatabaseUtilizationBuffer currentBuffer)
-