DedicatedPlayerList.java

net.minecraft.server.dedicated.DedicatedPlayerList

信息

  • 全限定名:net.minecraft.server.dedicated.DedicatedPlayerList
  • 类型:public class
  • 包:net.minecraft.server.dedicated
  • 源码路径:src/main/java/net/minecraft/server/dedicated/DedicatedPlayerList.java
  • 起始行号:L12
  • 继承:PlayerList
  • 职责:

    TODO

字段/常量

  • LOGGER
    • 类型: Logger
    • 修饰符: private static final
    • 源码定位: L13
    • 说明:

      TODO

内部类/嵌套类型

构造器

public DedicatedPlayerList(DedicatedServer server, LayeredRegistryAccess<RegistryLayer> registries, PlayerDataStorage playerDataStorage) @ L15

  • 构造器名:DedicatedPlayerList
  • 源码定位:L15
  • 修饰符:public

参数:

  • server: DedicatedServer
  • registries: LayeredRegistryAccess
  • playerDataStorage: PlayerDataStorage

说明:

TODO

方法

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

public void reloadWhiteList() @ L31

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

参数:

说明:

TODO

private void saveIpBanList() @ L36

  • 方法名:saveIpBanList
  • 源码定位:L36
  • 返回类型:void
  • 修饰符:private

参数:

说明:

TODO

private void saveUserBanList() @ L44

  • 方法名:saveUserBanList
  • 源码定位:L44
  • 返回类型:void
  • 修饰符:private

参数:

说明:

TODO

private void loadIpBanList() @ L52

  • 方法名:loadIpBanList
  • 源码定位:L52
  • 返回类型:void
  • 修饰符:private

参数:

说明:

TODO

private void loadUserBanList() @ L60

  • 方法名:loadUserBanList
  • 源码定位:L60
  • 返回类型:void
  • 修饰符:private

参数:

说明:

TODO

private void loadOps() @ L68

  • 方法名:loadOps
  • 源码定位:L68
  • 返回类型:void
  • 修饰符:private

参数:

说明:

TODO

private void saveOps() @ L76

  • 方法名:saveOps
  • 源码定位:L76
  • 返回类型:void
  • 修饰符:private

参数:

说明:

TODO

private void loadWhiteList() @ L84

  • 方法名:loadWhiteList
  • 源码定位:L84
  • 返回类型:void
  • 修饰符:private

参数:

说明:

TODO

private void saveWhiteList() @ L92

  • 方法名:saveWhiteList
  • 源码定位:L92
  • 返回类型:void
  • 修饰符:private

参数:

说明:

TODO

public boolean isWhiteListed(NameAndId nameAndId) @ L100

  • 方法名:isWhiteListed
  • 源码定位:L100
  • 返回类型:boolean
  • 修饰符:public

参数:

  • nameAndId: NameAndId

说明:

TODO

public DedicatedServer getServer() @ L105

  • 方法名:getServer
  • 源码定位:L105
  • 返回类型:DedicatedServer
  • 修饰符:public

参数:

说明:

TODO

public boolean canBypassPlayerLimit(NameAndId nameAndId) @ L109

  • 方法名:canBypassPlayerLimit
  • 源码定位:L109
  • 返回类型:boolean
  • 修饰符:public

参数:

  • nameAndId: NameAndId

说明:

TODO

代码

public class DedicatedPlayerList extends PlayerList {
    private static final Logger LOGGER = LogUtils.getLogger();
 
    public DedicatedPlayerList(DedicatedServer server, LayeredRegistryAccess<RegistryLayer> registries, PlayerDataStorage playerDataStorage) {
        super(server, registries, playerDataStorage, server.notificationManager());
        this.setViewDistance(server.viewDistance());
        this.setSimulationDistance(server.simulationDistance());
        this.loadUserBanList();
        this.saveUserBanList();
        this.loadIpBanList();
        this.saveIpBanList();
        this.loadOps();
        this.loadWhiteList();
        this.saveOps();
        if (!this.getWhiteList().getFile().exists()) {
            this.saveWhiteList();
        }
    }
 
    @Override
    public void reloadWhiteList() {
        this.loadWhiteList();
    }
 
    private void saveIpBanList() {
        try {
            this.getIpBans().save();
        } catch (IOException var2) {
            LOGGER.warn("Failed to save ip banlist: ", (Throwable)var2);
        }
    }
 
    private void saveUserBanList() {
        try {
            this.getBans().save();
        } catch (IOException var2) {
            LOGGER.warn("Failed to save user banlist: ", (Throwable)var2);
        }
    }
 
    private void loadIpBanList() {
        try {
            this.getIpBans().load();
        } catch (IOException var2) {
            LOGGER.warn("Failed to load ip banlist: ", (Throwable)var2);
        }
    }
 
    private void loadUserBanList() {
        try {
            this.getBans().load();
        } catch (IOException var2) {
            LOGGER.warn("Failed to load user banlist: ", (Throwable)var2);
        }
    }
 
    private void loadOps() {
        try {
            this.getOps().load();
        } catch (Exception var2) {
            LOGGER.warn("Failed to load operators list: ", (Throwable)var2);
        }
    }
 
    private void saveOps() {
        try {
            this.getOps().save();
        } catch (Exception var2) {
            LOGGER.warn("Failed to save operators list: ", (Throwable)var2);
        }
    }
 
    private void loadWhiteList() {
        try {
            this.getWhiteList().load();
        } catch (Exception var2) {
            LOGGER.warn("Failed to load white-list: ", (Throwable)var2);
        }
    }
 
    private void saveWhiteList() {
        try {
            this.getWhiteList().save();
        } catch (Exception var2) {
            LOGGER.warn("Failed to save white-list: ", (Throwable)var2);
        }
    }
 
    @Override
    public boolean isWhiteListed(NameAndId nameAndId) {
        return !this.isUsingWhitelist() || this.isOp(nameAndId) || this.getWhiteList().isWhiteListed(nameAndId);
    }
 
    public DedicatedServer getServer() {
        return (DedicatedServer)super.getServer();
    }
 
    @Override
    public boolean canBypassPlayerLimit(NameAndId nameAndId) {
        return this.getOps().canBypassPlayerLimit(nameAndId);
    }
}

引用的其他类