LoginDecoderService

The service behind decoding login blocks. This is needed as the login blocks take a noticeable amount of time to decode, and it may not be ideal to block the Netty threads from doing any work during that time. Most of the time is taken up by the RSA deciphering, which can take around a millisecond for a secure key.

Inheritors

Functions

Link copied to clipboard
abstract fun <Result> decode(buffer: JagByteBuf, betaWorld: Boolean, decoder: LoginBlockDecodingFunction<Result>): CompletableFuture<LoginBlock<Result>>

Decodes a login block buffer using the decoder implementation. The default implementation for login decoder utilizes a ForkJoinPool.