in measure/src/main/scala/org/apache/griffin/measure/utils/HttpUtil.scala [34:62]
def doHttpRequest(
url: String,
method: String,
params: Map[String, Object],
headers: Map[String, Object],
data: String): (Integer, String) = {
val client = HttpClientBuilder.create.build
val uriBuilder = new URIBuilder(url)
convertObjMap2StrMap(params) foreach (param => uriBuilder.setParameter(param._1, param._2))
val handler = new BasicResponseHandler()
val request = method match {
case POST_REGEX() =>
val post = new HttpPost(uriBuilder.build())
post.setEntity(new StringEntity(data, ContentType.APPLICATION_JSON))
post
case PUT_REGEX() =>
val put = new HttpPut(uriBuilder.build())
put.setEntity(new StringEntity(data, ContentType.APPLICATION_JSON))
put
case GET_REGEX() =>
new HttpGet(uriBuilder.build())
case DELETE_REGEX() =>
new HttpDelete(uriBuilder.build())
case _ => throw new UnsupportedOperationException("Unsupported http method error!")
}
convertObjMap2StrMap(headers) foreach (header => request.addHeader(header._1, header._2))
val response = client.execute(request)
(response.getStatusLine.getStatusCode, handler.handleResponse(response).trim)
}