import java.io.Reader;
import java.net.HttpURLConnection;
import java.net.URI;
+import java.net.URISyntaxException;
import java.net.URL;
import java.util.ArrayList;
}
pi.append(pathinfo);
}
- URL url = new URI(
- uri.getScheme(),
- uri.getUserInfo(),
- uri.getHost(),
- uri.getPort(),
- pi==null?uri.getPath():pi.toString(),
- query,
- fragment).toURL();
pathinfo=null;
query=null;
fragment=null;
- huc = (HttpURLConnection) url.openConnection();
+ //huc = (HttpURLConnection) url.openConnection();
+ huc = getConnection(uri, pi);
huc.setRequestMethod(meth);
if(ss!=null) {
ss.setSecurity(huc);
return connectTimeout;
}
- public abstract class HFuture<T> extends Future<T> {
+ protected HttpURLConnection getConnection(URI uri, StringBuilder pi) throws IOException, URISyntaxException {
+ URL url = new URI(
+ uri.getScheme(),
+ uri.getUserInfo(),
+ uri.getHost(),
+ uri.getPort(),
+ pi==null?uri.getPath():pi.toString(),
+ query,
+ fragment).toURL();
+ return (HttpURLConnection) url.openConnection();
+ }
+
+ public abstract class HFuture<T> extends Future<T> {
protected HttpURLConnection huc;
protected int respCode;
- protected String respMessage;
protected IOException exception;
protected StringBuilder errContent;
return exception;
}
- public String respMessage() {
- return respMessage;
- }
-
@Override
public String header(String tag) {
return huc.getHeaderField(tag);
public String body() {
if (errContent != null) {
return errContent.toString();
-
- } else if (respMessage != null) {
- return respMessage;
}
return "";
}
return value;
} else if (errContent != null) {
return errContent.toString();
- } else if (respMessage != null) {
- return respMessage;
}
return "";
}
}
} else if (errContent != null) {
return errContent.toString();
- } else if (respMessage != null) {
- return respMessage;
}
return "";
}
public String body() {
if (errContent != null) {
return errContent.toString();
- } else if (respMessage != null) {
- return respMessage;
}
return Integer.toString(respCode);
}
@Override
public String body() {
- return errContent==null?respMessage:errContent.toString();
+ return errContent==null?null:errContent.toString();
}
};
}