SHOW:
|
|
- or go back to the newest paste.
| 1 | package com.hazelcast.util; | |
| 2 | ||
| 3 | import com.google.common.collect.ForwardingConcurrentMap; | |
| 4 | ||
| 5 | import com.hazelcast.core.EntryListener; | |
| 6 | import com.hazelcast.core.IMap; | |
| 7 | import com.hazelcast.core.MapEntry; | |
| 8 | import com.hazelcast.monitor.LocalMapStats; | |
| 9 | import com.hazelcast.query.Expression; | |
| 10 | import com.hazelcast.query.Predicate; | |
| 11 | ||
| 12 | import java.util.Collection; | |
| 13 | import java.util.Map; | |
| 14 | import java.util.Set; | |
| 15 | import java.util.concurrent.Future; | |
| 16 | import java.util.concurrent.TimeUnit; | |
| 17 | import java.util.concurrent.TimeoutException; | |
| 18 | ||
| 19 | ||
| 20 | /** | |
| 21 | * A forwarding class for IMap, which is itself an extension of ConcurrentMap. | |
| 22 | - | * This is for Hazelcast 1.9 and earlier. For Hazelcast 2.0, see https://pastebin.com/7ng381ZN |
| 22 | + | * This is for Hazelcast 2.0, prior versions are for Hazelcast 1.9 and earlier. |
| 23 | */ | |
| 24 | - | public class ForwardingIMap<K, V> extends ForwardingConcurrentMap<K, V> implements IMap<K, V> {
|
| 24 | + | public abstract class ForwardingIMap<K, V> extends ForwardingConcurrentMap<K, V> implements IMap<K, V> {
|
| 25 | ||
| 26 | - | public ForwardingIMap(IMap<K, V> map) {
|
| 26 | + | protected ForwardingIMap() {
|
| 27 | - | this.map = map; |
| 27 | + | // Nothing to do here except be protected. |
| 28 | } | |
| 29 | ||
| 30 | ||
| 31 | // | |
| 32 | // Instance methods | |
| 33 | // | |
| 34 | ||
| 35 | @Override public InstanceType getInstanceType() {
| |
| 36 | return delegate().getInstanceType(); | |
| 37 | } | |
| 38 | ||
| 39 | @Override public void destroy() {
| |
| 40 | delegate().destroy(); | |
| 41 | } | |
| 42 | ||
| 43 | @Override public Object getId() {
| |
| 44 | return delegate().getId(); | |
| 45 | } | |
| 46 | ||
| 47 | ||
| 48 | // | |
| 49 | // IMap methods | |
| 50 | // | |
| 51 | ||
| 52 | @Override public void flush() {
| |
| 53 | delegate().flush(); | |
| 54 | } | |
| 55 | @Override public String getName() {
| |
| 56 | return delegate().getName(); | |
| 57 | } | |
| 58 | ||
| 59 | @Override public Map<K, V> getAll(Set<K> keys) {
| |
| 60 | return delegate().getAll(keys); | |
| 61 | } | |
| 62 | ||
| 63 | @Override public Future<V> getAsync(K key) {
| |
| 64 | return delegate().getAsync(key); | |
| 65 | } | |
| 66 | ||
| 67 | @Override public Future<V> putAsync(K key, V value) {
| |
| 68 | return delegate().putAsync(key, value); | |
| 69 | } | |
| 70 | ||
| 71 | @Override public Future<V> removeAsync(K key) {
| |
| 72 | return delegate().removeAsync(key); | |
| 73 | } | |
| 74 | ||
| 75 | @Override public Object tryRemove(K key, long timeout, TimeUnit timeunit) throws TimeoutException {
| |
| 76 | return delegate().tryRemove(key, timeout, timeunit); | |
| 77 | } | |
| 78 | ||
| 79 | @Override public boolean tryPut(K key, V value, long timeout, TimeUnit timeunit) {
| |
| 80 | return delegate().tryPut(key, value, timeout, timeunit); | |
| 81 | } | |
| 82 | ||
| 83 | @Override public V put(K key, V value, long ttl, TimeUnit timeunit) {
| |
| 84 | return delegate().put(key, value, ttl, timeunit); | |
| 85 | } | |
| 86 | ||
| 87 | @Override public void putTransient(K key, V value, long ttl, TimeUnit timeunit) {
| |
| 88 | delegate().putTransient(key, value, ttl, timeunit); | |
| 89 | } | |
| 90 | ||
| 91 | @Override public V putIfAbsent(K key, V value, long ttl, TimeUnit timeunit) {
| |
| 92 | return delegate().putIfAbsent(key, value, ttl, timeunit); | |
| 93 | } | |
| 94 | ||
| 95 | @Override public void set(K key, V value, long ttl, TimeUnit timeUnit) {
| |
| 96 | delegate().set(key, value, ttl, timeUnit); | |
| 97 | } | |
| 98 | ||
| 99 | @Override public V tryLockAndGet(K key, long time, TimeUnit timeunit) throws TimeoutException {
| |
| 100 | return delegate().tryLockAndGet(key, time, timeunit); | |
| 101 | } | |
| 102 | ||
| 103 | @Override public void putAndUnlock(K key, V value) {
| |
| 104 | delegate().putAndUnlock(key, value); | |
| 105 | } | |
| 106 | ||
| 107 | @Override public void lock(K key) {
| |
| 108 | delegate().lock(key); | |
| 109 | } | |
| 110 | ||
| 111 | @Override public boolean tryLock(K key) {
| |
| 112 | return delegate().tryLock(key); | |
| 113 | } | |
| 114 | ||
| 115 | @Override public boolean tryLock(K key, long time, TimeUnit timeunit) {
| |
| 116 | return delegate().tryLock(key, time, timeunit); | |
| 117 | } | |
| 118 | ||
| 119 | @Override public void unlock(K key) {
| |
| 120 | delegate().unlock(key); | |
| 121 | } | |
| 122 | ||
| 123 | @Override public void forceUnlock(K key) {
| |
| 124 | delegate().forceUnlock(key); | |
| 125 | } | |
| 126 | ||
| 127 | @Override public boolean lockMap(long time, TimeUnit timeunit) {
| |
| 128 | return delegate().lockMap(time, timeunit); | |
| 129 | } | |
| 130 | ||
| 131 | @Override public void unlockMap() {
| |
| 132 | delegate().unlockMap(); | |
| 133 | } | |
| 134 | ||
| 135 | ||
| 136 | @Override public void addLocalEntryListener(EntryListener<K,V> listener) {
| |
| 137 | delegate().addLocalEntryListener(listener); | |
| 138 | } | |
| 139 | ||
| 140 | @Override public void addEntryListener(EntryListener<K,V> listener, boolean includeValue) {
| |
| 141 | delegate().addEntryListener(listener, includeValue); | |
| 142 | } | |
| 143 | ||
| 144 | @Override public void removeEntryListener(EntryListener<K,V> listener) {
| |
| 145 | delegate().removeEntryListener(listener); | |
| 146 | } | |
| 147 | ||
| 148 | @Override public void addEntryListener(EntryListener<K,V> listener, K key, boolean includeValue) {
| |
| 149 | delegate().addEntryListener(listener, key, includeValue); | |
| 150 | } | |
| 151 | ||
| 152 | @Override public void removeEntryListener(EntryListener<K,V> listener, K key) {
| |
| 153 | delegate().removeEntryListener(listener, key); | |
| 154 | } | |
| 155 | ||
| 156 | @Override public MapEntry<K,V> getMapEntry(K key) {
| |
| 157 | return delegate().getMapEntry(key); | |
| 158 | } | |
| 159 | ||
| 160 | @Override public boolean evict(Object key) {
| |
| 161 | return delegate().evict(key); | |
| 162 | } | |
| 163 | ||
| 164 | @Override public Set<K> keySet(Predicate predicate) {
| |
| 165 | return delegate().keySet(predicate); | |
| 166 | } | |
| 167 | ||
| 168 | @Override public Set<Map.Entry<K,V>> entrySet(Predicate predicate) {
| |
| 169 | return delegate().entrySet(predicate); | |
| 170 | } | |
| 171 | ||
| 172 | @Override public Collection<V> values(Predicate predicate) {
| |
| 173 | return delegate().values(predicate); | |
| 174 | } | |
| 175 | ||
| 176 | @Override public Set<K> localKeySet() {
| |
| 177 | return delegate().localKeySet(); | |
| 178 | } | |
| 179 | ||
| 180 | @Override public Set<K> localKeySet(Predicate predicate) {
| |
| 181 | return delegate().localKeySet(predicate); | |
| 182 | } | |
| 183 | ||
| 184 | @Override public void addIndex(String attribute, boolean ordered) {
| |
| 185 | delegate().addIndex(attribute, ordered); | |
| 186 | } | |
| 187 | ||
| 188 | @Override public void addIndex(Expression<?> expression, boolean ordered) {
| |
| 189 | delegate().addIndex(expression, ordered); | |
| 190 | - | protected IMap<K, V> delegate() {
|
| 190 | + | |
| 191 | - | return map; |
| 191 | + | |
| 192 | @Override public LocalMapStats getLocalMapStats() {
| |
| 193 | return delegate().getLocalMapStats(); | |
| 194 | - | private final IMap<K, V> map; |
| 194 | + | |
| 195 | ||
| 196 | ||
| 197 | protected abstract IMap<K, V> delegate(); | |
| 198 | } |