Group (内置权限系统的组)
基本信息
| 属性 |
值 |
| 类 |
mypermissions.permission.core.entities.Group |
| 实现 |
myessentials.chat.api.IChatFormat |
| 持久化 |
Group.Serializer (Gson) → JSON GroupConfig.json |
字段
| 字段 |
类型 |
说明 |
name |
String |
组名(玩家同一时间只能有一个组) |
permsContainer |
PermissionsContainer |
该组的权限节点列表 |
metaContainer |
Meta.Container |
自定义键值对(int 值) |
parents |
Group.Container |
父组集合(继承父组权限) |
关键行为
| 方法 |
行为 |
hasPermission(String perm) |
先查 permsContainer.hasPermission;如返回 ALLOWED/DENIED 直接返回;否则遍历 parents 递归查;最终结果 NONE 表示无匹配 |
Container.get(String name) |
按组名线性查找 |
Container.contains(String) / Container.remove(String) |
同 Container 工具 |
Serializer.deserialize |
读 name、permissions[]、meta{} |
Serializer.serialize |
输出 name、permissions[]、meta{} |
继承层级
Group 之间的 parents 形成 DAG。每个玩家归到一个具体的叶子组,但查询权限时通过递归回溯 parents 合并。denies 用 -前缀 标记,在 PermissionsContainer.hasPermission 里被识别为 DENIED。
相关条目