Dying
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
package com.stardust.net;
|
||||
|
||||
import com.stardust.pio.UncheckedIOException;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.net.HttpURLConnection;
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
|
||||
/**
|
||||
* Created by Stardust on 2017/4/10.
|
||||
*/
|
||||
|
||||
public class AutoHttpURLConnection extends HttpURLConnection implements AutoCloseable {
|
||||
|
||||
private HttpURLConnection mHttpURLConnection;
|
||||
private InputStream mInputStream;
|
||||
private OutputStream mOutputStream;
|
||||
|
||||
|
||||
public AutoHttpURLConnection(URL url) throws IOException {
|
||||
super(url);
|
||||
mHttpURLConnection = (HttpURLConnection) url.openConnection();
|
||||
connect();
|
||||
}
|
||||
|
||||
public AutoHttpURLConnection(String url) throws IOException {
|
||||
this(new URL(url));
|
||||
}
|
||||
|
||||
@Override
|
||||
public InputStream getInputStream() {
|
||||
try {
|
||||
mInputStream = super.getInputStream();
|
||||
} catch (IOException e) {
|
||||
throw new UncheckedIOException(e);
|
||||
}
|
||||
return mInputStream;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void close() {
|
||||
disconnect();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void disconnect() {
|
||||
mHttpURLConnection.disconnect();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean usingProxy() {
|
||||
return mHttpURLConnection.usingProxy();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void connect() throws IOException {
|
||||
mHttpURLConnection.connect();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user