code: @Produces
      @NamedJCache
      public <K, V> Cache<K, V> produceCache(InjectionPoint ip) {
  
          String cacheName = ip.getAnnotated().getAnnotation(NamedJCache.class).name();
          Cache<K, V> cache = produceCacheManager().getCache(cacheName);
  
          if (cache == null)
              throw new IllegalStateException("Cannot @Produces cache : Named JCache '" + cacheName + "' does not exists. Make sure you created it at startup");
  
          return cache;
      }
docs: Allow @Inject of Cache identified by its unique name
  @param ip to retrieve cache name
  @param <K> Key type
  @param <V> Value type
  @return unique instance of requested named cache
  @throws IllegalStateException if cache is not found in current context