@Override
    public V get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException {
      return function.apply(fromFuture.get(timeout, unit));
    }
Provides default wrapping implementation of {@link FluentFuture}
mongo/src/org/immutables/mongo/concurrent/FluentFutures.java