Skip to content

Commit 8c70b43

Browse files
committed
refactor get-all and get-all-keys with optional prefix
1 parent 1f81f6b commit 8c70b43

23 files changed

+145
-130
lines changed

src/EasyCaching.CSRedis/DefaultCSRedisCachingProvider.Async.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,14 +64,14 @@ public override async Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T
6464
return result;
6565
}
6666

67-
public override Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(CancellationToken cancellationToken = default)
67+
public override Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(string prefix = "", CancellationToken cancellationToken = default)
6868
{
69-
throw new NotImplementedException();
69+
throw new NotSupportedException();
7070
}
7171

72-
public override Task<IEnumerable<string>> BaseGetAllKeysAsync(CancellationToken cancellationToken = default)
72+
public override Task<IEnumerable<string>> BaseGetAllKeysAsync(string prefix = "", CancellationToken cancellationToken = default)
7373
{
74-
throw new NotImplementedException();
74+
throw new NotSupportedException();
7575
}
7676

7777
/// <summary>

src/EasyCaching.CSRedis/DefaultCSRedisCachingProvider.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -252,14 +252,14 @@ public override IDictionary<string, CacheValue<T>> BaseGetAll<T>(IEnumerable<str
252252
return result;
253253
}
254254

255-
public override IDictionary<string, CacheValue<T>> BaseGetAll<T>()
255+
public override IDictionary<string, CacheValue<T>> BaseGetAll<T>(string prefix = "")
256256
{
257-
throw new NotImplementedException();
257+
throw new NotSupportedException();
258258
}
259259

260-
public override IEnumerable<string> BaseGetAllKeys()
260+
public override IEnumerable<string> BaseGetAllKeys(string prefix = "")
261261
{
262-
throw new NotImplementedException();
262+
throw new NotSupportedException();
263263
}
264264

265265
/// <summary>

src/EasyCaching.Core/EasyCachingAbstractProvider.cs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,12 @@ protected EasyCachingAbstractProvider(IDistributedLockFactory lockFactory, BaseP
4949
public abstract Task BaseFlushAsync(CancellationToken cancellationToken = default);
5050
public abstract CacheValue<T> BaseGet<T>(string cacheKey, Func<T> dataRetriever, TimeSpan expiration);
5151
public abstract CacheValue<T> BaseGet<T>(string cacheKey);
52-
public abstract IEnumerable<string> BaseGetAllKeys();
53-
public abstract Task<IEnumerable<string>> BaseGetAllKeysAsync(CancellationToken cancellationToken = default);
52+
public abstract IEnumerable<string> BaseGetAllKeys(string prefix = "");
53+
public abstract Task<IEnumerable<string>> BaseGetAllKeysAsync(string prefix = "", CancellationToken cancellationToken = default);
5454
public abstract IDictionary<string, CacheValue<T>> BaseGetAll<T>(IEnumerable<string> cacheKeys);
55-
public abstract IDictionary<string, CacheValue<T>> BaseGetAll<T>();
55+
public abstract IDictionary<string, CacheValue<T>> BaseGetAll<T>(string prefix ="");
5656
public abstract Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(IEnumerable<string> cacheKeys, CancellationToken cancellationToken = default);
57-
public abstract Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(CancellationToken cancellationToken = default);
57+
public abstract Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(string prefix ="", CancellationToken cancellationToken = default);
5858
public abstract Task<CacheValue<T>> BaseGetAsync<T>(string cacheKey, Func<Task<T>> dataRetriever, TimeSpan expiration, CancellationToken cancellationToken = default);
5959
public abstract Task<object> BaseGetAsync(string cacheKey, Type type, CancellationToken cancellationToken = default);
6060
public abstract Task<CacheValue<T>> BaseGetAsync<T>(string cacheKey, CancellationToken cancellationToken = default);
@@ -261,13 +261,13 @@ public CacheValue<T> Get<T>(string cacheKey)
261261
}
262262
}
263263

