diff --git a/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_0.java b/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_0.java index 9b1c11f39..29721255d 100644 --- a/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_0.java +++ b/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_0.java @@ -51,6 +51,7 @@ import org.mitre.openid.connect.model.WhitelistedSite; import org.mitre.openid.connect.repository.ApprovedSiteRepository; import org.mitre.openid.connect.repository.BlacklistedSiteRepository; import org.mitre.openid.connect.repository.WhitelistedSiteRepository; +import org.mitre.openid.connect.util.DateUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -172,7 +173,7 @@ public class MITREidDataService_1_0 extends MITREidDataService_1_X { } else if (name.equals("id")) { currentId = reader.nextLong(); } else if (name.equals("expiration")) { - Date date = utcToDate(reader.nextString()); + Date date = DateUtil.utcToDate(reader.nextString()); token.setExpiration(date); } else if (name.equals("value")) { String value = reader.nextString(); @@ -241,7 +242,7 @@ public class MITREidDataService_1_0 extends MITREidDataService_1_X { } else if (name.equals("id")) { currentId = reader.nextLong(); } else if (name.equals("expiration")) { - Date date = utcToDate(reader.nextString()); + Date date = DateUtil.utcToDate(reader.nextString()); token.setExpiration(date); } else if (name.equals("value")) { String value = reader.nextString(); @@ -454,15 +455,15 @@ public class MITREidDataService_1_0 extends MITREidDataService_1_X { } else if (name.equals("id")) { currentId = reader.nextLong(); } else if (name.equals("accessDate")) { - Date date = utcToDate(reader.nextString()); + Date date = DateUtil.utcToDate(reader.nextString()); site.setAccessDate(date); } else if (name.equals("clientId")) { site.setClientId(reader.nextString()); } else if (name.equals("creationDate")) { - Date date = utcToDate(reader.nextString()); + Date date = DateUtil.utcToDate(reader.nextString()); site.setCreationDate(date); } else if (name.equals("timeoutDate")) { - Date date = utcToDate(reader.nextString()); + Date date = DateUtil.utcToDate(reader.nextString()); site.setTimeoutDate(date); } else if (name.equals("userId")) { site.setUserId(reader.nextString()); diff --git a/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_1.java b/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_1.java index 7e37dd367..bd8dec07e 100644 --- a/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_1.java +++ b/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_1.java @@ -53,6 +53,7 @@ import org.mitre.openid.connect.model.WhitelistedSite; import org.mitre.openid.connect.repository.ApprovedSiteRepository; import org.mitre.openid.connect.repository.BlacklistedSiteRepository; import org.mitre.openid.connect.repository.WhitelistedSiteRepository; +import org.mitre.openid.connect.util.DateUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -152,7 +153,7 @@ public class MITREidDataService_1_1 extends MITREidDataService_1_X { for (OAuth2RefreshTokenEntity token : tokenRepository.getAllRefreshTokens()) { writer.beginObject(); writer.name("id").value(token.getId()); - writer.name("expiration").value(toUTCString(token.getExpiration())); + writer.name("expiration").value(DateUtil.toUTCString(token.getExpiration())); writer.name("clientId") .value((token.getClient() != null) ? token.getClient().getClientId() : null); writer.name("authenticationHolderId") @@ -171,7 +172,7 @@ public class MITREidDataService_1_1 extends MITREidDataService_1_X { for (OAuth2AccessTokenEntity token : tokenRepository.getAllAccessTokens()) { writer.beginObject(); writer.name("id").value(token.getId()); - writer.name("expiration").value(toUTCString(token.getExpiration())); + writer.name("expiration").value(DateUtil.toUTCString(token.getExpiration())); writer.name("clientId") .value((token.getClient() != null) ? token.getClient().getClientId() : null); writer.name("authenticationHolderId") @@ -271,10 +272,10 @@ public class MITREidDataService_1_1 extends MITREidDataService_1_X { for (ApprovedSite site : approvedSiteRepository.getAll()) { writer.beginObject(); writer.name("id").value(site.getId()); - writer.name("accessDate").value(toUTCString(site.getAccessDate())); + writer.name("accessDate").value(DateUtil.toUTCString(site.getAccessDate())); writer.name("clientId").value(site.getClientId()); - writer.name("creationDate").value(toUTCString(site.getCreationDate())); - writer.name("timeoutDate").value(toUTCString(site.getTimeoutDate())); + writer.name("creationDate").value(DateUtil.toUTCString(site.getCreationDate())); + writer.name("timeoutDate").value(DateUtil.toUTCString(site.getTimeoutDate())); writer.name("userId").value(site.getUserId()); writer.name("allowedScopes"); writeNullSafeArray(writer, site.getAllowedScopes()); @@ -511,7 +512,7 @@ public class MITREidDataService_1_1 extends MITREidDataService_1_X { } else if (name.equals("id")) { currentId = reader.nextLong(); } else if (name.equals("expiration")) { - Date date = utcToDate(reader.nextString()); + Date date = DateUtil.utcToDate(reader.nextString()); token.setExpiration(date); } else if (name.equals("value")) { String value = reader.nextString(); @@ -580,7 +581,7 @@ public class MITREidDataService_1_1 extends MITREidDataService_1_X { } else if (name.equals("id")) { currentId = reader.nextLong(); } else if (name.equals("expiration")) { - Date date = utcToDate(reader.nextString()); + Date date = DateUtil.utcToDate(reader.nextString()); token.setExpiration(date); } else if (name.equals("value")) { String value = reader.nextString(); @@ -799,15 +800,15 @@ public class MITREidDataService_1_1 extends MITREidDataService_1_X { } else if (name.equals("id")) { currentId = reader.nextLong(); } else if (name.equals("accessDate")) { - Date date = utcToDate(reader.nextString()); + Date date = DateUtil.utcToDate(reader.nextString()); site.setAccessDate(date); } else if (name.equals("clientId")) { site.setClientId(reader.nextString()); } else if (name.equals("creationDate")) { - Date date = utcToDate(reader.nextString()); + Date date = DateUtil.utcToDate(reader.nextString()); site.setCreationDate(date); } else if (name.equals("timeoutDate")) { - Date date = utcToDate(reader.nextString()); + Date date = DateUtil.utcToDate(reader.nextString()); site.setTimeoutDate(date); } else if (name.equals("userId")) { site.setUserId(reader.nextString()); diff --git a/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_X.java b/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_X.java index 34b8a8cab..ff9ad0006 100644 --- a/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_X.java +++ b/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_X.java @@ -45,30 +45,6 @@ import org.slf4j.LoggerFactory; */ public abstract class MITREidDataService_1_X implements MITREidDataService { private static Logger logger = LoggerFactory.getLogger(MITREidDataService_1_X.class); - private static final String ISO_FORMAT = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"; - private static final TimeZone utc = TimeZone.getTimeZone("UTC"); - private static final SimpleDateFormat sdf = new SimpleDateFormat(ISO_FORMAT); - - protected static String toUTCString(Date date) { - if (date == null) { - return null; - } - sdf.setTimeZone(utc); - return sdf.format(date); - } - - protected static Date utcToDate(String s) { - if (s == null) { - return null; - } - Date d = null; - try { - d = sdf.parse(s); - } catch(ParseException ex) { - logger.error("Unable to parse date string {}", s, ex); - } - return d; - } protected static T base64UrlDecodeObject(String encoded, Class type) { if (encoded == null) {