code: @Override
    public CompletableFuture<Data> getAsync(Face face, Interest interest) {
      CompletableFuture<Data> future = new CompletableFuture<>();
  
      try {
        DataStream stream = getSegmentsAsync(face, interest);
  
        stream.observe(new OnException() {
          public void onException(Exception exception) {
            future.completeExceptionally(exception);
          }
        });
  
        stream.observe(new OnComplete() {
          public void onComplete() {
            try {
              future.complete(stream.assemble());
            } catch (StreamException ex) {
              stream.onException(ex);
            }
          }
        });
      } catch (IOException ex) {
        future.completeExceptionally(ex);
      }
  
      return future;
    }
docs: {@inheritDoc}