package jalview.ws;
import java.io.BufferedReader;
+import java.io.File;
import java.io.IOException;
+import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.List;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.mime.HttpMultipartMode;
+import org.apache.http.entity.mime.MultipartEntity;
+import org.apache.http.entity.mime.content.FileBody;
+import org.apache.http.entity.mime.content.InputStreamBody;
+import org.apache.http.entity.mime.content.StringBody;
import org.apache.http.impl.client.DefaultHttpClient;
/**
}
}
+ public static BufferedReader doHttpMpartFilePost(String postUrl,
+ List<NameValuePair> vals, String fparm,File file, String mtype) throws ClientProtocolException,
+ IOException
+ {
+ HttpClient httpclient = new DefaultHttpClient();
+ HttpPost httppost = new HttpPost(postUrl);
+ MultipartEntity mpe = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
+ for (NameValuePair nvp:vals)
+ {
+ mpe.addPart(nvp.getName(), new StringBody(nvp.getValue()));
+ }
+
+ FileBody fb = new FileBody(file, mtype!=null ? mtype : "application/octet-stream");
+ mpe.addPart(fparm, fb);
+ UrlEncodedFormEntity ue = new UrlEncodedFormEntity(vals, "UTF-8");
+ httppost.setEntity(ue);
+ HttpResponse response = httpclient.execute(httppost);
+ HttpEntity resEntity = response.getEntity();
+
+ if (resEntity != null)
+ {
+ BufferedReader r = new BufferedReader(new InputStreamReader(
+ resEntity.getContent()));
+ return r;
+ }
+ else
+ {
+ return null;
+ }
+ }
+ public static BufferedReader doHttpMpartInputstreamPost(String postUrl,
+ List<NameValuePair> vals, String fparm,String fname, InputStream is, String mtype) throws ClientProtocolException,
+ IOException
+ {
+ HttpClient httpclient = new DefaultHttpClient();
+ HttpPost httppost = new HttpPost(postUrl);
+ MultipartEntity mpe = new MultipartEntity(HttpMultipartMode.STRICT);
+ for (NameValuePair nvp:vals)
+ {
+ mpe.addPart(nvp.getName(), new StringBody(nvp.getValue()));
+ }
+
+ InputStreamBody fb = (mtype!=null) ? new InputStreamBody(is, fname, mtype) : new InputStreamBody(is, fname);
+ mpe.addPart(fparm, fb);
+ UrlEncodedFormEntity ue = new UrlEncodedFormEntity(vals, "UTF-8");
+ httppost.setEntity(ue);
+ HttpResponse response = httpclient.execute(httppost);
+ HttpEntity resEntity = response.getEntity();
+
+ if (resEntity != null)
+ {
+ BufferedReader r = new BufferedReader(new InputStreamReader(
+ resEntity.getContent()));
+ return r;
+ }
+ else
+ {
+ return null;
+ }
+ }
}