Details
Description
FTP the component works well. He isn't able to go through proxy server.
Library FTP4J is able to go through different proxy servers.
Squid Server is used FTP over HTTP proxy.
I have developed component FTP of the client constructed on library FTP4J.
FTP4J Version 1.6 - 2011/01/07. http://www.sauronsoftware.it/projects/ftp4j/
Has added storage of the last FTPReply.
Has added transfer of parameters connectTimeout and soTimeout.
Libraries FTP4J aren't present in central maven repository. The library no OSGi.
In camel the component has added parameter "proxy".
It is a line url authorizations for proxy server.
If the scheme http is specified, we put HTTPTunnelConnector.
If the scheme ftp is specified, we put FTPProxyConnector.
If the scheme socks5 is specified, we put SOCKS5Connector.
If the scheme socks or socks4 is specified, we put SOCKS4Connector.
If the parameter "proxy" isn't specified, there is a direct connection to FTP server.
Route example
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
default-activation="lazy">
<cm:property-placeholder persistent-id="com.mycompany.route.bundle">
<cm:default-properties>
<cm:property name="ftp.url" value="ftp4j://ftp.mycompany.com/"/>
<cm:property name="ftp.delay" value="100000"/>
<cm:property name="ftp.proxy" value="&proxy=http://user:pwd@cache.mycompany.lan:3128/"/>
</cm:default-properties>
</cm:property-placeholder>
<camelContext xmlns="http://camel.apache.org/schema/blueprint">
<route>
<from uri="ftp.url?delay=ftp.delay&noop=true&binary=true{{ftp.proxy}}"/>
<to uri="file://data/dict/inbox"/>
<to uri="mock:log"/>
</route>
</camelContext>
</blueprint>