throw a JedisConnectionException if unsubscribing from a not subscribed JedisPubSub instance

This commit is contained in:
Jonathan Leibiusky
2011-05-11 14:56:05 -03:00
parent 22b2229ba0
commit acb1eb594f
2 changed files with 31 additions and 0 deletions

View File

@@ -10,6 +10,7 @@ import static redis.clients.jedis.Protocol.Keyword.UNSUBSCRIBE;
import java.util.Arrays;
import java.util.List;
import redis.clients.jedis.exceptions.JedisConnectionException;
import redis.clients.jedis.exceptions.JedisException;
import redis.clients.util.SafeEncoder;
@@ -31,6 +32,10 @@ public abstract class JedisPubSub {
public abstract void onPSubscribe(String pattern, int subscribedChannels);
public void unsubscribe() {
if (client == null) {
throw new JedisConnectionException(
"JedisPubSub was not subscribed to a Jedis instance.");
}
client.unsubscribe();
client.flush();
}