Package net.rubyeye.xmemcached.impl
Class MemcachedHandler
java.lang.Object
com.google.code.yanf4j.core.impl.HandlerAdapter
net.rubyeye.xmemcached.impl.MemcachedHandler
- All Implemented Interfaces:
Handler
Memcached Session Handler,used for dispatching commands and session's lifecycle management
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final MemcachedClient
static final IoBuffer
private boolean
private static final String
(package private) final long
private ExecutorService
private final MemcachedSessionConnectListener
private static final org.slf4j.Logger
private static final int
private static final int
private final StatisticsHandler
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
checkHeartBeat
(Session session) void
onExceptionCaught
(Session session, Throwable throwable) final void
onMessageReceived
(Session session, Object msg) On receive message from memcached serverfinal void
onMessageSent
(Session session, Object msg) put command which have been sent to queuefinal void
onSessionClosed
(Session session) Check if have to reconnect on session closedvoid
onSessionIdle
(Session session) Do a heartbeat actionvoid
onSessionStarted
(Session session) On session startedprotected void
reconnect
(MemcachedTCPSession session) Auto reconect to memcached servervoid
setEnableHeartBeat
(boolean enableHeartBeat) void
start()
void
stop()
Methods inherited from class com.google.code.yanf4j.core.impl.HandlerAdapter
onSessionConnected, onSessionCreated, onSessionExpired
-
Field Details
-
MAX_HEARTBEAT_THREADS
private static final int MAX_HEARTBEAT_THREADS -
statisticsHandler
-
heartBeatThreadPool
-
listener
-
client
-
log
private static final org.slf4j.Logger log -
enableHeartBeat
private volatile boolean enableHeartBeat -
EMPTY_BUF
-
HEART_BEAT_FAIL_COUNT_ATTR
- See Also:
-
MAX_HEART_BEAT_FAIL_COUNT
private static final int MAX_HEART_BEAT_FAIL_COUNT -
HEARTBEAT_PERIOD
final long HEARTBEAT_PERIOD
-
-
Constructor Details
-
MemcachedHandler
-
-
Method Details
-
onMessageReceived
On receive message from memcached server- Specified by:
onMessageReceived
in interfaceHandler
- Overrides:
onMessageReceived
in classHandlerAdapter
-
setEnableHeartBeat
public void setEnableHeartBeat(boolean enableHeartBeat) -
onMessageSent
put command which have been sent to queue- Specified by:
onMessageSent
in interfaceHandler
- Overrides:
onMessageSent
in classHandlerAdapter
-
onExceptionCaught
- Specified by:
onExceptionCaught
in interfaceHandler
- Overrides:
onExceptionCaught
in classHandlerAdapter
-
onSessionStarted
On session started- Specified by:
onSessionStarted
in interfaceHandler
- Overrides:
onSessionStarted
in classHandlerAdapter
-
onSessionClosed
Check if have to reconnect on session closed- Specified by:
onSessionClosed
in interfaceHandler
- Overrides:
onSessionClosed
in classHandlerAdapter
-
onSessionIdle
Do a heartbeat action- Specified by:
onSessionIdle
in interfaceHandler
- Overrides:
onSessionIdle
in classHandlerAdapter
-
checkHeartBeat
-
reconnect
Auto reconect to memcached server- Parameters:
session
-
-
stop
public void stop() -
start
public void start()
-