MinecraftServerStateServiceImpl.java
net.minecraft.server.jsonrpc.internalapi.MinecraftServerStateServiceImpl
信息
- 全限定名:net.minecraft.server.jsonrpc.internalapi.MinecraftServerStateServiceImpl
- 类型:public class
- 包:net.minecraft.server.jsonrpc.internalapi
- 源码路径:src/main/java/net/minecraft/server/jsonrpc/internalapi/MinecraftServerStateServiceImpl.java
- 起始行号:L12
- 实现:MinecraftServerStateService
- 职责:
TODO
字段/常量
-
server- 类型:
DedicatedServer - 修饰符:
private final - 源码定位:
L13 - 说明:
TODO
- 类型:
-
jsonrpcLogger- 类型:
JsonRpcLogger - 修饰符:
private final - 源码定位:
L14 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public MinecraftServerStateServiceImpl(DedicatedServer server, JsonRpcLogger jsonrpcLogger) @ L16
- 构造器名:MinecraftServerStateServiceImpl
- 源码定位:L16
- 修饰符:public
参数:
- server: DedicatedServer
- jsonrpcLogger: JsonRpcLogger
说明:
TODO
方法
下面的方法块按源码顺序生成。
public boolean isReady() @ L21
- 方法名:isReady
- 源码定位:L21
- 返回类型:boolean
- 修饰符:public
参数:
- 无
说明:
TODO
public boolean saveEverything(boolean suppressLogs, boolean flush, boolean force, ClientInfo clientInfo) @ L26
- 方法名:saveEverything
- 源码定位:L26
- 返回类型:boolean
- 修饰符:public
参数:
- suppressLogs: boolean
- flush: boolean
- force: boolean
- clientInfo: ClientInfo
说明:
TODO
public void halt(boolean waitForShutdown, ClientInfo clientInfo) @ L32
- 方法名:halt
- 源码定位:L32
- 返回类型:void
- 修饰符:public
参数:
- waitForShutdown: boolean
- clientInfo: ClientInfo
说明:
TODO
public void sendSystemMessage(Component message, ClientInfo clientInfo) @ L38
- 方法名:sendSystemMessage
- 源码定位:L38
- 返回类型:void
- 修饰符:public
参数:
- message: Component
- clientInfo: ClientInfo
说明:
TODO
public void sendSystemMessage(Component message, boolean overlay, Collection<ServerPlayer> players, ClientInfo clientInfo) @ L44
- 方法名:sendSystemMessage
- 源码定位:L44
- 返回类型:void
- 修饰符:public
参数:
- message: Component
- overlay: boolean
- players: Collection
- clientInfo: ClientInfo
说明:
TODO
public void broadcastSystemMessage(Component message, boolean overlay, ClientInfo clientInfo) @ L58
- 方法名:broadcastSystemMessage
- 源码定位:L58
- 返回类型:void
- 修饰符:public
参数:
- message: Component
- overlay: boolean
- clientInfo: ClientInfo
说明:
TODO
代码
public class MinecraftServerStateServiceImpl implements MinecraftServerStateService {
private final DedicatedServer server;
private final JsonRpcLogger jsonrpcLogger;
public MinecraftServerStateServiceImpl(DedicatedServer server, JsonRpcLogger jsonrpcLogger) {
this.server = server;
this.jsonrpcLogger = jsonrpcLogger;
}
@Override
public boolean isReady() {
return this.server.isReady();
}
@Override
public boolean saveEverything(boolean suppressLogs, boolean flush, boolean force, ClientInfo clientInfo) {
this.jsonrpcLogger.log(clientInfo, "Save everything. SuppressLogs: {}, flush: {}, force: {}", suppressLogs, flush, force);
return this.server.saveEverything(suppressLogs, flush, force);
}
@Override
public void halt(boolean waitForShutdown, ClientInfo clientInfo) {
this.jsonrpcLogger.log(clientInfo, "Halt server. WaitForShutdown: {}", waitForShutdown);
this.server.halt(waitForShutdown);
}
@Override
public void sendSystemMessage(Component message, ClientInfo clientInfo) {
this.jsonrpcLogger.log(clientInfo, "Send system message: '{}'", message.getString());
this.server.sendSystemMessage(message);
}
@Override
public void sendSystemMessage(Component message, boolean overlay, Collection<ServerPlayer> players, ClientInfo clientInfo) {
List<String> playerNames = players.stream().map(Player::getPlainTextName).toList();
this.jsonrpcLogger.log(clientInfo, "Send system message to '{}' players (overlay: {}): '{}'", playerNames.size(), overlay, message.getString());
for (ServerPlayer player : players) {
if (overlay) {
player.sendOverlayMessage(message);
} else {
player.sendSystemMessage(message);
}
}
}
@Override
public void broadcastSystemMessage(Component message, boolean overlay, ClientInfo clientInfo) {
this.jsonrpcLogger.log(clientInfo, "Broadcast system message (overlay: {}): '{}'", overlay, message.getString());
for (ServerPlayer player : this.server.getPlayerList().getPlayers()) {
if (overlay) {
player.sendOverlayMessage(message);
} else {
player.sendSystemMessage(message);
}
}
}
}引用的其他类
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
实现
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数
- 引用位置: