From 5242d36ec9429de283f8e903ba45b31019813c48 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 19 Oct 2007 14:21:13 +0000 Subject: [PATCH] Cleaning up potential multi-threading issues with use of static SimpleDateFormat. git-svn-id: https://svn.apache.org/repos/asf/maven/archiva/trunk@586472 13f79535-47bb-0310-9956-ffa450edef68 --- .../core/repository/DaysOldRepositoryPurge.java | 11 ++++------- .../archiva/repository/metadata/MetadataTools.java | 4 ++-- .../repository/scanner/RepositoryScanStatistics.java | 4 +++- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/DaysOldRepositoryPurge.java b/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/DaysOldRepositoryPurge.java index 79e64f3ee..e8d8e0d6d 100644 --- a/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/DaysOldRepositoryPurge.java +++ b/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/DaysOldRepositoryPurge.java @@ -43,20 +43,17 @@ import java.util.regex.Matcher; public class DaysOldRepositoryPurge extends AbstractRepositoryPurge { - private static final SimpleDateFormat timestampParser; - static - { - timestampParser = new SimpleDateFormat( "yyyyMMdd.HHmmss" ); - timestampParser.setTimeZone( DateUtils.UTC_TIME_ZONE ); - } + private SimpleDateFormat timestampParser; private int daysOlder; - + public DaysOldRepositoryPurge( ManagedRepositoryContent repository, ArtifactDAO artifactDao, int daysOlder ) { super( repository, artifactDao ); this.daysOlder = daysOlder; + timestampParser = new SimpleDateFormat( "yyyyMMdd.HHmmss" ); + timestampParser.setTimeZone( DateUtils.UTC_TIME_ZONE ); } public void process( String path ) diff --git a/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/metadata/MetadataTools.java b/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/metadata/MetadataTools.java index d6a0f9134..960f3d798 100644 --- a/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/metadata/MetadataTools.java +++ b/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/metadata/MetadataTools.java @@ -101,9 +101,9 @@ public class MetadataTools private static final char NUMS[] = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' }; - private static final SimpleDateFormat lastUpdatedFormat; + private SimpleDateFormat lastUpdatedFormat; - static + public MetadataTools() { lastUpdatedFormat = new SimpleDateFormat( "yyyyMMddHHmmss" ); lastUpdatedFormat.setTimeZone( DateUtils.UTC_TIME_ZONE ); diff --git a/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryScanStatistics.java b/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryScanStatistics.java index ba664af59..d7023b444 100644 --- a/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryScanStatistics.java +++ b/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryScanStatistics.java @@ -23,6 +23,7 @@ import org.apache.commons.collections.CollectionUtils; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.model.RepositoryContentStatistics; +import java.text.SimpleDateFormat; import java.util.List; /** @@ -39,6 +40,8 @@ public class RepositoryScanStatistics private transient List invalidConsumers; private transient long startTimestamp; + + private SimpleDateFormat df = new SimpleDateFormat(); public void triggerStart() { @@ -76,7 +79,6 @@ public class RepositoryScanStatistics public String toDump( ManagedRepositoryConfiguration repo ) { - java.text.SimpleDateFormat df = new java.text.SimpleDateFormat(); StringBuffer buf = new StringBuffer(); buf.append( "\n.\\ Scan of " ).append( this.getRepositoryId() );