001 002package io.vrap.rmf.base.client; 003 004import java.time.Duration; 005import java.util.concurrent.CompletableFuture; 006 007public interface RequestCommand<TResult> { 008 CompletableFuture<ApiHttpResponse<TResult>> execute(); 009 010 default ApiHttpResponse<TResult> executeBlocking() { 011 return executeBlocking(ApiHttpClient.DEFAULT_TIMEOUT); 012 } 013 014 ApiHttpResponse<TResult> executeBlocking(final Duration timeout); 015}