I have tons of deprecation because of http client related classes.
Here my code:
this.httpclient = new DefaultHttpClient();
HttpGet httpget = new HttpGet(url);
HttpResponse response = this.httpclient.execute(httpget);
HttpEntity entity = response.getEntity();
int statusCode = response.getStatusLine().getStatusCode();
if (statusCode == HttpStatus.SC_OK) {
BufferedReader reader = new BufferedReader(
new InputStreamReader(entity.getContent(),
EntityUtils.getContentCharSet(entity))
);
String line = null;
Matcher matcher = null;
while ((line = reader.readLine()) != null) {
matcher = matcher == null ? this.resultPattern
.matcher(line) : matcher.reset(line);
if (matcher.matches()) {
httpget.abort();
return Double.parseDouble(matcher.group(1));
}
}
httpget.abort();
throw new MyException("Could not find ["
+ resultPattern.toString() + "] in response to [" + url
+ "]");
} else {
if (entity != null) {
entity.consumeContent();
}
throw new MyException("Got [" + statusCode
+ "] in response to [" + url + "]");
}
DefaultHttpClient
deprecated
HttpResponse
deprecated
HttpEntity
deprecated
How could I fix using native libraries? I have searched and some people for HttpClient
use HttpClientBuilder
but requires an extra library and in addition I have no idea how to fix the other deprecation problems.
Is there some programmer that could help me? What is the reason of this massive deprecation?
Seems that now we should use HttpURLConnection
, but I haven't understood how to migrate my code to these libraries.