browsercache.js 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /*******************************************************************************
  2. ηMatrix - a browser extension to black/white list requests.
  3. Copyright (C) 2015-2019 Raymond Hill
  4. Copyright (C) 2019-2022 Alessio Vanni
  5. This program is free software: you can redistribute it and/or modify
  6. it under the terms of the GNU General Public License as published by
  7. the Free Software Foundation, either version 3 of the License, or
  8. (at your option) any later version.
  9. This program is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. GNU General Public License for more details.
  13. You should have received a copy of the GNU General Public License
  14. along with this program. If not, see {http://www.gnu.org/licenses/}.
  15. Home: https://gitlab.com/vannilla/ematrix
  16. uMatrix Home: https://github.com/gorhill/uMatrix
  17. */
  18. 'use strict';
  19. (function () {
  20. // Browser data jobs
  21. let clearCache = function () {
  22. vAPI.setTimeout(clearCache, 15 * 60 * 1000);
  23. var ηm = ηMatrix;
  24. if (!ηm.userSettings.clearBrowserCache) {
  25. return;
  26. }
  27. ηm.clearBrowserCacheCycle -= 15;
  28. if (ηm.clearBrowserCacheCycle > 0) {
  29. return;
  30. }
  31. vAPI.browser.data.clearCache();
  32. ηm.clearBrowserCacheCycle = ηm.userSettings.clearBrowserCacheAfter;
  33. ++ηm.browserCacheClearedCounter;
  34. // TODO: i18n
  35. ηm.logger.writeOne('', 'info',
  36. vAPI.i18n('loggerEntryBrowserCacheCleared'));
  37. // console.debug('clearBrowserCacheCallback()> '
  38. // + 'vAPI.browser.data.clearCache() called');
  39. };
  40. vAPI.setTimeout(clearCache, 15 * 60 * 1000);
  41. })();