code: public CompletableFuture<BackupResponse> backup(BackupRequest request) {
      ComposableFuture<BackupResponse> future = new ComposableFuture<>();
      threadContext.execute(() -> {
        role.backup(request).whenComplete(future);
      });
      return future;
    }
docs: Handles a backup request.
  
  @param request the backup request
  @return future to be completed with a backup response