Skip to content

1.1.5-SNAPSHOT

Choose a tag to compare

@Hyshmily Hyshmily released this 19 Jun 09:46

Broadcast Suppression Annotation

  • Broadcast — New @Target(METHOD) annotation with boolean value() default true. When set to false, suppresses cross-instance cache sync messages. Supported on @Cacheable, @CachePut, and @CacheEvict.
  • HotKeyCacheContext — New skipBroadcast field and isSkipBroadcast() getter. Context stores flag when any companion annotation is non-default. Applied by HotKeyCacheExtensionAspect before method execution.
  • HotKeyCacheExtensionAspect — New @Around("@annotation(cachePut)") and @Around("@annotation(cacheEvict)") pointcuts. Reads @Broadcast and sets skipBroadcast in context. Existing aroundCacheable() also reads @Broadcast.
  • HotKeySpringCacheput(), evict(), and null-caching path in get(key, loader) check isSkipBroadcast(). When true, calls putLocal()/evictLocal() instead of putThrough()/invalidate(), avoiding broadcast, version bump, and hot-key detection.
  • HotKeyCacheTTL@Target expanded to include ElementType.TYPE, allowing class-level TTL defaults.