in core/src/main/java/com/google/cloud/sql/core/DefaultAccessTokenSupplier.java [160:181]
private void validateAccessTokenExpiration(AccessToken accessToken) {
Date expirationTimeDate = accessToken.getExpirationTime();
if (expirationTimeDate != null) {
Instant expirationTime = expirationTimeDate.toInstant();
Instant now = Instant.now();
// Is the token expired?
if (expirationTime.isBefore(now) || expirationTime.equals(now)) {
DateTimeFormatter formatter = DateTimeFormatter.ISO_INSTANT.withZone(ZoneId.of("UTC"));
String nowFormat = formatter.format(now);
String expirationFormat = formatter.format(expirationTime);
String errorMessage =
"Access Token expiration time is in the past. Now = "
+ nowFormat
+ " Expiration = "
+ expirationFormat;
logger.debug(errorMessage);
throw new IllegalStateException(errorMessage);
}
}
}