MinecraftOperatorListServiceImpl.java

net.minecraft.server.jsonrpc.internalapi.MinecraftOperatorListServiceImpl

信息

  • 全限定名:net.minecraft.server.jsonrpc.internalapi.MinecraftOperatorListServiceImpl
  • 类型:public class
  • 包:net.minecraft.server.jsonrpc.internalapi
  • 源码路径:src/main/java/net/minecraft/server/jsonrpc/internalapi/MinecraftOperatorListServiceImpl.java
  • 起始行号:L13
  • 实现:MinecraftOperatorListService
  • 职责:

    TODO

字段/常量

  • minecraftServer

    • 类型: MinecraftServer
    • 修饰符: private final
    • 源码定位: L14
    • 说明:

      TODO

  • jsonrpcLogger

    • 类型: JsonRpcLogger
    • 修饰符: private final
    • 源码定位: L15
    • 说明:

      TODO

内部类/嵌套类型

构造器

public MinecraftOperatorListServiceImpl(MinecraftServer minecraftServer, JsonRpcLogger jsonrpcLogger) @ L17

  • 构造器名:MinecraftOperatorListServiceImpl
  • 源码定位:L17
  • 修饰符:public

参数:

  • minecraftServer: MinecraftServer
  • jsonrpcLogger: JsonRpcLogger

说明:

TODO

方法

下面的方法块按源码顺序生成。

public Collection<ServerOpListEntry> getEntries() @ L22

  • 方法名:getEntries
  • 源码定位:L22
  • 返回类型:Collection
  • 修饰符:public

参数:

说明:

TODO

public void op(NameAndId nameAndId, Optional<PermissionLevel> permissionLevel, Optional<Boolean> canBypassPlayerLimit, ClientInfo clientInfo) @ L27

  • 方法名:op
  • 源码定位:L27
  • 返回类型:void
  • 修饰符:public

参数:

  • nameAndId: NameAndId
  • permissionLevel: Optional
  • canBypassPlayerLimit: Optional
  • clientInfo: ClientInfo

说明:

TODO

public void op(NameAndId nameAndId, ClientInfo clientInfo) @ L33

  • 方法名:op
  • 源码定位:L33
  • 返回类型:void
  • 修饰符:public

参数:

  • nameAndId: NameAndId
  • clientInfo: ClientInfo

说明:

TODO

public void deop(NameAndId nameAndId, ClientInfo clientInfo) @ L39

  • 方法名:deop
  • 源码定位:L39
  • 返回类型:void
  • 修饰符:public

参数:

  • nameAndId: NameAndId
  • clientInfo: ClientInfo

说明:

TODO

public void clear(ClientInfo clientInfo) @ L45

  • 方法名:clear
  • 源码定位:L45
  • 返回类型:void
  • 修饰符:public

参数:

  • clientInfo: ClientInfo

说明:

TODO

代码

public class MinecraftOperatorListServiceImpl implements MinecraftOperatorListService {
    private final MinecraftServer minecraftServer;
    private final JsonRpcLogger jsonrpcLogger;
 
    public MinecraftOperatorListServiceImpl(MinecraftServer minecraftServer, JsonRpcLogger jsonrpcLogger) {
        this.minecraftServer = minecraftServer;
        this.jsonrpcLogger = jsonrpcLogger;
    }
 
    @Override
    public Collection<ServerOpListEntry> getEntries() {
        return this.minecraftServer.getPlayerList().getOps().getEntries();
    }
 
    @Override
    public void op(NameAndId nameAndId, Optional<PermissionLevel> permissionLevel, Optional<Boolean> canBypassPlayerLimit, ClientInfo clientInfo) {
        this.jsonrpcLogger.log(clientInfo, "Op '{}'", nameAndId);
        this.minecraftServer.getPlayerList().op(nameAndId, permissionLevel.map(LevelBasedPermissionSet::forLevel), canBypassPlayerLimit);
    }
 
    @Override
    public void op(NameAndId nameAndId, ClientInfo clientInfo) {
        this.jsonrpcLogger.log(clientInfo, "Op '{}'", nameAndId);
        this.minecraftServer.getPlayerList().op(nameAndId);
    }
 
    @Override
    public void deop(NameAndId nameAndId, ClientInfo clientInfo) {
        this.jsonrpcLogger.log(clientInfo, "Deop '{}'", nameAndId);
        this.minecraftServer.getPlayerList().deop(nameAndId);
    }
 
    @Override
    public void clear(ClientInfo clientInfo) {
        this.jsonrpcLogger.log(clientInfo, "Clear operator list");
        this.minecraftServer.getPlayerList().getOps().clear();
    }
}

引用的其他类