JsonRpcNotificationService.java
net.minecraft.server.jsonrpc.JsonRpcNotificationService
信息
- 全限定名:net.minecraft.server.jsonrpc.JsonRpcNotificationService
- 类型:public class
- 包:net.minecraft.server.jsonrpc
- 源码路径:src/main/java/net/minecraft/server/jsonrpc/JsonRpcNotificationService.java
- 起始行号:L19
- 实现:NotificationService
- 职责:
TODO
字段/常量
-
managementServer- 类型:
ManagementServer - 修饰符:
private final - 源码定位:
L20 - 说明:
TODO
- 类型:
-
minecraftApi- 类型:
MinecraftApi - 修饰符:
private final - 源码定位:
L21 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public JsonRpcNotificationService(MinecraftApi minecraftApi, ManagementServer managementServer) @ L23
- 构造器名:JsonRpcNotificationService
- 源码定位:L23
- 修饰符:public
参数:
- minecraftApi: MinecraftApi
- managementServer: ManagementServer
说明:
TODO
方法
下面的方法块按源码顺序生成。
public void playerJoined(ServerPlayer player) @ L28
- 方法名:playerJoined
- 源码定位:L28
- 返回类型:void
- 修饰符:public
参数:
- player: ServerPlayer
说明:
TODO
public void playerLeft(ServerPlayer player) @ L33
- 方法名:playerLeft
- 源码定位:L33
- 返回类型:void
- 修饰符:public
参数:
- player: ServerPlayer
说明:
TODO
public void serverStarted() @ L38
- 方法名:serverStarted
- 源码定位:L38
- 返回类型:void
- 修饰符:public
参数:
- 无
说明:
TODO
public void serverShuttingDown() @ L43
- 方法名:serverShuttingDown
- 源码定位:L43
- 返回类型:void
- 修饰符:public
参数:
- 无
说明:
TODO
public void serverSaveStarted() @ L48
- 方法名:serverSaveStarted
- 源码定位:L48
- 返回类型:void
- 修饰符:public
参数:
- 无
说明:
TODO
public void serverSaveCompleted() @ L53
- 方法名:serverSaveCompleted
- 源码定位:L53
- 返回类型:void
- 修饰符:public
参数:
- 无
说明:
TODO
public void serverActivityOccured() @ L58
- 方法名:serverActivityOccured
- 源码定位:L58
- 返回类型:void
- 修饰符:public
参数:
- 无
说明:
TODO
public void playerOped(ServerOpListEntry operator) @ L63
- 方法名:playerOped
- 源码定位:L63
- 返回类型:void
- 修饰符:public
参数:
- operator: ServerOpListEntry
说明:
TODO
public void playerDeoped(ServerOpListEntry operator) @ L68
- 方法名:playerDeoped
- 源码定位:L68
- 返回类型:void
- 修饰符:public
参数:
- operator: ServerOpListEntry
说明:
TODO
public void playerAddedToAllowlist(NameAndId player) @ L73
- 方法名:playerAddedToAllowlist
- 源码定位:L73
- 返回类型:void
- 修饰符:public
参数:
- player: NameAndId
说明:
TODO
public void playerRemovedFromAllowlist(NameAndId player) @ L78
- 方法名:playerRemovedFromAllowlist
- 源码定位:L78
- 返回类型:void
- 修饰符:public
参数:
- player: NameAndId
说明:
TODO
public void ipBanned(IpBanListEntry ban) @ L83
- 方法名:ipBanned
- 源码定位:L83
- 返回类型:void
- 修饰符:public
参数:
- ban: IpBanListEntry
说明:
TODO
public void ipUnbanned(String ip) @ L88
- 方法名:ipUnbanned
- 源码定位:L88
- 返回类型:void
- 修饰符:public
参数:
- ip: String
说明:
TODO
public void playerBanned(UserBanListEntry ban) @ L93
- 方法名:playerBanned
- 源码定位:L93
- 返回类型:void
- 修饰符:public
参数:
- ban: UserBanListEntry
说明:
TODO
public void playerUnbanned(NameAndId player) @ L98
- 方法名:playerUnbanned
- 源码定位:L98
- 返回类型:void
- 修饰符:public
参数:
- player: NameAndId
说明:
TODO
public <T> void onGameRuleChanged(GameRule<T> gameRule, T value) @ L103
- 方法名:onGameRuleChanged
- 源码定位:L103
- 返回类型:
void - 修饰符:public
参数:
- gameRule: GameRule
- value: T
说明:
TODO
public void statusHeartbeat() @ L108
- 方法名:statusHeartbeat
- 源码定位:L108
- 返回类型:void
- 修饰符:public
参数:
- 无
说明:
TODO
private void broadcastNotification(Holder.Reference<?extends OutgoingRpcMethod<Void,?>> method) @ L113
- 方法名:broadcastNotification
- 源码定位:L113
- 返回类型:void
- 修饰符:private
参数:
- method: Holder.Reference>
说明:
TODO
private <Params> void broadcastNotification(Holder.Reference<?extends OutgoingRpcMethod<Params,?>> method, Params params) @ L117
- 方法名:broadcastNotification
- 源码定位:L117
- 返回类型:
void - 修饰符:private
参数:
- method: Holder.Reference>
- params: Params
说明:
TODO
代码
public class JsonRpcNotificationService implements NotificationService {
private final ManagementServer managementServer;
private final MinecraftApi minecraftApi;
public JsonRpcNotificationService(MinecraftApi minecraftApi, ManagementServer managementServer) {
this.minecraftApi = minecraftApi;
this.managementServer = managementServer;
}
@Override
public void playerJoined(ServerPlayer player) {
this.broadcastNotification(OutgoingRpcMethods.PLAYER_JOINED, PlayerDto.from(player));
}
@Override
public void playerLeft(ServerPlayer player) {
this.broadcastNotification(OutgoingRpcMethods.PLAYER_LEFT, PlayerDto.from(player));
}
@Override
public void serverStarted() {
this.broadcastNotification(OutgoingRpcMethods.SERVER_STARTED);
}
@Override
public void serverShuttingDown() {
this.broadcastNotification(OutgoingRpcMethods.SERVER_SHUTTING_DOWN);
}
@Override
public void serverSaveStarted() {
this.broadcastNotification(OutgoingRpcMethods.SERVER_SAVE_STARTED);
}
@Override
public void serverSaveCompleted() {
this.broadcastNotification(OutgoingRpcMethods.SERVER_SAVE_COMPLETED);
}
@Override
public void serverActivityOccured() {
this.broadcastNotification(OutgoingRpcMethods.SERVER_ACTIVITY_OCCURRED);
}
@Override
public void playerOped(ServerOpListEntry operator) {
this.broadcastNotification(OutgoingRpcMethods.PLAYER_OPED, OperatorService.OperatorDto.from(operator));
}
@Override
public void playerDeoped(ServerOpListEntry operator) {
this.broadcastNotification(OutgoingRpcMethods.PLAYER_DEOPED, OperatorService.OperatorDto.from(operator));
}
@Override
public void playerAddedToAllowlist(NameAndId player) {
this.broadcastNotification(OutgoingRpcMethods.PLAYER_ADDED_TO_ALLOWLIST, PlayerDto.from(player));
}
@Override
public void playerRemovedFromAllowlist(NameAndId player) {
this.broadcastNotification(OutgoingRpcMethods.PLAYER_REMOVED_FROM_ALLOWLIST, PlayerDto.from(player));
}
@Override
public void ipBanned(IpBanListEntry ban) {
this.broadcastNotification(OutgoingRpcMethods.IP_BANNED, IpBanlistService.IpBanDto.from(ban));
}
@Override
public void ipUnbanned(String ip) {
this.broadcastNotification(OutgoingRpcMethods.IP_UNBANNED, ip);
}
@Override
public void playerBanned(UserBanListEntry ban) {
this.broadcastNotification(OutgoingRpcMethods.PLAYER_BANNED, BanlistService.UserBanDto.from(ban));
}
@Override
public void playerUnbanned(NameAndId player) {
this.broadcastNotification(OutgoingRpcMethods.PLAYER_UNBANNED, PlayerDto.from(player));
}
@Override
public <T> void onGameRuleChanged(GameRule<T> gameRule, T value) {
this.broadcastNotification(OutgoingRpcMethods.GAMERULE_CHANGED, GameRulesService.getTypedRule(this.minecraftApi, gameRule, value));
}
@Override
public void statusHeartbeat() {
this.broadcastNotification(OutgoingRpcMethods.STATUS_HEARTBEAT, ServerStateService.status(this.minecraftApi));
}
private void broadcastNotification(Holder.Reference<? extends OutgoingRpcMethod<Void, ?>> method) {
this.managementServer.forEachConnection(connection -> connection.sendNotification(method));
}
private <Params> void broadcastNotification(Holder.Reference<? extends OutgoingRpcMethod<Params, ?>> method, Params params) {
this.managementServer.forEachConnection(connection -> connection.sendNotification(method, params));
}
}引用的其他类
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数/返回值
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
PlayerDto.from()
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
BanlistService.UserBanDto.from()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
GameRulesService.getTypedRule()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
IpBanlistService.IpBanDto.from()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
OperatorService.OperatorDto.from()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
ServerStateService.status()
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
实现
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数
- 引用位置: