Hi Igniters,
I found the following usability issue with java thin client API.
Whenever you do `try (IgniteClient client = Ignition.startClient(cfg))`, you're
forced to declare `catch (Exception e)`.
This is because IgniteClient interface currently doesn't override close() from
AutoClosable. Because of that, it inherits `close() throws Exception`.
In fact, this shouldn't be required. `TcpIgniteClient implements IgniteClient`
currently throws Exception but it doesn't need to - its code doesn't throw any
checked exceptions.
Proposal:
• Add `@Overrides public void close()` with no `throws` to IgniteClient.
• Remove `throws Exception` from `TcpIgniteClient::close`
Note: this change is fully backwards-compatible. It is legal to narrow the
scope of `throws` in a new version of a method.
I plan to do this in https://issues.apache.org/jira/browse/IGNITE-15688.
Any objections?
Thanks,
Stan