From ab9e13643cc8dab5554955598f247737a3965175 Mon Sep 17 00:00:00 2001
From: vharseko <vharseko@3a-systems.ru>
Date: Tue, 09 Jan 2024 18:00:56 +0000
Subject: [PATCH] FIX performance java.util.TimeZone.getTimeZone(TimeZone.java:516) is synchronized (#318)
---
opendj-core/src/main/java/org/forgerock/opendj/ldap/GeneralizedTime.java | 8 +++++++-
1 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/opendj-core/src/main/java/org/forgerock/opendj/ldap/GeneralizedTime.java b/opendj-core/src/main/java/org/forgerock/opendj/ldap/GeneralizedTime.java
index 8bdfc37..6045ac8 100644
--- a/opendj-core/src/main/java/org/forgerock/opendj/ldap/GeneralizedTime.java
+++ b/opendj-core/src/main/java/org/forgerock/opendj/ldap/GeneralizedTime.java
@@ -15,6 +15,7 @@
*/
package org.forgerock.opendj.ldap;
+import java.time.ZoneId;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
@@ -25,6 +26,7 @@
import org.forgerock.i18n.LocalizedIllegalArgumentException;
import org.forgerock.util.Reject;
+
import static com.forgerock.opendj.ldap.CoreMessages.*;
/**
@@ -790,7 +792,11 @@
// If we've gotten here, then it looks like a valid offset. We can
// create a time zone by using "GMT" followed by the offset.
- return TimeZone.getTimeZone("GMT" + offSetStr);
+ try {
+ return TimeZone.getTimeZone(ZoneId.of("GMT"+offSetStr));
+ }catch (java.time.DateTimeException e) {
+ return TimeZone.getTimeZone("GMT"+offSetStr);
+ }
}
/** Lazily constructed internal representations. */
--
Gitblit v1.10.0