1 package com.atlassian.vcache.internal.core.metrics;
2
3 import com.atlassian.vcache.ExternalCache;
4 import com.atlassian.vcache.ExternalWriteOperationsUnbuffered;
5 import com.atlassian.vcache.StableReadExternalCache;
6
7 import static java.util.Objects.requireNonNull;
8
9
10
11
12
13
14
15 class TimedStableReadExternalCache<V>
16 extends TimedExternalWriteOperationsUnbuffered<V>
17 implements StableReadExternalCache<V> {
18 private final StableReadExternalCache<V> delegate;
19
20 TimedStableReadExternalCache(MetricsRecorder metricsRecorder, StableReadExternalCache<V> delegate) {
21 super(metricsRecorder);
22 this.delegate = requireNonNull(delegate);
23 }
24
25 @Override
26 protected ExternalWriteOperationsUnbuffered<V> getDelegateOps() {
27 return delegate;
28 }
29
30 @Override
31 protected ExternalCache<V> getDelegate() {
32 return delegate;
33 }
34 }