org.jboss.netty.handler.codec.protobuf
类 ProtobufEncoder
java.lang.Object
org.jboss.netty.handler.codec.oneone.OneToOneEncoder
org.jboss.netty.handler.codec.protobuf.ProtobufEncoder
- 所有已实现的接口:
- ChannelDownstreamHandler, ChannelHandler
@ChannelHandler.Sharable
public class ProtobufEncoder
- extends OneToOneEncoder
Encodes the requested Google
Protocol Buffers Message
and MessageLite
into a
ChannelBuffer
. A typical setup for TCP/IP would be:
ChannelPipeline
pipeline = ...;
// Decoders
pipeline.addLast("frameDecoder",
new LengthFieldBasedFrameDecoder
(1048576, 0, 4, 0, 4));
pipeline.addLast("protobufDecoder",
new ProtobufDecoder
(MyMessage.getDefaultInstance()));
// Encoder
pipeline.addLast("frameEncoder", new LengthFieldPrepender
(4));
pipeline.addLast("protobufEncoder", new ProtobufEncoder
());
and then you can use a MyMessage
instead of a ChannelBuffer
as a message:
void messageReceived(ChannelHandlerContext
ctx, MessageEvent
e) {
MyMessage req = (MyMessage) e.getMessage();
MyMessage res = MyMessage.newBuilder().setText(
"Did you say '" + req.getText() + "'?").build();
ch.write(res);
}
从类 java.lang.Object 继承的方法 |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ProtobufEncoder
public ProtobufEncoder()
- Creates a new instance.