我必须在 netty 通道上发送不同类型的消息,并且在发送之前对这些消息进行编码。我OneToOneEncoder
在 netty 通道中注册了多个 s,每个都encode
应该作用于单一类型的消息。我检查味精的类型,如果它是正确类型的编码器进行编码,或者如果它不是特定类型(编码器的),则返回味精(不进行转换)。这是一种有效的设计方法吗?
我面临的问题是:有时这会导致各种下游异常(在解码器中),例如 IndexOutOfBounds。
更困难的是,有时它可以正常工作。我确信在编码/解码中有些东西搞砸了。到底是什么让我难以捉摸。这里有什么明显的错误吗?
编辑:我的问题是关于一般设计方法..如果这是正确的,那么我可以自己解决代码中的错误..