Archiviert
13
0

Add some debug information to the mssing decoder/encoder exception.

Dieser Commit ist enthalten in:
Kristian S. Stangeland 2013-12-08 14:37:50 +01:00
Ursprung be95fbc430
Commit feae8dd400

Datei anzeigen

@ -188,7 +188,7 @@ class ChannelInjector extends ByteToMessageDecoder {
synchronized (networkManager) {
if (originalChannel instanceof Factory)
return false;
// Don't inject the same channel twice
if (findChannelHandler(originalChannel, ChannelInjector.class) != null) {
// Invalidate cache
@ -202,9 +202,9 @@ class ChannelInjector extends ByteToMessageDecoder {
vanillaEncoder = (MessageToByteEncoder<Object>) originalChannel.pipeline().get("encoder");
if (vanillaDecoder == null)
throw new IllegalArgumentException("Unable to find vanilla decoder.in " + originalChannel.pipeline());
throw new IllegalArgumentException("Unable to find vanilla decoder.in " + originalChannel.pipeline() + ". " + getChannelState());
if (vanillaEncoder == null)
throw new IllegalArgumentException("Unable to find vanilla encoder in " + originalChannel.pipeline());
throw new IllegalArgumentException("Unable to find vanilla encoder in " + originalChannel.pipeline() + ". " + getChannelState());
patchEncoder(vanillaEncoder);
if (DECODE_BUFFER == null)
@ -245,6 +245,10 @@ class ChannelInjector extends ByteToMessageDecoder {
}
}
private String getChannelState() {
return "Registered channel: " + originalChannel.isRegistered() + ", Active channel: " + originalChannel.isActive() + ", Open channel: " + originalChannel.isOpen();
}
/**
* Process a given message on the packet listeners.
* @param message - the message/packet.