Set explicit timeout for http request (#15505)
* Bondhome * chatgpt * electroluxair * energidataservice * freeboxos * gardena * generacmobilelink * hdpowerview * icalendar * juicenet * kostalinverter * liquidcheck * mcd * meater * miele * mercedesme * mybmw * myq * ojelectronics * plex * radiothermostat * renault * semsportal * sensibo * tapocontrol * tellstick * verisure * vizio --------- Signed-off-by: lsiepel <leosiepel@gmail.com> Signed-off-by: Leo Siepel <leosiepel@gmail.com>
This commit is contained in:
@@ -13,6 +13,7 @@
|
||||
package org.openhab.binding.renault.internal.api;
|
||||
|
||||
import java.util.concurrent.ExecutionException;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.TimeoutException;
|
||||
|
||||
import org.eclipse.jdt.annotation.NonNullByDefault;
|
||||
@@ -52,6 +53,7 @@ public class MyRenaultHttpSession {
|
||||
|
||||
private static final String CHARGING_MODE_SCHEDULE = "schedule_mode";
|
||||
private static final String CHARGING_MODE_ALWAYS = "always_charging";
|
||||
private static final int REQUEST_TIMEOUT_MS = 10_000;
|
||||
|
||||
private RenaultConfiguration config;
|
||||
private HttpClient httpClient;
|
||||
@@ -287,7 +289,8 @@ public class MyRenaultHttpSession {
|
||||
private void postKamereonRequest(final String path, final String content) throws RenaultForbiddenException,
|
||||
RenaultNotImplementedException, RenaultActionException, RenaultAPIGatewayException {
|
||||
Request request = httpClient.newRequest(this.constants.getKamereonRootUrl() + path).method(HttpMethod.POST)
|
||||
.header("Content-type", "application/vnd.api+json").header("apikey", this.config.kamereonApiKey)
|
||||
.timeout(REQUEST_TIMEOUT_MS, TimeUnit.MILLISECONDS).header("Content-type", "application/vnd.api+json")
|
||||
.header("apikey", this.config.kamereonApiKey)
|
||||
.header("x-kamereon-authorization", "Bearer " + kamereonToken).header("x-gigya-id_token", jwt)
|
||||
.content(new StringContentProvider(content, "utf-8"));
|
||||
try {
|
||||
@@ -305,7 +308,8 @@ public class MyRenaultHttpSession {
|
||||
private @Nullable JsonObject getKamereonResponse(String path) throws RenaultForbiddenException,
|
||||
RenaultNotImplementedException, RenaultUpdateException, RenaultAPIGatewayException {
|
||||
Request request = httpClient.newRequest(this.constants.getKamereonRootUrl() + path).method(HttpMethod.GET)
|
||||
.header("Content-type", "application/vnd.api+json").header("apikey", this.config.kamereonApiKey)
|
||||
.timeout(REQUEST_TIMEOUT_MS, TimeUnit.MILLISECONDS).header("Content-type", "application/vnd.api+json")
|
||||
.header("apikey", this.config.kamereonApiKey)
|
||||
.header("x-kamereon-authorization", "Bearer " + kamereonToken).header("x-gigya-id_token", jwt);
|
||||
try {
|
||||
ContentResponse response = request.send();
|
||||
|
||||
Reference in New Issue
Block a user