]> source.dussan.org Git - archiva.git/commitdiff
[MRM-1282] only create version metadata if necessary
authorBrett Porter <brett@apache.org>
Wed, 23 Dec 2009 01:01:32 +0000 (01:01 +0000)
committerBrett Porter <brett@apache.org>
Wed, 23 Dec 2009 01:01:32 +0000 (01:01 +0000)
git-svn-id: https://svn.apache.org/repos/asf/archiva/branches/MRM-1025@893368 13f79535-47bb-0310-9956-ffa450edef68

archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java

index bd062ccae5c2d4f51640b2511b4aa51409bad4ee..9ca98285ee4b2ea065fda03347f02531afe1521a 100644 (file)
@@ -166,11 +166,13 @@ public class ArchivaMetadataCreationConsumer
             storageResolver.getProjectVersion( repository.getId(), artifact.getGroupId(), artifact.getArtifactId(),
                                                projectVersion );
 
+        boolean createVersionMetadata = false;
         if ( versionMetadata == null )
         {
             log.warn( "Missing POM for artifact: " + path + "; creating empty metadata" );
             versionMetadata = new ProjectVersionMetadata();
             versionMetadata.setId( projectVersion );
+            createVersionMetadata = true;
         }
 
         ArtifactMetadata artifactMeta = new ArtifactMetadata();
@@ -205,8 +207,11 @@ public class ArchivaMetadataCreationConsumer
         // read the metadata and update it if it is newer or doesn't exist
         metadataRepository.updateArtifact( repository.getId(), project.getNamespace(), project.getId(), projectVersion,
                                            artifactMeta );
-        metadataRepository.updateProjectVersion( repository.getId(), project.getNamespace(), project.getId(),
-                                                 versionMetadata );
+        if ( createVersionMetadata )
+        {
+            metadataRepository.updateProjectVersion( repository.getId(), project.getNamespace(), project.getId(),
+                                                     versionMetadata );
+        }
         metadataRepository.updateProject( repository.getId(), project );
     }