[
https://issues.apache.org/jira/browse/NET-538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14572636#comment-14572636
]
Sebb commented on NET-538:
--------------------------
I've just checked, and none of the other classes (apart from
DefaultSocketFactory of course!) instantiate Sockets directly - they all use
the socket factory.
So it makes sense to do the same here, thus allowing the user to use their own
socket factory if required.
> FTPHTTPClient should use socket factory to create sockets
> ---------------------------------------------------------
>
> Key: NET-538
> URL: https://issues.apache.org/jira/browse/NET-538
> Project: Commons Net
> Issue Type: Bug
> Components: FTP
> Affects Versions: 3.3
> Environment: win7 + java 64, apache-commons-net3.3.jar
> Reporter: Dzmitry
> Priority: Minor
>
> FTPHTTPClient can't set socket timeout when connecting to remote http proxy.
> This may cause hangouts for calls to remote http ftp proxies.
> Expected: FTPHTTPClient supports creation sockets with Factory methods. We
> had same approach for regular FTPClient calling .setSocketFactory(...) method
> and have control over socket creation.
> Actual: FTPHTTPClient creates Socket inside public void connect(...)
> directly, and it is impossible to set timouts since this object will be used
> immediately. It is even impossible to inherit from FTPHTTPClient to
> override connect - since proxyHost, proxyPort and tunnelHandshake is private.
> so we may change
> _socket_ = new Socket(proxyHost, proxyPort);
> to
> _socket_ = _socketFactory_.createSocket();
> and add support for FTPHTTPClient to handle socket factories for http
> proxies calls.
> Is it possiible?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)