mirror of
https://github.com/openhab/openhab-addons.git
synced 2025-02-04 03:14:07 +01:00
[easee] fix date formatting issues (#15501)
* fix DateTimeException when formatting date out of range (in this case Instant.MIN) Signed-off-by: Alexander Friese <af944580@googlemail.com>
This commit is contained in:
parent
ce1709102d
commit
20a2ef5363
@ -166,7 +166,7 @@ public class EaseeBindingConstants {
|
|||||||
public static final String THING_CONFIG_BACK_PLATE_ID = "backPlateId";
|
public static final String THING_CONFIG_BACK_PLATE_ID = "backPlateId";
|
||||||
public static final String THING_CONFIG_MASTER_BACK_PLATE_ID = "masterBackPlateId";
|
public static final String THING_CONFIG_MASTER_BACK_PLATE_ID = "masterBackPlateId";
|
||||||
|
|
||||||
public static final Instant OUTDATED_DATE = Instant.MIN;
|
public static final Instant OUTDATED_DATE = Instant.EPOCH;
|
||||||
public static final String DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";
|
public static final String DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";
|
||||||
|
|
||||||
public static final String PARAMETER_NAME_WRITE_COMMAND = "writeCommand";
|
public static final String PARAMETER_NAME_WRITE_COMMAND = "writeCommand";
|
||||||
|
@ -14,8 +14,6 @@ package org.openhab.binding.easee.internal;
|
|||||||
|
|
||||||
import static org.openhab.binding.easee.internal.EaseeBindingConstants.*;
|
import static org.openhab.binding.easee.internal.EaseeBindingConstants.*;
|
||||||
|
|
||||||
import java.time.Instant;
|
|
||||||
import java.time.ZoneId;
|
|
||||||
import java.time.ZonedDateTime;
|
import java.time.ZonedDateTime;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.time.format.DateTimeParseException;
|
import java.time.format.DateTimeParseException;
|
||||||
@ -67,18 +65,6 @@ public final class Utils {
|
|||||||
return zdt;
|
return zdt;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* returns a date in a readable format
|
|
||||||
*
|
|
||||||
* @param date
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public static String formatDate(Instant date) {
|
|
||||||
final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")
|
|
||||||
.withZone(ZoneId.systemDefault());
|
|
||||||
return formatter.format(date);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* get element as JsonObject.
|
* get element as JsonObject.
|
||||||
*
|
*
|
||||||
|
@ -148,8 +148,8 @@ public class WebInterface implements AtomicReferenceTrait {
|
|||||||
tokenRefreshDate = Instant.now();
|
tokenRefreshDate = Instant.now();
|
||||||
tokenExpiry = tokenRefreshDate.plusSeconds(expiresInSeconds);
|
tokenExpiry = tokenRefreshDate.plusSeconds(expiresInSeconds);
|
||||||
|
|
||||||
logger.debug("access token refreshed: {}, expiry: {}", Utils.formatDate(tokenRefreshDate),
|
logger.debug("access token refreshed: {}, expiry: {}", tokenRefreshDate.toString(),
|
||||||
Utils.formatDate(tokenExpiry));
|
tokenExpiry.toString());
|
||||||
|
|
||||||
statusHandler.updateStatusInfo(ThingStatus.ONLINE, ThingStatusDetail.NONE,
|
statusHandler.updateStatusInfo(ThingStatus.ONLINE, ThingStatusDetail.NONE,
|
||||||
STATUS_TOKEN_VALIDATED);
|
STATUS_TOKEN_VALIDATED);
|
||||||
@ -225,7 +225,7 @@ public class WebInterface implements AtomicReferenceTrait {
|
|||||||
if (now.plus(WEB_REQUEST_TOKEN_EXPIRY_BUFFER_MINUTES, ChronoUnit.MINUTES).isAfter(tokenExpiry)
|
if (now.plus(WEB_REQUEST_TOKEN_EXPIRY_BUFFER_MINUTES, ChronoUnit.MINUTES).isAfter(tokenExpiry)
|
||||||
|| now.isAfter(tokenRefreshDate.plus(WEB_REQUEST_TOKEN_MAX_AGE_MINUTES, ChronoUnit.MINUTES))) {
|
|| now.isAfter(tokenRefreshDate.plus(WEB_REQUEST_TOKEN_MAX_AGE_MINUTES, ChronoUnit.MINUTES))) {
|
||||||
logger.debug("access token needs to be refreshed, last refresh: {}, expiry: {}",
|
logger.debug("access token needs to be refreshed, last refresh: {}, expiry: {}",
|
||||||
Utils.formatDate(tokenRefreshDate), Utils.formatDate(tokenExpiry));
|
tokenRefreshDate.toString(), tokenExpiry.toString());
|
||||||
|
|
||||||
EaseeCommand refreshCommand = new RefreshToken(handler, accessToken, refreshToken);
|
EaseeCommand refreshCommand = new RefreshToken(handler, accessToken, refreshToken);
|
||||||
refreshCommand.registerResultProcessor(this::processAuthenticationResult);
|
refreshCommand.registerResultProcessor(this::processAuthenticationResult);
|
||||||
|
Loading…
Reference in New Issue
Block a user