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