RemoteChatSession.java
net.minecraft.network.chat.RemoteChatSession
信息
- 全限定名:net.minecraft.network.chat.RemoteChatSession
- 类型:public record
- 包:net.minecraft.network.chat
- 源码路径:src/main/java/net/minecraft/network/chat/RemoteChatSession.java
- 起始行号:L10
- 职责:
TODO
字段/常量
- 无
内部类/嵌套类型
net.minecraft.network.chat.RemoteChatSession.Data- 类型:
record - 修饰符:
public - 源码定位:
L27 - 说明:
TODO
- 类型:
构造器
- 无
方法
下面的方法块按源码顺序生成。
public SignedMessageValidator createMessageValidator(Duration gracePeriod) @ L11
- 方法名:createMessageValidator
- 源码定位:L11
- 返回类型:SignedMessageValidator
- 修饰符:public
参数:
- gracePeriod: Duration
说明:
TODO
public SignedMessageChain.Decoder createMessageDecoder(UUID profileId) @ L15
- 方法名:createMessageDecoder
- 源码定位:L15
- 返回类型:SignedMessageChain.Decoder
- 修饰符:public
参数:
- profileId: UUID
说明:
TODO
public RemoteChatSession.Data asData() @ L19
- 方法名:asData
- 源码定位:L19
- 返回类型:RemoteChatSession.Data
- 修饰符:public
参数:
- 无
说明:
TODO
public boolean hasExpired() @ L23
- 方法名:hasExpired
- 源码定位:L23
- 返回类型:boolean
- 修饰符:public
参数:
- 无
说明:
TODO
代码
public record RemoteChatSession(UUID sessionId, ProfilePublicKey profilePublicKey) {
public SignedMessageValidator createMessageValidator(Duration gracePeriod) {
return new SignedMessageValidator.KeyBased(this.profilePublicKey.createSignatureValidator(), () -> this.profilePublicKey.data().hasExpired(gracePeriod));
}
public SignedMessageChain.Decoder createMessageDecoder(UUID profileId) {
return new SignedMessageChain(profileId, this.sessionId).decoder(this.profilePublicKey);
}
public RemoteChatSession.Data asData() {
return new RemoteChatSession.Data(this.sessionId, this.profilePublicKey.data());
}
public boolean hasExpired() {
return this.profilePublicKey.data().hasExpired();
}
public record Data(UUID sessionId, ProfilePublicKey.Data profilePublicKey) {
public static RemoteChatSession.Data read(FriendlyByteBuf input) {
return new RemoteChatSession.Data(input.readUUID(), new ProfilePublicKey.Data(input));
}
public static void write(FriendlyByteBuf output, RemoteChatSession.Data data) {
output.writeUUID(data.sessionId);
data.profilePublicKey.write(output);
}
public RemoteChatSession validate(GameProfile profile, SignatureValidator serviceSignatureValidator) throws ProfilePublicKey.ValidationException {
return new RemoteChatSession(this.sessionId, ProfilePublicKey.createValidated(serviceSignatureValidator, profile.id(), this.profilePublicKey));
}
}
}引用的其他类
-
- 引用位置:
构造调用/返回值 - 关联成员:
SignedMessageChain()
- 引用位置:
-
- 引用位置:
方法调用/构造调用/返回值 - 关联成员:
KeyBased(), SignedMessageValidator.KeyBased()
- 引用位置:
-
- 引用位置:
方法调用/构造调用 - 关联成员:
Data(), ProfilePublicKey.Data(), ProfilePublicKey.createValidated()
- 引用位置: