Регистрация динамически созданного bean-компонента caffeineCache в менеджере кэширования Spring - PullRequest
0 голосов
/ 03 июня 2019

Я ищу способы регистрации динамически созданных кофейных бинов с кофеином в диспетчере кэша, поэтому я могу получить их с помощью cacheManager.

Одним из мыслительных процессов было использование какой-то фабрики, чтобы фабричные бины былизарегистрирован в контексте приложения.

Я использую кеш кофеина и создаю кеш динамически, а не декларативно

Определяя бин, он автоматически регистрируется в Spring CacheManager.

  @Bean
  public Cache someCaffeineCache() {
    return new CaffeineCache(
        "someName,
        Caffeine.from("some valid spec")
            .build());
  }

Однако, когда я создаю CaffeineCache во время выполнения, они не регистрируются в Spring Cache, потому что они не являются зарегистрированным компонентом с контекстом

 public Cache doCreateCache(String cacheName,String cacheSpec){
  return new CaffeineCache(
        "someName,
        Caffeine.from("some valid spec")
            .build());
}

...