Class ExecutionStatisticsImpl
- java.lang.Object
-
- org.glassfish.jersey.server.internal.monitoring.ExecutionStatisticsImpl
-
- All Implemented Interfaces:
ExecutionStatistics
final class ExecutionStatisticsImpl extends java.lang.Object implements ExecutionStatistics
Immutable Execution statistics.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
ExecutionStatisticsImpl.Builder
Builder of execution statistics.
-
Field Summary
Fields Modifier and Type Field Description (package private) static ExecutionStatistics
EMPTY
Empty execution statistics instance.private long
lastStartTime
private java.util.Map<java.lang.Long,TimeWindowStatistics>
timeWindowStatistics
-
Constructor Summary
Constructors Modifier Constructor Description private
ExecutionStatisticsImpl(long lastStartTime, java.util.Map<java.lang.Long,TimeWindowStatistics> timeWindowStatistics)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Date
getLastStartTime()
Return time when target was executed last time.java.util.Map<java.lang.Long,TimeWindowStatistics>
getTimeWindowStatistics()
Returns time window statistics for available time window sizes.ExecutionStatistics
snapshot()
Get the immutable consistent snapshot of the monitoring statistics.
-
-
-
Field Detail
-
EMPTY
static final ExecutionStatistics EMPTY
Empty execution statistics instance.
-
lastStartTime
private final long lastStartTime
-
timeWindowStatistics
private final java.util.Map<java.lang.Long,TimeWindowStatistics> timeWindowStatistics
-
-
Constructor Detail
-
ExecutionStatisticsImpl
private ExecutionStatisticsImpl(long lastStartTime, java.util.Map<java.lang.Long,TimeWindowStatistics> timeWindowStatistics)
-
-
Method Detail
-
getLastStartTime
public java.util.Date getLastStartTime()
Description copied from interface:ExecutionStatistics
Return time when target was executed last time. The time is measured before the target was executed.- Specified by:
getLastStartTime
in interfaceExecutionStatistics
- Returns:
- Time of last execution.
-
getTimeWindowStatistics
public java.util.Map<java.lang.Long,TimeWindowStatistics> getTimeWindowStatistics()
Description copied from interface:ExecutionStatistics
Returns time window statistics for available time window sizes. The returned map contains sizes of a time window in milliseconds as keys andtime window statistics
for the corresponding time window as value.- Specified by:
getTimeWindowStatistics
in interfaceExecutionStatistics
- Returns:
- Map with size of a time window in milliseconds as keys and
time window statistics
for the corresponding time window as value.
-
snapshot
public ExecutionStatistics snapshot()
Description copied from interface:ExecutionStatistics
Get the immutable consistent snapshot of the monitoring statistics. Working with snapshots might have negative performance impact as snapshot must be created but ensures consistency of data over time. However, the usage of snapshot is encouraged to avoid working with inconsistent data. Not all statistics must be updated in the same time on mutable version of statistics.- Specified by:
snapshot
in interfaceExecutionStatistics
- Returns:
- Snapshot of execution statistics.
-
-