docs: public void shutdown(long quietPeriod, long timeout, TimeUnit timeUnit) {
  
          try {
              shutdownAsync(quietPeriod, timeout, timeUnit).get();
          } catch (RuntimeException e) {
              throw e;
          } catch (ExecutionException e) {
  
              if (e.getCause() instanceof RedisCommandExecutionException) {
                  throw ExceptionFactory.createExecutionException(e.getCause().getMessage(), e.getCause());
              }
  
              throw new RedisException(e.getCause());
          } catch (InterruptedException e) {
  
              Thread.currentThread().interrupt();
              throw new RedisCommandInterruptedException(e);
          } catch (Exception e) {
              throw ExceptionFactory.createExecutionException(null, e);
          }
      }