Quy D X Nguyen
06/06/2020, 7:18 PMException in thread "main" java.lang.NoSuchFieldError: burstLimiter
at mdnet.base.Netty$toServer$1$start$$inlined$apply$lambda$1.<init>(Netty.kt:91)
at mdnet.base.Netty$toServer$1.start(Netty.kt:89)
at mdnet.base.Client.runLoop(MangadexClient.java:59)
at mdnet.base.Client.main(MangadexClient.java:190)
Code (without the anonymous object for BurstLimiter) it works fine:
.childHandler(object : ChannelInitializer<SocketChannel>() {
private val counter = ConnectionCounter()
private val burstLimiter = object: GlobalTrafficShapingHandler(
workerGroup, 1024 * clientSettings.maxBurstRateKibPerSecond, 0, 50) {
override fun doAccounting(counter: TrafficCounter) {
stats.get().bytesSent.getAndAdd(counter.cumulativeWrittenBytes())
}
}
public override fun initChannel(ch: SocketChannel) {
ch.pipeline().addLast("ssl", OptionalSslHandler(sslContext))
ch.pipeline().addLast("codec", HttpServerCodec())
ch.pipeline().addLast("counter", counter)
ch.pipeline().addLast("aggregator", HttpObjectAggregator(65536))
ch.pipeline().addLast("burstLimiter", this.burstLimiter)
ch.pipeline().addLast("streamer", ChunkedWriteHandler())
ch.pipeline().addLast("handler", Http4kChannelHandler(httpHandler))
}
})