[exo-jcr-commits] exo-jcr SVN: r4870 - in jcr/trunk: exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/xpath and 2 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Tue Sep 6 07:02:32 EDT 2011
Author: dkuleshov
Date: 2011-09-06 07:02:32 -0400 (Tue, 06 Sep 2011)
New Revision: 4870
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/sql/QueryFormat.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/xpath/QueryFormat.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/JCRDateFormat.java
jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/resource/HierarchicalProperty.java
Log:
EXOJCR-1520: removed Contention on JCRDateFormat on heavy load
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/sql/QueryFormat.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/sql/QueryFormat.java 2011-09-06 09:50:12 UTC (rev 4869)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/sql/QueryFormat.java 2011-09-06 11:02:32 UTC (rev 4870)
@@ -16,17 +16,8 @@
*/
package org.exoplatform.services.jcr.impl.core.query.sql;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.Iterator;
-import java.util.List;
-import java.util.TimeZone;
-
-import javax.jcr.NamespaceException;
-import javax.jcr.RepositoryException;
-import javax.jcr.query.InvalidQueryException;
-
import org.exoplatform.commons.utils.ISO8601;
+import org.exoplatform.commons.utils.Tools;
import org.exoplatform.services.jcr.datamodel.InternalQName;
import org.exoplatform.services.jcr.datamodel.QPath;
import org.exoplatform.services.jcr.impl.Constants;
@@ -48,7 +39,16 @@
import org.exoplatform.services.jcr.impl.core.query.RelationQueryNode;
import org.exoplatform.services.jcr.impl.core.query.TextsearchQueryNode;
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Iterator;
+import java.util.List;
+import javax.jcr.NamespaceException;
+import javax.jcr.RepositoryException;
+import javax.jcr.query.InvalidQueryException;
+
+
/**
* Implements the query node tree serialization into a String.
*/
@@ -553,7 +553,7 @@
} else if (node.getValueType() == TYPE_STRING) {
b.append("'").append(node.getStringValue().replaceAll("'", "''")).append("'");
} else if (node.getValueType() == TYPE_DATE || node.getValueType() == TYPE_TIMESTAMP) {
- Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
+ Calendar cal = Calendar.getInstance(Tools.getTimeZone("UTC"));
cal.setTime(node.getDateValue());
b.append("TIMESTAMP '").append(ISO8601.format(cal)).append("'");
} else {
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/xpath/QueryFormat.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/xpath/QueryFormat.java 2011-09-06 09:50:12 UTC (rev 4869)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/xpath/QueryFormat.java 2011-09-06 11:02:32 UTC (rev 4870)
@@ -16,16 +16,8 @@
*/
package org.exoplatform.services.jcr.impl.core.query.xpath;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.List;
-import java.util.TimeZone;
-
-import javax.jcr.NamespaceException;
-import javax.jcr.RepositoryException;
-import javax.jcr.query.InvalidQueryException;
-
import org.exoplatform.commons.utils.ISO8601;
+import org.exoplatform.commons.utils.Tools;
import org.exoplatform.services.jcr.datamodel.InternalQName;
import org.exoplatform.services.jcr.datamodel.QPath;
import org.exoplatform.services.jcr.datamodel.QPathEntry;
@@ -47,9 +39,16 @@
import org.exoplatform.services.jcr.impl.core.query.QueryRootNode;
import org.exoplatform.services.jcr.impl.core.query.RelationQueryNode;
import org.exoplatform.services.jcr.impl.core.query.TextsearchQueryNode;
-
import org.exoplatform.services.jcr.impl.util.ISO9075;
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.List;
+
+import javax.jcr.NamespaceException;
+import javax.jcr.RepositoryException;
+import javax.jcr.query.InvalidQueryException;
+
/**
* Implements the query node tree serialization into a String.
*/
@@ -510,7 +509,7 @@
} else if (node.getValueType() == TYPE_STRING) {
b.append("'").append(node.getStringValue().replaceAll("'", "''")).append("'");
} else if (node.getValueType() == TYPE_DATE || node.getValueType() == TYPE_TIMESTAMP) {
- Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
+ Calendar cal = Calendar.getInstance(Tools.getTimeZone("UTC"));
cal.setTime(node.getDateValue());
b.append(resolver.createJCRName(XPathQueryBuilder.XS_DATETIME).getAsString());
b.append("('").append(ISO8601.format(cal)).append("')");
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/JCRDateFormat.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/JCRDateFormat.java 2011-09-06 09:50:12 UTC (rev 4869)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/JCRDateFormat.java 2011-09-06 11:02:32 UTC (rev 4870)
@@ -19,12 +19,12 @@
package org.exoplatform.services.jcr.impl.util;
import org.exoplatform.commons.utils.ISO8601;
+import org.exoplatform.commons.utils.Tools;
import org.exoplatform.services.log.ExoLogger;
import org.exoplatform.services.log.Log;
import java.text.ParseException;
import java.util.Calendar;
-import java.util.TimeZone;
import javax.jcr.ValueFormatException;
@@ -159,7 +159,7 @@
isoCalendar.setFirstDayOfWeek(Integer.parseInt(calendarFields[1]));
isoCalendar.setMinimalDaysInFirstWeek(Integer.parseInt(calendarFields[2]));
- isoCalendar.setTimeZone(TimeZone.getTimeZone(calendarFields[3]));
+ isoCalendar.setTimeZone(Tools.getTimeZone(calendarFields[3]));
}
catch (Exception e)
{
Modified: jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/resource/HierarchicalProperty.java
===================================================================
--- jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/resource/HierarchicalProperty.java 2011-09-06 09:50:12 UTC (rev 4869)
+++ jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/resource/HierarchicalProperty.java 2011-09-06 11:02:32 UTC (rev 4870)
@@ -18,13 +18,14 @@
*/
package org.exoplatform.services.jcr.webdav.resource;
+import org.exoplatform.commons.utils.Tools;
+
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
-import java.util.TimeZone;
import javax.xml.namespace.QName;
@@ -104,7 +105,7 @@
{
this(name, null);
SimpleDateFormat dateFormat = new SimpleDateFormat(formatPattern, Locale.ENGLISH);
- dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
+ dateFormat.setTimeZone(Tools.getTimeZone("GMT"));
this.value = dateFormat.format(dateValue.getTime());
}
More information about the exo-jcr-commits
mailing list