FDConnection.java
package sun.net.www.protocol.fd;
import java.io.FileDescriptor;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import eu.javaexperience.reflect.FdMirror;
import eu.javaexperience.reflect.Mirror;
public class FDConnection extends URLConnection
{
private InputStream is = null;
private OutputStream os = null;
int fd = -1;
public FDConnection(URL u) throws MalformedURLException
{
super(u);
try
{
String url = u.toString();
FileDescriptor fds = new FileDescriptor();
FdMirror.setFd(fds, fd = Integer.parseInt(url.replace("\\s", "").substring(5)));
is = new FileInputStream(fds);
os = new FileOutputStream(fds);
}
catch(Exception e)
{
throw new MalformedURLException("");
}
}
@Override
public void connect() throws IOException
{
}
@Override
public Object getContent()
{
return null;
}
@Override
public OutputStream getOutputStream()
{
return os;
}
@Override
public InputStream getInputStream()
{
return is;
}
}