[ 
https://issues.apache.org/jira/browse/IO-249?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12916748#action_12916748
 ] 

Paul Benedict edited comment on IO-249 at 9/30/10 8:53 PM:
-----------------------------------------------------------

If you have access to the main exception, you could then record the suppressed 
exception from the Closeable:

{code}
public void closeQuietly(Closeable c, Exception e) {
  try {
    c.close();
  } catch (Throwable t) {
    if(jdk7 && e != null) {
      e.addSuppressedException(t);
    }
  }
}
{code}

      was (Author: paul4christ79):
    If you have access to the main exception, you could then record the 
suppressed exception from the Closeable:

public void closeQuietly(Closeable c, Exception e) {
  try {
    c.close();
  } catch (Throwable t) {
    if(jdk7) {
      e.addSuppressedException(t);
    }
  }
}
  
> Enhance closeQuietly to indicate success
> ----------------------------------------
>
>                 Key: IO-249
>                 URL: https://issues.apache.org/jira/browse/IO-249
>             Project: Commons IO
>          Issue Type: Improvement
>          Components: Utilities
>    Affects Versions: 2.0
>            Reporter: Paul Benedict
>            Assignee: Paul Benedict
>            Priority: Minor
>             Fix For: 2.x
>
>
> A convention of some programmers is to emit a log warning when a resource 
> fails to close. Granted, such a condition is an error, but there's no 
> reasonable recourse to the failure. Using IOUtils.closeQuietly() is very 
> useful but all information about the success/failure is hidden. Returning 
> Throwable will give insight into the error for diagnostic purposes. This 
> change will be compatible with today's usage since the method currently 
> returns void.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to