docs: protected void recoverFromException(final String channel, final Exception e) {
          final RecoveryStrategy recoveryStrategy = this.exceptionHandlerRef.get().onException(this, e, channel);
          switch (recoveryStrategy) {
          case RECONNECT:
              LOG.info("Reconnecting to Redis in response to exception", e);
              final int reconAttempts = getReconnectAttempts();
              if (!JedisUtils.reconnect(this.jedis, reconAttempts, RECONNECT_SLEEP_TIME)) {
                  LOG.warn("Terminating in response to exception after " + reconAttempts + " to reconnect", e);
                  end(false);
              } else {
                  LOG.info("Reconnected to Redis");
              }
              break;
          case TERMINATE:
              LOG.warn("Terminating in response to exception", e);
              end(false);
              break;
          case PROCEED:
              break;
          default:
              LOG.error("Unknown RecoveryStrategy: " + recoveryStrategy 
                      + " while attempting to recover from the following exception; Admin proceeding...", e);
              break;
          }
      }