[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-2511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15418090#comment-15418090
 ] 

Abraham Fine edited comment on ZOOKEEPER-2511 at 8/11/16 11:09 PM:
-------------------------------------------------------------------

 Simply adding "implements AutoCloseable" adds a compiler warning: 
ZooKeeper.java:132: warning: [try] auto-closeable resource ZooKeeper has a 
member method close() that could throw InterruptedException Which is referenced 
here: 
http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html#close() 
So basically, in classes that implement AutoCloseable, you can't/shouldn't 
throw InterruptedException from close(). The fun thing is, we don't actually 
need that "throws InterruptedException" (nothing in the method throws an 
exception, everything is caught lower in the stack). So I imagine it is kept 
there for API compatibility purposes. So my solution was to add a  
@SuppressWarnings("try") and a comment.


was (Author: abrahamfine):
 Simply adding "implements AutoCloseable" adds a compiler warning: 
ZooKeeper.java:132: warning: [try] auto-closeable resource ZooKeeper has a 
member method close() that could throw InterruptedException Which is referenced 
here: 
http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html#close() 
So basically, in classes that implement AutoCloseable, you can't throw 
InterruptedException from close(). The fun thing is, we don't actually need 
that "throws InterruptedException" (nothing in the method throws an exception, 
everything is caught lower in the stack). So I imagine it is kept there for API 
compatibility purposes. So my solution was to add a  @SuppressWarnings("try") 
and a comment.

> Implement AutoCloseable in ZooKeeper.java
> -----------------------------------------
>
>                 Key: ZOOKEEPER-2511
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2511
>             Project: ZooKeeper
>          Issue Type: Improvement
>            Reporter: Abraham Fine
>            Assignee: Abraham Fine
>         Attachments: ZOOKEEPER-2511.patch
>
>
> As a java developer I would like to be able to use try-with-resource blocks 
> with ZooKeeper objects in order to make closing sessions easier.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to