From 69ff5ca81c8bf5833d5c841dbe1437ad23688370 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Fri, 22 Jun 2012 13:10:41 +0000 Subject: [PATCH] take of version when we delete a timestamped snapshot git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1352873 13f79535-47bb-0310-9956-ffa450edef68 --- .../services/DefaultRepositoriesService.java | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultRepositoriesService.java b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultRepositoriesService.java index e51a360f0..e69ce4631 100644 --- a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultRepositoriesService.java +++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultRepositoriesService.java @@ -728,9 +728,23 @@ public class DefaultRepositoriesService updateMetadata( metadata, metadataFile, lastUpdatedTimestamp, artifact ); } - Collection artifacts = - metadataRepository.getArtifacts( repositoryId, artifact.getGroupId(), artifact.getArtifactId(), - artifact.getVersion() ); + Collection artifacts = Collections.emptyList(); + + if ( snapshotVersion ) + { + String baseVersion = VersionUtil.getBaseVersion( artifact.getVersion() ); + artifacts = + metadataRepository.getArtifacts( repositoryId, artifact.getGroupId(), artifact.getArtifactId(), + baseVersion ); + } + else + { + artifacts = + metadataRepository.getArtifacts( repositoryId, artifact.getGroupId(), artifact.getArtifactId(), + artifact.getVersion() ); + } + + log.debug( "artifacts: {}", artifacts ); for ( ArtifactMetadata artifactMetadata : artifacts ) { @@ -813,6 +827,7 @@ public class DefaultRepositoriesService } finally { + repositorySession.save(); repositorySession.close();