package com.deepnighttwo.nettylearn.test.handler;
import org.jboss.netty.buffer.ChannelBuffers;
import org.jboss.netty.channel.Channel;
import org.jboss.netty.channel.ChannelHandlerContext;
import org.jboss.netty.handler.codec.oneone.OneToOneEncoder;
public class String2NumEncoder extends OneToOneEncoder {
public static final String2NumEncoder INSTANCE = new String2NumEncoder();
private String2NumEncoder() {
}
@Override
protected Object encode(ChannelHandlerContext ctx, Channel channel, Object msg)
throws Exception {
if ((msg instanceof String) == false) {
return msg;
}
String str = (String) msg;
StringBuilder str2ascii = new StringBuilder(str.length() * 6 + 5);
int len = str.length();
for (int i = 0; i < len; i++) {
str2ascii.append(' ');
char ch2int = str.charAt(i);
str2ascii.append(ch2int);
str2ascii.append(':');
str2ascii.append(String.valueOf((int) ch2int));
}
return ChannelBuffers.copiedBuffer(str2ascii.toString().getBytes());
}
}