Java
RuleManager
管理与特定类型关联的规则,提供获取和管理该类型规则的方法。
RuleManager 设计为线程安全,允许并发访问和修改规则而无需外部同步。
内部使用 ConcurrentMap 存储不同类型对应的 RuleManager 实例,
使用 CopyOnWriteArrayList 存储每个类型的规则列表,确保修改规则时不影响并发读取。
- Type class (final class)
- Package:
com.euonia.osba.rules - Author: damon(zhaorong@outlook.com)
Methods¶
getRules(): List<Rule>¶
获取当前类型对应的规则列表。
Returns: List<Rule> — 规则列表
isInitialized(): boolean¶
判断当前 RuleManager 是否已完成初始化。此属性可用于确定规则是否已设置完毕并准备就绪。
Returns: boolean — 若已初始化则返回 true,否则返回 false
setInitialized(boolean initialized): void¶
设置当前 RuleManager 的初始化状态。可在为关联类型添加完规则后调用此方法将 RuleManager 标记为已初始化。
Parameters:
- initialized (boolean): true 表示已初始化,false 表示未初始化
Static Methods¶
getRules(Class<?> type): RuleManager¶
获取与指定类型关联的 RuleManager 实例。若该类型尚无对应的 RuleManager,则创建新实例并存入映射。
Parameters:
- type (Class<?>): 要获取其 RuleManager 的类类型
Returns: RuleManager — 与指定类型关联的 RuleManager 实例
cleanRules(Class<?> type): void¶
移除与指定类型关联的 RuleManager,相当于清除该类型的所有规则。
Parameters:
- type (Class<?>): 要清除规则的类类型