Я создаю класс с методом, как показано ниже, который вызывает два метода внутри buildHttpPostRequest()
и process()
в одном классе.
public JSONObject request(final JSONObject authJson) {
final HttpClient httpClient = HttpUtil.getHttpClient();
final HttpPost httpPost = buildHttpPostRequest(authJson);
final HttpResponse response = httpClient.execute(httpPost);
return process(response);
}
private HttpPost buildHttpPostRequest(final JSONObject json) {
final List<NameValuePair> param = new ArrayList<>();
param.add("test");
if (authJson.length() == 0) {
param.add("test1");
} else {
param.add("test2");
}
final HttpPost httpPost = new HttpPost(url);
httpPost.setEntity(new UrlEncodedFormEntity(param, AuthConstants.ENCODING_FORMAT.getValue()));
return httpPost;
}
private JSONObject checkEDPGatewayStatusCode(final HttpResponse response){
// some switch case inside the method
return jsonObject;
}
Я использую JDK11 , Когда дело доходит до многопоточной среды, будет достаточно создать в StampedLock
экземпляр в request()
и выпустить в process()
?
StampedLock stampedLock = new StampedLock();
Будем благодарны за любые рекомендации и поддержку, поскольку я новичок в многопоточной модели программирования.