static HttpRequestBase createRequest(HttpReq config) {
Map<String, String> headers = U.safe(config.headers());
Map<String, String> cookies = U.safe(config.cookies());
String url = config.url();
url = Msc.urlWithProtocol(url);
HttpRequestBase req = createReq(config, url);
for (Map.Entry<String, String> e : headers.entrySet()) {
req.addHeader(e.getKey(), e.getValue());
}
if (U.notEmpty(cookies)) {
req.addHeader("Cookie", joinCookiesAsHeader(cookies));
}
switch (config.verb()) {
case POST:
case PUT:
case PATCH:
HttpEntityEnclosingRequestBase entityEnclosingReq = (HttpEntityEnclosingRequestBase) req;
if (config.body() != null) {
entityEnclosingReq.setEntity(byteBody(config));
} else if (U.notEmpty(config.data()) || U.notEmpty(config.files())) {
entityEnclosingReq.setEntity(paramsBody(config.data(), config.files()));
}
break;
}
req.setConfig(reqConfig(config));
return req;
}