code: public <T> Callable<T> asCallable(final Callable<T> callable) {
          return new Callable<T>() {
              public T call() throws Exception {
                  return ExtendedRetryTemplate.this.execute(new RetryCallback<T, Exception>() {
                      public T doWithRetry(RetryContext retryContext) throws Exception {
                          return callable.call();
                      }
                  });
              }
          };
      }
docs: *
  Construct a {@link Callable} which wraps the given {@link Callable},
  and who's {@link java.util.concurrent.Callable#call()} method will execute
  the callable via this {@link ExtendedRetryTemplate}
  
  @param callable The callable to wrap
  @param <T> The return type of the callback
  @return The callback as a Callable