commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rory Winston (JIRA)" <j...@apache.org>
Subject [jira] Closed: (NET-278) FTPClient.disconnect() shouldn't throw IOException
Date Mon, 20 Jul 2009 23:31:14 GMT

     [ https://issues.apache.org/jira/browse/NET-278?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Rory Winston closed NET-278.
----------------------------

       Resolution: Later
    Fix Version/s: 3.0

I potentially may  this issue by swallowing the IOException and setting streams to null in
the finally block:

    public void disconnect() 
    {
    	try {
    		if (_socket_ != null) _socket_.close();
    		if (_input_ != null) _input_.close();
    		if (_output_ != null) _output_.close();
    		if (_socket_ != null) _socket_ = null;
    	}
    	catch (IOException e) {}
    	finally {
    		_input_ = null;
    		_output_ = null;
    	}
    }


But I am not sure that swallowing the exception is a good idea.

> FTPClient.disconnect() shouldn't throw IOException
> --------------------------------------------------
>
>                 Key: NET-278
>                 URL: https://issues.apache.org/jira/browse/NET-278
>             Project: Commons Net
>          Issue Type: Improvement
>    Affects Versions: 2.0
>         Environment: All
>            Reporter: Raffaele Sgarro
>            Priority: Minor
>             Fix For: 3.0
>
>   Original Estimate: 0.08h
>  Remaining Estimate: 0.08h
>
> FTPClient.disconnect() shouldn't throw IOExceptions because it is typically placed in
a finally block and it doesn't make much sense to
> try {
> client.disconnect()
> } catch (IOException e) {
> // You can't actually do anything
> }
> What is the purpose of such an exception if nobody can use it? There's nothing we can
do if the client couldn't disconnect... You always usa a catch block with a /*do nothing*/
in your samples, so I think it's only an elegant thing to have a try block in a finally block...

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


Mime
View raw message