K - Key type.V - Value type.public class RedisPubSubConnectionImpl<K,V> extends RedisAsyncConnectionImpl<K,V> implements RedisPubSubConnection<K,V>
RedisAsyncConnectionImpl.quit() may be called.
Incoming messages and results of the subscribe(K...)/unsubscribe(K...) calls will be passed to all registered
RedisPubSubListeners.
A ConnectionWatchdog monitors each connection and reconnects automatically until
RedisChannelHandler.close() is called. Channel and pattern subscriptions are renewed after reconnecting.ChannelHandler.Sharable| Modifier and Type | Field and Description |
|---|---|
protected Set<K> |
channels |
protected List<RedisPubSubListener<K,V>> |
listeners |
protected Set<K> |
patterns |
codec, commandBuilder, multitimeout, unit| Constructor and Description |
|---|
RedisPubSubConnectionImpl(RedisChannelWriter<K,V> writer,
RedisCodec<K,V> codec,
long timeout,
TimeUnit unit)
Initialize a new connection.
|
| Modifier and Type | Method and Description |
|---|---|
void |
activated()
Notification when the connection becomes active (connected).
|
void |
addListener(RedisPubSubListener<K,V> listener)
Add a new listener.
|
void |
channelRead(Object msg)
Invoked on a channel read.
|
RedisFuture<Void> |
psubscribe(K... patterns)
Listen for messages published to channels matching the given patterns.
|
RedisFuture<Void> |
punsubscribe(K... patterns)
Stop listening for messages posted to channels matching the given patterns.
|
void |
removeListener(RedisPubSubListener<K,V> listener)
Remove an existing listener.
|
protected List<RedisFuture<Void>> |
resubscribe()
Re-subscribe to all previously subscribed channels and patterns.
|
RedisFuture<Void> |
subscribe(K... channels)
Listen for messages published to the given channels.
|
RedisFuture<Void> |
unsubscribe(K... channels)
Stop listening for messages posted to the given channels.
|
append, asking, auth, bgrewriteaof, bgsave, bitcount, bitcount, bitopAnd, bitopNot, bitopOr, bitopXor, bitpos, bitpos, blpop, brpop, brpoplpush, clientGetname, clientKill, clientKill, clientList, clientPause, clientSetname, clusterAddSlots, clusterCountFailureReports, clusterCountKeysInSlot, clusterDelSlots, clusterFailover, clusterFlushslots, clusterForget, clusterGetKeysInSlot, clusterInfo, clusterKeyslot, clusterMeet, clusterMyId, clusterNodes, clusterReplicate, clusterReset, clusterSaveconfig, clusterSetConfigEpoch, clusterSetSlotImporting, clusterSetSlotMigrating, clusterSetSlotNode, clusterSetSlotStable, clusterSlaves, clusterSlots, command, commandCount, commandInfo, commandInfo, configGet, configResetstat, configRewrite, configSet, dbsize, debugHtstats, debugObject, debugOom, debugSegfault, decr, decrby, del, digest, discard, dispatch, dispatch, dispatch, dump, echo, eval, eval, evalsha, evalsha, exec, exists, exists, expire, expireat, expireat, flushall, flushallAsync, flushdb, flushdbAsync, geoadd, geoadd, geodist, geopos, georadius, georadius, georadiusbymember, georadiusbymember, get, getbit, getrange, getset, hdel, hexists, hget, hgetall, hgetall, hincrby, hincrbyfloat, hkeys, hkeys, hlen, hmget, hmget, hmset, hscan, hscan, hscan, hscan, hscan, hscan, hscan, hscan, hset, hsetnx, hstrlen, hvals, hvals, incr, incrby, incrbyfloat, info, info, isMulti, keys, keys, lastsave, lindex, linsert, llen, lpop, lpush, lpushx, lrange, lrange, lrem, lset, ltrim, mget, mget, migrate, move, mset, msetnx, multi, objectEncoding, objectIdletime, objectRefcount, persist, pexpire, pexpireat, pexpireat, pfadd, pfcount, pfmerge, ping, psetex, pttl, publish, pubsubChannels, pubsubChannels, pubsubNumpat, pubsubNumsub, quit, randomkey, readOnly, readWrite, rename, renamenx, restore, role, rpop, rpoplpush, rpush, rpushx, sadd, save, scan, scan, scan, scan, scan, scan, scan, scan, scard, scriptExists, scriptFlush, scriptKill, scriptLoad, sdiff, sdiff, sdiffstore, select, set, set, setbit, setex, setnx, setrange, shutdown, shutdown, sinter, sinter, sinterstore, sismember, slaveof, slaveofNoOne, slowlogGet, slowlogGet, slowlogLen, slowlogReset, smembers, smembers, smove, sort, sort, sort, sort, sortStore, spop, srandmember, srandmember, srandmember, srem, sscan, sscan, sscan, sscan, sscan, sscan, sscan, sscan, string, strlen, sunion, sunion, sunionstore, sync, time, ttl, type, unlink, unwatch, waitForReplication, watch, zadd, zadd, zadd, zadd, zaddincr, zcard, zcount, zcount, zincrby, zinterstore, zinterstore, zlexcount, zrange, zrange, zrangebylex, zrangebylex, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangeWithScores, zrangeWithScores, zrank, zrem, zremrangebylex, zremrangebyrank, zremrangebyscore, zremrangebyscore, zrevrange, zrevrange, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangeWithScores, zrevrangeWithScores, zrevrank, zscan, zscan, zscan, zscan, zscan, zscan, zscan, zscan, zscore, zunionstore, zunionstoreaddListener, channelRead, channelRegistered, close, deactivated, flushCommands, getChannelWriter, getOptions, getTimeout, getTimeoutUnit, isClosed, isOpen, registerCloseables, reset, setAutoFlushCommands, setOptions, setTimeoutchannelActive, channelInactive, channelReadComplete, channelUnregistered, channelWritabilityChanged, exceptionCaught, userEventTriggeredhandlerAdded, handlerRemoved, isSharableclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitauth, select, setTimeoutasking, close, clusterAddSlots, clusterCountFailureReports, clusterCountKeysInSlot, clusterDelSlots, clusterFailover, clusterFlushslots, clusterForget, clusterGetKeysInSlot, clusterInfo, clusterKeyslot, clusterMeet, clusterMyId, clusterNodes, clusterReplicate, clusterReset, clusterSaveconfig, clusterSetConfigEpoch, clusterSetSlotImporting, clusterSetSlotMigrating, clusterSetSlotNode, clusterSetSlotStable, clusterSlaves, clusterSlots, readOnly, readWritehdel, hexists, hget, hgetall, hgetall, hincrby, hincrbyfloat, hkeys, hkeys, hlen, hmget, hmget, hmset, hscan, hscan, hscan, hscan, hscan, hscan, hscan, hscan, hset, hsetnx, hstrlen, hvals, hvalsdel, dump, exists, exists, expire, expireat, expireat, keys, keys, migrate, move, objectEncoding, objectIdletime, objectRefcount, persist, pexpire, pexpireat, pexpireat, pttl, randomkey, rename, renamenx, restore, scan, scan, scan, scan, scan, scan, scan, scan, sort, sort, sort, sort, sortStore, ttl, type, unlinkappend, bitcount, bitcount, bitopAnd, bitopNot, bitopOr, bitopXor, bitpos, bitpos, decr, decrby, get, getbit, getrange, getset, incr, incrby, incrbyfloat, mget, mget, mset, msetnx, psetex, set, set, setbit, setex, setnx, setrange, strlenblpop, brpop, brpoplpush, lindex, linsert, llen, lpop, lpush, lpushx, lrange, lrange, lrem, lset, ltrim, rpop, rpoplpush, rpush, rpushxsadd, scard, sdiff, sdiff, sdiffstore, sinter, sinter, sinterstore, sismember, smembers, smembers, smove, spop, srandmember, srandmember, srandmember, srem, sscan, sscan, sscan, sscan, sscan, sscan, sscan, sscan, sunion, sunion, sunionstorezadd, zadd, zadd, zadd, zaddincr, zcard, zcount, zcount, zincrby, zinterstore, zinterstore, zlexcount, zrange, zrange, zrangebylex, zrangebylex, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscore, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangebyscoreWithScores, zrangeWithScores, zrangeWithScores, zrank, zrem, zremrangebylex, zremrangebyrank, zremrangebyscore, zremrangebyscore, zrevrange, zrevrange, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscore, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangebyscoreWithScores, zrevrangeWithScores, zrevrangeWithScores, zrevrank, zscan, zscan, zscan, zscan, zscan, zscan, zscan, zscan, zscore, zunionstore, zunionstoreeval, eval, evalsha, evalsha, scriptExists, scriptFlush, scriptKill, scriptLoadbgrewriteaof, bgsave, clientGetname, clientKill, clientKill, clientList, clientPause, clientSetname, command, commandCount, commandInfo, commandInfo, configGet, configResetstat, configRewrite, configSet, dbsize, debugHtstats, debugObject, debugOom, debugSegfault, flushall, flushallAsync, flushdb, flushdbAsync, info, info, lastsave, save, shutdown, slaveof, slaveofNoOne, slowlogGet, slowlogGet, slowlogLen, slowlogReset, sync, timepfadd, pfcount, pfmergegeoadd, geoadd, geodist, geopos, georadius, georadius, georadiusbymember, georadiusbymemberdigest, discard, echo, exec, flushCommands, isOpen, multi, ping, publish, pubsubChannels, pubsubChannels, pubsubNumpat, pubsubNumsub, quit, role, setAutoFlushCommands, unwatch, waitForReplication, watchhandlerAdded, handlerRemovedprotected final List<RedisPubSubListener<K,V>> listeners
public RedisPubSubConnectionImpl(RedisChannelWriter<K,V> writer, RedisCodec<K,V> codec, long timeout, TimeUnit unit)
writer - the channel writercodec - Codec used to encode/decode keys and values.timeout - Maximum time to wait for a responses.unit - Unit of time for the timeout.public void addListener(RedisPubSubListener<K,V> listener)
addListener in interface RedisPubSubConnection<K,V>listener - Listener.public void removeListener(RedisPubSubListener<K,V> listener)
removeListener in interface RedisPubSubConnection<K,V>listener - Listener.public RedisFuture<Void> psubscribe(K... patterns)
RedisPubSubConnectionpsubscribe in interface RedisPubSubConnection<K,V>patterns - the patternspsubscribe completionpublic RedisFuture<Void> punsubscribe(K... patterns)
RedisPubSubConnectionpunsubscribe in interface RedisPubSubConnection<K,V>patterns - the patternspunsubscribe completionpublic RedisFuture<Void> subscribe(K... channels)
RedisPubSubConnectionsubscribe in interface RedisPubSubConnection<K,V>channels - the channelssubscribe completionpublic RedisFuture<Void> unsubscribe(K... channels)
RedisPubSubConnectionunsubscribe in interface RedisPubSubConnection<K,V>channels - the channelsunsubscribe completion.public void activated()
RedisChannelHandleractivated in class RedisAsyncConnectionImpl<K,V>protected List<RedisFuture<Void>> resubscribe()
public void channelRead(Object msg)
RedisChannelHandlerchannelRead in class RedisChannelHandler<K,V>msg - channel messageCopyright © 2016. All rights reserved.