code: public ListenableFuture<Boolean> moveToTrashAsUserFuture(final Path path, final String user) {
      return this.executor.submit(new Callable<Boolean>() {
        @Override
        public Boolean call() throws IOException {
          return AsyncTrash.this.innerTrash.moveToTrashAsUser(path, user);
        }
      });
    }
docs: Schedules a {@link ProxiedTrash#moveToTrashAsUser} and returns a future for this operation.
  @param path {@link Path} to delete.
  @param user User to execute the operation as.
  @return true if operation succeeded.