MCPcopy
hub / github.com/google/guava / ForwardingCache

Class ForwardingCache

android/guava/src/com/google/common/cache/ForwardingCache.java:36–147  ·  view source on GitHub ↗

A cache which forwards all its method calls to another cache. Subclasses should override one or more methods to modify the behavior of the backing cache as desired per the decorator pattern . @author Charles Fry @since 10.0

Source from the content-addressed store, hash-verified

34 * @since 10.0
35 */
36@GwtIncompatible
37public abstract class ForwardingCache<K, V> extends ForwardingObject implements Cache<K, V> {
38
39 /** Constructor for use by subclasses. */
40 protected ForwardingCache() {}
41
42 @Override
43 protected abstract Cache<K, V> delegate();
44
45 /**
46 * @since 11.0
47 */
48 @Override
49 public @Nullable V getIfPresent(Object key) {
50 return delegate().getIfPresent(key);
51 }
52
53 /**
54 * @since 11.0
55 */
56 @Override
57 public V get(K key, Callable<? extends V> valueLoader) throws ExecutionException {
58 return delegate().get(key, valueLoader);
59 }
60
61 /**
62 * @since 11.0
63 */
64 @Override
65 /*
66 * <? extends Object> is mostly the same as <?> to plain Java. But to nullness checkers, they
67 * differ: <? extends Object> means "non-null types," while <?> means "all types."
68 */
69 public ImmutableMap<K, V> getAllPresent(Iterable<? extends Object> keys) {
70 return delegate().getAllPresent(keys);
71 }
72
73 /**
74 * @since 11.0
75 */
76 @Override
77 public void put(K key, V value) {
78 delegate().put(key, value);
79 }
80
81 /**
82 * @since 12.0
83 */
84 @Override
85 public void putAll(Map<? extends K, ? extends V> m) {
86 delegate().putAll(m);
87 }
88
89 @Override
90 public void invalidate(Object key) {
91 delegate().invalidate(key);
92 }
93

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…