В cache2k как добавить новую реализацию Cache или можно временно отключить кэш?

Я пытаюсь временно отключить (под отключением, я имею в виду: действовать так, как если бы кэширование было полностью отключено) набор кэшей cache2k, и, похоже, нет способа сделать это с реализацией по умолчанию во время выполнения (и под временем выполнения я имею в виду после того, как кеш был создан и потенциально заполнен). Поэтому я подумал, что предоставлю новый кеш (возможно, используя существующую реализацию кеша вместе с org.cache2k.ForwardingCache и просто обернуть каждый вызов, чтобы действовать, как я ожидал, если отключен). Обратите внимание, что я не использую никаких функций загрузчика (и не хотел бы).

Как мне зарегистрировать новую реализацию кеша в cache2k? Есть ли лучший способ сделать это без использования загрузчика?

В идеале я хотел бы сделать что-то вроде этого:

public void enableCaching() {
    CacheManager.getInstance().getActiveCaches().forEach(cache -> {
        cache.enable();
    });
}
public void disableCaching() {
    CacheManager.getInstance().getActiveCaches().forEach(cache -> {
        cache.clear();
        cache.disable();
    });
}

0 ответов

Другие вопросы по тегам