264-
public IEnumerable<string> GetAllKeys()
264+
public IEnumerable<string> GetAllKeys(string prefix = "")
265265
{
266266
var operationId = s_diagnosticListener.WriteGetCacheBefore(new BeforeGetRequestEventData(CachingProviderType.ToString(), Name, nameof(GetAllKeys), null));
267267
Exception e = null;
268268
try
269269
{
270-
return BaseGetAllKeys();
270+
return BaseGetAllKeys(prefix);
271271
}
272272
catch (Exception ex)
273273
{
@@ -287,13 +287,13 @@ public IEnumerable<string> GetAllKeys()
287287
}
288288
}
289289

290-
public async Task<IEnumerable<string>> GetAllKeysAsync(CancellationToken cancellationToken = default)
290+
public async Task<IEnumerable<string>> GetAllKeysAsync(string prefix = "", CancellationToken cancellationToken = default)
291291
{
292292
var operationId = s_diagnosticListener.WriteGetCacheBefore(new BeforeGetRequestEventData(CachingProviderType.ToString(), Name, nameof(GetAllKeysAsync), null));
293293
Exception e = null;
294294
try
295295
{
296-
return await BaseGetAllKeysAsync(cancellationToken);
296+
return await BaseGetAllKeysAsync(prefix, cancellationToken);
297297
}
298298
catch (Exception ex)
299299
{
@@ -339,13 +339,13 @@ public IDictionary<string, CacheValue<T>> GetAll<T>(IEnumerable<string> cacheKey
339339
}
340340
}
341341

342-
public IDictionary<string, CacheValue<object>> GetAll()
342+
public IDictionary<string, CacheValue<object>> GetAll(string prefix = "")
343343
{
344344
var operationId = s_diagnosticListener.WriteGetCacheBefore(new BeforeGetRequestEventData(CachingProviderType.ToString(), Name, nameof(GetAll), null));
345345
Exception e = null;
346346
try
347347
{
348-
return BaseGetAll<object>();
348+
return BaseGetAll<object>(prefix);
349349
}
350350
catch (Exception ex)
351351
{
@@ -365,13 +365,13 @@ public IDictionary<string, CacheValue<object>> GetAll()
365365
}
366366
}
367367

368-
public async Task<IDictionary<string, CacheValue<object>>> GetAllAsync(CancellationToken cancellationToken = default)
368+
public async Task<IDictionary<string, CacheValue<object>>> GetAllAsync(string prefix = "", CancellationToken cancellationToken = default)
369369
{
370370
var operationId = s_diagnosticListener.WriteGetCacheBefore(new BeforeGetRequestEventData(CachingProviderType.ToString(), Name, nameof(GetAllAsync), null));
371371
Exception e = null;
372372
try
373373
{
374-
return await BaseGetAllAsync<object>(cancellationToken);
374+
return await BaseGetAllAsync<object>(prefix, cancellationToken);
375375
}
376376
catch (Exception ex)
377377
{

src/EasyCaching.Core/IEasyCachingProvider.cs

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,26 +25,32 @@ public interface IEasyCachingProvider : IEasyCachingProviderBase
2525
/// <summary>
2626
/// Gets all keys.
2727
/// </summary>
28+
/// <param name="prefix">Prefix.</param>
2829
/// <returns>The all keys.</returns>
29-
IEnumerable<string> GetAllKeys();
30+
IEnumerable<string> GetAllKeys(string prefix = "");
3031

3132
/// <summary>
3233
/// Gets all keys async.
3334
/// </summary>
35+
/// <param name="prefix">Prefix.</param>
36+
/// <param name="cancellationToken">CancellationToken</param>
3437
/// <returns>The all keys async.</returns>
35-
Task<IEnumerable<string>> GetAllKeysAsync(CancellationToken cancellationToken = default);
38+
Task<IEnumerable<string>> GetAllKeysAsync(string prefix = "", CancellationToken cancellationToken = default);
3639

3740
/// <summary>
3841
/// Gets all.
3942
/// </summary>
43+
/// <param name="prefix">Prefix.</param>
4044
/// <returns>The all.</returns>
41-
IDictionary<string, CacheValue<object>> GetAll();
45+
IDictionary<string, CacheValue<object>> GetAll(string prefix = "");
4246

4347
/// <summary>
4448
/// Gets all async.
4549
/// </summary>
50+
/// <param name="prefix">Prefix.</param>
51+
/// <param name="cancellationToken">CancellationToken</param>
4652
/// <returns>The all async.</returns>
47-
Task<IDictionary<string, CacheValue<object>>> GetAllAsync(CancellationToken cancellationToken = default);
53+
Task<IDictionary<string, CacheValue<object>>> GetAllAsync(string prefix = "", CancellationToken cancellationToken = default);
4854

4955
/// <summary>
5056
/// Gets all.

src/EasyCaching.Disk/DefaultDiskCachingProvider.Async.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -86,15 +86,15 @@ public override async Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T
8686
}
8787

8888

89-
public override Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(CancellationToken cancellationToken = default)
89+
public override Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(string prefix = "", CancellationToken cancellationToken = default)
9090
{
91-
throw new NotImplementedException();
91+
throw new NotSupportedException();
9292
}
9393

9494

95-
public override Task<IEnumerable<string>> BaseGetAllKeysAsync(CancellationToken cancellationToken = default)
95+
public override Task<IEnumerable<string>> BaseGetAllKeysAsync(string prefix = "", CancellationToken cancellationToken = default)
9696
{
97-
throw new NotImplementedException();
97+
throw new NotSupportedException();
9898
}
9999

100100
public override async Task<CacheValue<T>> BaseGetAsync<T>(string cacheKey, Func<Task<T>> dataRetriever, TimeSpan expiration, CancellationToken cancellationToken = default)

src/EasyCaching.Disk/DefaultDiskCachingProvider.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -336,14 +336,14 @@ public override IDictionary<string, CacheValue<T>> BaseGetAll<T>(IEnumerable<str
336336
return dict;
337337
}
338338

339-
public override IDictionary<string, CacheValue<T>> BaseGetAll<T>()
339+
public override IDictionary<string, CacheValue<T>> BaseGetAll<T>(string prefix = "")
340340
{
341-
throw new NotImplementedException();
341+
throw new NotSupportedException();
342342
}
343343

344-
public override IEnumerable<string> BaseGetAllKeys()
344+
public override IEnumerable<string> BaseGetAllKeys(string prefix = "")
345345
{
346-
throw new NotImplementedException();
346+
throw new NotSupportedException();
347347
}
348348

349349
public override IDictionary<string, CacheValue<T>> BaseGetByPrefix<T>(string prefix)

src/EasyCaching.FasterKv/DefaultFasterKvCachingProvider.Async.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,14 @@ public override async Task BaseFlushAsync(CancellationToken cancellationToken =
2929
}
3030
}
3131

32-
public override Task<IEnumerable<string>> BaseGetAllKeysAsync(CancellationToken cancellationToken = default)
32+
public override Task<IEnumerable<string>> BaseGetAllKeysAsync(string prefix = "", CancellationToken cancellationToken = default)
3333
{
34-
throw new NotImplementedException();
34+
throw new NotSupportedException();
3535
}
3636

37-
public override Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(CancellationToken cancellationToken = default)
37+
public override Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(string prefix = "", CancellationToken cancellationToken = default)
3838
{
39-
throw new NotImplementedException();
39+
throw new NotSupportedException();
4040
}
4141

4242
public override async Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(IEnumerable<string> cacheKeys,

src/EasyCaching.FasterKv/DefaultFasterKvCachingProvider.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -162,14 +162,14 @@ public override CacheValue<T> BaseGet<T>(string cacheKey)
162162
return BaseGetInternal<T>(cacheKey, session);
163163
}
164164

165-
public override IEnumerable<string> BaseGetAllKeys()
165+
public override IEnumerable<string> BaseGetAllKeys(string prefix = "")
166166
{
167-
throw new NotImplementedException();
167+
throw new NotSupportedException();
168168
}
169169

170-
public override IDictionary<string, CacheValue<T>> BaseGetAll<T>()
170+
public override IDictionary<string, CacheValue<T>> BaseGetAll<T>(string prefix = "")
171171
{
172-
throw new NotImplementedException();
172+
throw new NotSupportedException();
173173
}
174174

175175
public override IDictionary<string, CacheValue<T>> BaseGetAll<T>(IEnumerable<string> cacheKeys)

src/EasyCaching.InMemory/DefaultInMemoryCachingProvider.Async.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -282,24 +282,24 @@ public override async Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T
282282
/// <returns>The all async.</returns>
283283
/// <param name="cancellationToken">CancellationToken</param>
284284
/// <typeparam name="T">The 1st type parameter.</typeparam>
285-
public override async Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(CancellationToken cancellationToken = default)
285+
public override async Task<IDictionary<string, CacheValue<T>>> BaseGetAllAsync<T>(string prefix = "", CancellationToken cancellationToken = default)
286286
{
287287
if (_options.EnableLogging)
288288
_logger?.LogInformation("GetAllAsync");
289289

290-
return await Task.FromResult(_cache.GetAll<T>());
290+
return await Task.FromResult(_cache.GetAll<T>(prefix));
291291
}
292292

293293
/// <summary>
294294
/// Get all cacheKey async.
295295
/// </summary>
296296
/// <returns>Get all cacheKey async.</returns>
297-
public override Task<IEnumerable<string>> BaseGetAllKeysAsync(CancellationToken cancellationToken = default)
297+
public override Task<IEnumerable<string>> BaseGetAllKeysAsync(string prefix = "", CancellationToken cancellationToken = default)
298298
{
299299
if (_options.EnableLogging)
300300
_logger?.LogInformation("GetAllKeys");
301301

302-
return Task.FromResult(_cache.GetAllKeys());
302+
return Task.FromResult(_cache.GetAllKeys(prefix));
303303
}
304304

305305
/// <summary>

src/EasyCaching.InMemory/DefaultInMemoryCachingProvider.cs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -310,26 +310,28 @@ public override IDictionary<string, CacheValue<T>> BaseGetAll<T>(IEnumerable<str
310310
/// <summary>
311311
/// Gets all.
312312
/// </summary>
313+
/// <param name="prefix">Prefix.</param>
313314
/// <returns>The all.</returns>
314315
/// <typeparam name="T">The 1st type parameter.</typeparam>
315-
public override IDictionary<string, CacheValue<T>> BaseGetAll<T>()
316+
public override IDictionary<string, CacheValue<T>> BaseGetAll<T>(string prefix = "")
316317
{
317318
if (_options.EnableLogging)
318319
_logger?.LogInformation("GetAll");
319320

320-
return _cache.GetAll<T>();
321+
return _cache.GetAll<T>(prefix);
321322
}
322323

323324
/// <summary>
324325
/// Get all cacheKey.
325326
/// </summary>
327+
/// <param name="prefix">Prefix.</param>
326328
/// <returns>Get all cacheKey.</returns>
327-
public override IEnumerable<string> BaseGetAllKeys()
329+
public override IEnumerable<string> BaseGetAllKeys(string prefix = "")
328330
{
329331
if (_options.EnableLogging)
330332
_logger?.LogInformation("GetAllKeys");
331333

332-
return _cache.GetAllKeys();
334+
return _cache.GetAllKeys(prefix);
333335
}
334336

335337
/// <summary>

0 commit comments

Comments
 (0)