CompletableFuture can only be completed once

Also, it throws a TimeoutException instead of an ExecutionException if
get() times out. (ExecutionExceptions are thrown if the future completes
exceptionally, which is not the case here.)

Test: TH
Change-Id: If1bc359e8fefb819089e4f2885fb45ee7e3a996c
1 file changed