Wouldn't it be possible to modify the FTPControlSocket and FTPDataSocket constructors to support a "HTTP Connect" to an HTTP Proxy.
Something like:
String authString = "username" + ":" + "password";
String auth = "Basic " + new sun.misc.BASE64Encoder().encode(authString.getBytes());
Socket socket = new Socket("vsnlproxy.iitk.ac.in", 3128);
OutputStream out = socket.getOutputStream();
out.write(("CONNECT toc.oscar.aol.com:9898 HTTP/1.1" + CRLF + "Host: toc.oscar.aol.com:9898" + CRLF).getBytes());
out.write(("Proxy-Authorization: " + auth + CRLF).getBytes());
out.write(CRLF.getBytes());
I grabbed the code from this site:
http://resolute.ucsd.edu/~diwaker/artic ... proxy.html