ObjectTagsCache
基本信息
net.glease.tc4tweak.modules.objectTag.ObjectTagsCache —— 三层嵌套的要素映射缓存。
泛型
class ObjectTagsCache extends FlushableCache<ConcurrentMap<Item, TIntObjectMap<AspectList>>>
⚠️ 无 public —— 包私有类。
三层结构
| 层 | 键/值 | 类型 |
|---|---|---|
| 1 | Item → {meta → AspectList} |
ConcurrentMap |
| 2 | meta(int) |
TIntObjectMap |
| 3 | — | AspectList |
即:物品 → 物品的每个 meta → 该 meta 的要素集合。
两层都不可省:Item 不含 meta,只用 Item 做键会把不同 meta 的要素混在一起。
createCache()
第 34 行 public ConcurrentMap<Item, TIntObjectMap<AspectList>> createCache()
—— 实现父类 FlushableCache.createCache() 的抽象方法。
按父类约定,getCache() 在缓存禁用时不应创建实例。
写入拦截
该 Map 由 GetObjectTags.newReplacementObjectTagsMap() 返回的
InterceptingConcurrentHashMap 承接写入,每次 put 触发变更追踪
(见 ObjectTags 模块)。
相关条目
源码
src/main/java/net/glease/tc4tweak/modules/objectTag/ObjectTagsCache.java