code: @Override
      public boolean unsubscribe(String topic, MessageListener messageListener) {
          Set<MessageListener> subcription = topicSubscriptions.get(topic);
          boolean unsubscribe = false;
          WrappedJedisPubSub wrappedJedisPubSub = null;
          if (subcription != null) {
              synchronized (subcription) {
                  if (subcription.remove(messageListener)) {
                      wrappedJedisPubSub = topicSubscriptionMappings.remove(messageListener);
                      if (wrappedJedisPubSub != null) {
                          unsubscribe = true;
                      }
                  }
              }
          }
          if (unsubscribe) {
              byte[] topicName = SafeEncoder.encode(topic);
              wrappedJedisPubSub.unsubscribe(topicName);
              return true;
          } else {
              return false;
          }
      }
docs: {@inheritDoc}