Hi Alan,
Yes, the destroy use looks a bit odd. In Process, destroyForcibly
returns this so that the application can fluently wait for the
termination to complete.
Returning Optional<ProcessHandle> enables the case to fluently
perform an action on the process when it does exit.
ProcessHandle ph = ...;
ph.destroy().ifPresent(p -> p.onExit( ...));
Optional.isPresent() provides a boolean if that's needed.
Thanks, Roger
On 5/13/2015 10:55 AM, Alan Bateman wrote:
On 13/05/2015 15:16, Roger Riggs wrote:
Hi,
Are there any comments about the use of java.util.Optional in the
ProcessHandle API?
Or a review of the changes?
Having parent return Optional<ProcessHandle> looks good.
Having all methods in ProcessHandle.Info return Optional is probably
right, it gives us a bit more flexibility compared to info() returning
Optional<Info>.
I'm not sure abut the destroy* methods, the result of a destroy is
essentially a boolean so this feels a little odd.
-Alan.