source: binary-improvements2/WebServer/src/FileCache/AbstractCache.cs@ 436

Last change on this file since 436 was 402, checked in by alloc, 22 months ago
  • Major refactoring
  • Using Utf8Json for (de)serialization
  • Moving APIs to REST
  • Removing dependencies from WebServer and MapRenderer to ServerFixes
File size: 687 bytes
Line 
1using System.Collections.Generic;
2
3namespace Webserver.FileCache {
4 public abstract class AbstractCache {
5 public abstract byte[] GetFileContent (string _filename);
6 public abstract (int filesDropped, int bytesDropped) Invalidate ();
7
8 protected AbstractCache () {
9 caches.Add (this);
10 }
11
12 private static readonly List<AbstractCache> caches = new List<AbstractCache> ();
13 public static (int, int) InvalidateAllCaches () {
14 int filesDropped = 0;
15 int bytesDropped = 0;
16
17 foreach (AbstractCache cache in caches) {
18 (int files, int bytes) = cache.Invalidate ();
19 filesDropped += files;
20 bytesDropped += bytes;
21 }
22
23 return (filesDropped, bytesDropped);
24 }
25 }
26}
Note: See TracBrowser for help on using the repository browser.