code: @Override
  	public <V, T extends Publisher<V>> T doWithWebClient(Function<WebClient, ? extends T> callback) {
  		Assert.notNull(callback, "callback must not be null");
  
  		try {
  			return callback.apply(webClient);
  		}
  		catch (HttpStatusCodeException e) {
  			throw new CredHubException(e);
  		}
  	}
docs: Allow interaction with the configured {@link WebClient} not provided
  by other methods.
  
  @param callback wrapper for the callback method
  @param <T> the credential implementation type
  @return the return value from the callback method