org.openspaces.memcached.protocol.text
Class MemcachedFrameDecoder
java.lang.Object
org.jboss.netty.channel.SimpleChannelUpstreamHandler
org.jboss.netty.handler.codec.frame.FrameDecoder
org.openspaces.memcached.protocol.text.MemcachedFrameDecoder
- All Implemented Interfaces:
- org.jboss.netty.channel.ChannelHandler, org.jboss.netty.channel.ChannelUpstreamHandler
public final class MemcachedFrameDecoder
- extends org.jboss.netty.handler.codec.frame.FrameDecoder
The frame decoder is responsible for breaking the original stream up into a series of lines.
The code here is heavily based on Netty's DelimiterBasedFrameDecoder, but has been modified because the
memcached protocol has two states: 1) processing CRLF delimited lines and 2) spooling results for SET/ADD
Nested classes/interfaces inherited from interface org.jboss.netty.channel.ChannelHandler |
org.jboss.netty.channel.ChannelHandler.Sharable |
Method Summary |
protected Object |
decode(org.jboss.netty.channel.ChannelHandlerContext ctx,
org.jboss.netty.channel.Channel channel,
org.jboss.netty.buffer.ChannelBuffer buffer)
|
Methods inherited from class org.jboss.netty.handler.codec.frame.FrameDecoder |
channelClosed, channelDisconnected, decodeLast, exceptionCaught, messageReceived |
Methods inherited from class org.jboss.netty.channel.SimpleChannelUpstreamHandler |
channelBound, channelConnected, channelInterestChanged, channelOpen, channelUnbound, childChannelClosed, childChannelOpen, handleUpstream, writeComplete |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MemcachedFrameDecoder
public MemcachedFrameDecoder(SessionStatus status,
int maxFrameLength)
- Creates a new instance.
- Parameters:
status
- session status instance for holding state of the sessionmaxFrameLength
- the maximum length of the decoded frame.
A TooLongFrameException
is thrown if frame length is exceeded
decode
protected Object decode(org.jboss.netty.channel.ChannelHandlerContext ctx,
org.jboss.netty.channel.Channel channel,
org.jboss.netty.buffer.ChannelBuffer buffer)
throws Exception
- Specified by:
decode
in class org.jboss.netty.handler.codec.frame.FrameDecoder
- Throws:
Exception
Copyright © GigaSpaces.