Skip to content

Commit

Permalink
add global body of download
Browse files Browse the repository at this point in the history
  • Loading branch information
CPPAlien committed Jul 6, 2016
1 parent 9675b6a commit 2ecc902
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 49 deletions.
12 changes: 8 additions & 4 deletions davinci/src/main/java/cn/hadcn/davinci/DaVinci.java
Original file line number Diff line number Diff line change
Expand Up @@ -200,14 +200,18 @@ public VinciImageLoader getImageLoader() {
return mDaImageLoader;
}

/**
* get uploader instance, default content type is binary
*/
public VinciUpload getUploader() {
return new VinciUpload(mRequestQueue);
}

private String gBody;
public void setDownloadBody(String body) {
gBody = body;
}

public VinciDownload getDownloader() {
return new VinciDownload(mRequestQueue);
VinciDownload download = new VinciDownload(mRequestQueue);
download.body(gBody);
return download;
}
}
18 changes: 0 additions & 18 deletions davinci/src/main/java/cn/hadcn/davinci/http/base/RequestWay.java

This file was deleted.

42 changes: 15 additions & 27 deletions davinci/src/main/java/cn/hadcn/davinci/http/impl/HttpRequest.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
import java.util.HashMap;
import java.util.Map;

import cn.hadcn.davinci.http.base.RequestWay;
import cn.hadcn.davinci.log.VinciLog;
import cn.hadcn.davinci.http.base.StringRequest;
import cn.hadcn.davinci.http.OnDaVinciRequestListener;
Expand Down Expand Up @@ -97,7 +96,7 @@ public HttpRequest contentType(String contentType, String charset) {
* @param requestListener listener
*/
public void doGet(String requestUrl, Map<String, Object> params, OnDaVinciRequestListener requestListener) {
doRequest(RequestWay.GET,
doRequest(Request.Method.GET,
requestUrl, params, null, requestListener);
}

Expand All @@ -108,7 +107,7 @@ public void doGet(String requestUrl, Map<String, Object> params, OnDaVinciReques
* @param requestListener listener
*/
public void doPost(String requestUrl, JSONObject postJsonData, OnDaVinciRequestListener requestListener) {
doRequest(RequestWay.POST,
doRequest(Request.Method.POST,
requestUrl, null, postJsonData, requestListener);
}

Expand All @@ -119,7 +118,7 @@ public void doPost(String requestUrl, JSONObject postJsonData, OnDaVinciRequestL
* @param requestListener listener
*/
public void doPost(String requestUrl, String postBodyString, OnDaVinciRequestListener requestListener) {
doRequest(RequestWay.POST,
doRequest(Request.Method.POST,
requestUrl, null, postBodyString, requestListener);
}

Expand All @@ -129,19 +128,19 @@ public void doPost(String requestUrl, String postBodyString, OnDaVinciRequestLis
* @param requestListener listener
*/
public void doPost(String requestUrl, OnDaVinciRequestListener requestListener) {
doRequest(RequestWay.POST,
doRequest(Request.Method.POST,
requestUrl, null, null, requestListener);
}

/**
* do http request
* @param way GET or POST
* @param method GET or POST
* @param url request url
* @param urlMap get method parameters map
* @param postBody post method parameters
* @param requestListener listener
*/
private void doRequest(RequestWay way, String url, Map<String, Object> urlMap, Object postBody, final OnDaVinciRequestListener requestListener) {
private void doRequest(int method, String url, Map<String, Object> urlMap, Object postBody, final OnDaVinciRequestListener requestListener) {
mRequestListener = requestListener;
String requestUrl = url;

Expand All @@ -153,8 +152,8 @@ private void doRequest(RequestWay way, String url, Map<String, Object> urlMap, O
}
}

VinciLog.d("Do " + way.getType() + " request, url = " + requestUrl);
DaVinciHttp jsonObjectRequest = getRequest(way, requestUrl, postBody);
VinciLog.d("Do request, url = " + requestUrl);
DaVinciHttp jsonObjectRequest = getRequest(method, requestUrl, postBody);

if ( jsonObjectRequest == null ){
VinciLog.e("post body type is error, it should be json or string");
Expand All @@ -168,34 +167,23 @@ private void doRequest(RequestWay way, String url, Map<String, Object> urlMap, O
mRequestQueue.add(jsonObjectRequest);
}

private DaVinciHttp getRequest(RequestWay way, String requestUrl, Object postBody) {
int volleyWay;

//get volley method code, get or post
switch (way) {
case GET:
volleyWay = Request.Method.GET;
break;
default:
volleyWay = Request.Method.POST;
if ( null != postBody ){
VinciLog.d("doPost data = " + postBody.toString());
}
break;
private DaVinciHttp getRequest(int method, String requestUrl, Object postBody) {
if ( null != postBody ){
VinciLog.d("body data = " + postBody.toString());
}

//inflate body part depends on type we get
DaVinciHttp jsonObjectRequest = null;
if ( postBody == null ) {
jsonObjectRequest = new DaVinciHttp(volleyWay, requestUrl,
jsonObjectRequest = new DaVinciHttp(method, requestUrl,
new ResponseListener(),
new ErrorListener());
} else if ( postBody instanceof JSONObject ) {
jsonObjectRequest = new DaVinciHttp(volleyWay, requestUrl, (JSONObject)postBody,
jsonObjectRequest = new DaVinciHttp(method, requestUrl, (JSONObject)postBody,
new ResponseListener(),
new ErrorListener());
} else if (postBody instanceof String ) {
jsonObjectRequest = new DaVinciHttp(volleyWay, requestUrl, (String)postBody,
} else if ( postBody instanceof String ) {
jsonObjectRequest = new DaVinciHttp(method, requestUrl, (String)postBody,
new ResponseListener(),
new ErrorListener());
}
Expand Down

0 comments on commit 2ecc902

Please sign in to comment.