MinecraftPlayerListServiceImpl.java
net.minecraft.server.jsonrpc.internalapi.MinecraftPlayerListServiceImpl
信息
- 全限定名:net.minecraft.server.jsonrpc.internalapi.MinecraftPlayerListServiceImpl
- 类型:public class
- 包:net.minecraft.server.jsonrpc.internalapi
- 源码路径:src/main/java/net/minecraft/server/jsonrpc/internalapi/MinecraftPlayerListServiceImpl.java
- 起始行号:L13
- 实现:MinecraftPlayerListService
- 职责:
TODO
字段/常量
-
jsonRpcLogger- 类型:
JsonRpcLogger - 修饰符:
private final - 源码定位:
L14 - 说明:
TODO
- 类型:
-
server- 类型:
DedicatedServer - 修饰符:
private final - 源码定位:
L15 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public MinecraftPlayerListServiceImpl(DedicatedServer server, JsonRpcLogger jsonRpcLogger) @ L17
- 构造器名:MinecraftPlayerListServiceImpl
- 源码定位:L17
- 修饰符:public
参数:
- server: DedicatedServer
- jsonRpcLogger: JsonRpcLogger
说明:
TODO
方法
下面的方法块按源码顺序生成。
public List<ServerPlayer> getPlayers() @ L22
- 方法名:getPlayers
- 源码定位:L22
- 返回类型:List
- 修饰符:public
参数:
- 无
说明:
TODO
public ServerPlayer getPlayer(UUID uuid) @ L27
- 方法名:getPlayer
- 源码定位:L27
- 返回类型:ServerPlayer
- 修饰符:public
参数:
- uuid: UUID
说明:
TODO
public Optional<NameAndId> fetchUserByName(String name) @ L32
- 方法名:fetchUserByName
- 源码定位:L32
- 返回类型:Optional
- 修饰符:public
参数:
- name: String
说明:
TODO
public Optional<NameAndId> fetchUserById(UUID id) @ L37
- 方法名:fetchUserById
- 源码定位:L37
- 返回类型:Optional
- 修饰符:public
参数:
- id: UUID
说明:
TODO
public Optional<NameAndId> getCachedUserById(UUID id) @ L42
- 方法名:getCachedUserById
- 源码定位:L42
- 返回类型:Optional
- 修饰符:public
参数:
- id: UUID
说明:
TODO
public Optional<ServerPlayer> getPlayer(Optional<UUID> id, Optional<String> name) @ L47
- 方法名:getPlayer
- 源码定位:L47
- 返回类型:Optional
- 修饰符:public
参数:
- id: Optional
- name: Optional
说明:
TODO
public List<ServerPlayer> getPlayersWithAddress(String ip) @ L56
- 方法名:getPlayersWithAddress
- 源码定位:L56
- 返回类型:List
- 修饰符:public
参数:
- ip: String
说明:
TODO
public void remove(ServerPlayer serverPlayer, ClientInfo clientInfo) @ L61
- 方法名:remove
- 源码定位:L61
- 返回类型:void
- 修饰符:public
参数:
- serverPlayer: ServerPlayer
- clientInfo: ClientInfo
说明:
TODO
public ServerPlayer getPlayerByName(String name) @ L67
- 方法名:getPlayerByName
- 源码定位:L67
- 返回类型:ServerPlayer
- 修饰符:public
参数:
- name: String
说明:
TODO
代码
public class MinecraftPlayerListServiceImpl implements MinecraftPlayerListService {
private final JsonRpcLogger jsonRpcLogger;
private final DedicatedServer server;
public MinecraftPlayerListServiceImpl(DedicatedServer server, JsonRpcLogger jsonRpcLogger) {
this.jsonRpcLogger = jsonRpcLogger;
this.server = server;
}
@Override
public List<ServerPlayer> getPlayers() {
return this.server.getPlayerList().getPlayers();
}
@Override
public @Nullable ServerPlayer getPlayer(UUID uuid) {
return this.server.getPlayerList().getPlayer(uuid);
}
@Override
public Optional<NameAndId> fetchUserByName(String name) {
return this.server.services().nameToIdCache().get(name);
}
@Override
public Optional<NameAndId> fetchUserById(UUID id) {
return Optional.ofNullable(this.server.services().sessionService().fetchProfile(id, true)).map(profile -> new NameAndId(profile.profile()));
}
@Override
public Optional<NameAndId> getCachedUserById(UUID id) {
return this.server.services().nameToIdCache().get(id);
}
@Override
public Optional<ServerPlayer> getPlayer(Optional<UUID> id, Optional<String> name) {
if (id.isPresent()) {
return Optional.ofNullable(this.server.getPlayerList().getPlayer(id.get()));
} else {
return name.isPresent() ? Optional.ofNullable(this.server.getPlayerList().getPlayerByName(name.get())) : Optional.empty();
}
}
@Override
public List<ServerPlayer> getPlayersWithAddress(String ip) {
return this.server.getPlayerList().getPlayersWithAddress(ip);
}
@Override
public void remove(ServerPlayer serverPlayer, ClientInfo clientInfo) {
this.server.getPlayerList().remove(serverPlayer);
this.jsonRpcLogger.log(clientInfo, "Remove player '{}'", serverPlayer.getPlainTextName());
}
@Override
public @Nullable ServerPlayer getPlayerByName(String name) {
return this.server.getPlayerList().getPlayerByName(name);
}
}引用的其他类
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
实现
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数/返回值
- 引用位置:
-
- 引用位置:
构造调用/返回值 - 关联成员:
NameAndId()
- 引用位置: