LevelBasedPermissionSet.java
net.minecraft.server.permissions.LevelBasedPermissionSet
信息
- 全限定名:net.minecraft.server.permissions.LevelBasedPermissionSet
- 类型:public interface
- 包:net.minecraft.server.permissions
- 源码路径:src/main/java/net/minecraft/server/permissions/LevelBasedPermissionSet.java
- 起始行号:L3
- 继承:PermissionSet
- 职责:
TODO
字段/常量
-
ALL- 类型:
LevelBasedPermissionSet - 修饰符:
package-private - 源码定位:
L4 - 说明:
TODO
- 类型:
-
MODERATOR- 类型:
LevelBasedPermissionSet - 修饰符:
package-private - 源码定位:
L6 - 说明:
TODO
- 类型:
-
GAMEMASTER- 类型:
LevelBasedPermissionSet - 修饰符:
package-private - 源码定位:
L7 - 说明:
TODO
- 类型:
-
ADMIN- 类型:
LevelBasedPermissionSet - 修饰符:
package-private - 源码定位:
L8 - 说明:
TODO
- 类型:
-
OWNER- 类型:
LevelBasedPermissionSet - 修饰符:
package-private - 源码定位:
L9 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
- 无
方法
下面的方法块按源码顺序生成。
PermissionLevel level() @ L11
- 方法名:level
- 源码定位:L11
- 返回类型:PermissionLevel
- 修饰符:package-private
参数:
- 无
说明:
TODO
default boolean hasPermission(Permission permission) @ L13
- 方法名:hasPermission
- 源码定位:L13
- 返回类型:boolean
- 修饰符:default
参数:
- permission: Permission
说明:
TODO
default PermissionSet union(PermissionSet other) @ L22
- 方法名:union
- 源码定位:L22
- 返回类型:PermissionSet
- 修饰符:default
参数:
- other: PermissionSet
说明:
TODO
static LevelBasedPermissionSet forLevel(PermissionLevel level) @ L31
- 方法名:forLevel
- 源码定位:L31
- 返回类型:LevelBasedPermissionSet
- 修饰符:static
参数:
- level: PermissionLevel
说明:
TODO
private static LevelBasedPermissionSet create(PermissionLevel level) @ L41
- 方法名:create
- 源码定位:L41
- 返回类型:LevelBasedPermissionSet
- 修饰符:private static
参数:
- level: PermissionLevel
说明:
TODO
代码
public interface LevelBasedPermissionSet extends PermissionSet {
@Deprecated
LevelBasedPermissionSet ALL = create(PermissionLevel.ALL);
LevelBasedPermissionSet MODERATOR = create(PermissionLevel.MODERATORS);
LevelBasedPermissionSet GAMEMASTER = create(PermissionLevel.GAMEMASTERS);
LevelBasedPermissionSet ADMIN = create(PermissionLevel.ADMINS);
LevelBasedPermissionSet OWNER = create(PermissionLevel.OWNERS);
PermissionLevel level();
@Override
default boolean hasPermission(Permission permission) {
if (permission instanceof Permission.HasCommandLevel levelCheck) {
return this.level().isEqualOrHigherThan(levelCheck.level());
} else {
return permission.equals(Permissions.COMMANDS_ENTITY_SELECTORS) ? this.level().isEqualOrHigherThan(PermissionLevel.GAMEMASTERS) : false;
}
}
@Override
default PermissionSet union(PermissionSet other) {
if (other instanceof LevelBasedPermissionSet otherSet) {
return this.level().isEqualOrHigherThan(otherSet.level()) ? otherSet : this;
} else {
return PermissionSet.super.union(other);
}
}
static LevelBasedPermissionSet forLevel(PermissionLevel level) {
return switch (level) {
case ALL -> ALL;
case MODERATORS -> MODERATOR;
case GAMEMASTERS -> GAMEMASTER;
case ADMINS -> ADMIN;
case OWNERS -> OWNER;
};
}
private static LevelBasedPermissionSet create(PermissionLevel level) {
return new LevelBasedPermissionSet() {
@Override
public PermissionLevel level() {
return level;
}
@Override
public String toString() {
return "permission level: " + level.name();
}
};
}
}引用的其他类
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数/返回值
- 引用位置:
-
- 引用位置:
参数/继承/返回值
- 引用位置: