1 package org.apache.commons.jcs3.auxiliary.remote;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.io.IOException;
23 import java.util.ArrayList;
24 import java.util.HashMap;
25 import java.util.HashSet;
26 import java.util.List;
27 import java.util.Map;
28 import java.util.Set;
29
30 import org.apache.commons.jcs3.engine.behavior.ICacheElement;
31 import org.apache.commons.jcs3.engine.behavior.ICacheServiceNonLocal;
32
33
34
35
36 public class MockRemoteCacheService<K, V>
37 implements ICacheServiceNonLocal<K, V>
38 {
39
40 public K lastGetKey;
41
42
43 public String lastGetMatchingPattern;
44
45
46 public Set<K> lastGetMultipleKeys;
47
48
49 public ICacheElement<K, V> lastUpdate;
50
51
52 public List<ICacheElement<K, V>> updateRequestList = new ArrayList<>();
53
54
55 public List<Long> updateRequestIdList = new ArrayList<>();
56
57
58 public K lastRemoveKey;
59
60
61 public String lastRemoveAllCacheName;
62
63
64
65
66
67
68
69 @Override
70 public ICacheElement<K, V> get( final String cacheName, final K key, final long requesterId )
71 {
72 lastGetKey = key;
73 return null;
74 }
75
76
77
78
79
80 @Override
81 public Set<K> getKeySet( final String cacheName )
82 {
83 return new HashSet<>();
84 }
85
86
87
88
89
90
91
92
93 @Override
94 public void remove( final String cacheName, final K key, final long requesterId )
95 {
96 lastRemoveKey = key;
97 }
98
99
100
101
102 @Override
103 public void removeAll( final String cacheName, final long requesterId )
104 throws IOException
105 {
106 lastRemoveAllCacheName = cacheName;
107 }
108
109
110
111
112
113
114
115 @Override
116 public void update( final ICacheElement<K, V> item, final long requesterId )
117 {
118 lastUpdate = item;
119 updateRequestList.add( item );
120 updateRequestIdList.add( Long.valueOf( requesterId ) );
121 }
122
123
124
125
126
127
128 @Override
129 public void dispose( final String cacheName )
130 {
131 }
132
133
134
135
136
137
138 @Override
139 public ICacheElement<K, V> get( final String cacheName, final K key )
140 {
141 return get( cacheName, key, 0 );
142 }
143
144
145
146
147 @Override
148 public void release()
149 {
150 }
151
152
153
154
155
156
157
158 @Override
159 public void remove( final String cacheName, final K key )
160 {
161 lastRemoveKey = key;
162 }
163
164
165
166
167
168
169 @Override
170 public void removeAll( final String cacheName )
171 {
172 lastRemoveAllCacheName = cacheName;
173 }
174
175
176
177
178
179
180 @Override
181 public void update( final ICacheElement<K, V> item )
182 {
183 lastUpdate = item;
184 }
185
186
187
188
189
190
191
192 @Override
193 public Map<K, ICacheElement<K, V>> getMultiple( final String cacheName, final Set<K> keys, final long requesterId )
194 {
195 lastGetMultipleKeys = keys;
196 return new HashMap<>();
197 }
198
199
200
201
202
203
204 @Override
205 public Map<K, ICacheElement<K, V>> getMultiple( final String cacheName, final Set<K> keys )
206 {
207 return getMultiple( cacheName, keys, 0 );
208 }
209
210
211
212
213
214
215
216
217
218 @Override
219 public Map<K, ICacheElement<K, V>> getMatching( final String cacheName, final String pattern )
220 throws IOException
221 {
222 return getMatching( cacheName, pattern, 0 );
223 }
224
225
226
227
228
229
230
231
232 @Override
233 public Map<K, ICacheElement<K, V>> getMatching( final String cacheName, final String pattern, final long requesterId )
234 throws IOException
235 {
236 lastGetMatchingPattern = pattern;
237 return new HashMap<>();
238 }
239 }