Author: brett
Date: Wed Mar 10 14:55:59 2010
New Revision: 921376
URL: http://svn.apache.org/viewvc?rev=921376&view=rev
Log:
[MRM-1282] remove duplicated artifact population, ensuring the metadata
consumer now sets facets correctly too
Added:
archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/filter/IncludesFilter.java
- copied, changed from r920650,
archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/filter/ExcludesFilter.java
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java?rev=921376&r1=921375&r2=921376&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java
(original)
+++
archiva/trunk/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java
Wed Mar 10 14:55:59 2010
@@ -19,13 +19,12 @@ package org.apache.archiva.consumers.met
* under the License.
*/
-import org.apache.archiva.checksum.ChecksumAlgorithm;
-import org.apache.archiva.checksum.ChecksummedFile;
import org.apache.archiva.metadata.model.ArtifactMetadata;
import org.apache.archiva.metadata.model.ProjectMetadata;
import org.apache.archiva.metadata.model.ProjectVersionMetadata;
import org.apache.archiva.metadata.repository.MetadataRepository;
import org.apache.archiva.metadata.repository.MetadataResolutionException;
+import org.apache.archiva.metadata.repository.filter.IncludesFilter;
import org.apache.archiva.metadata.repository.storage.StorageMetadataResolver;
import org.apache.maven.archiva.common.utils.VersionUtil;
import org.apache.maven.archiva.configuration.ArchivaConfiguration;
@@ -46,8 +45,8 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.File;
-import java.io.IOException;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Date;
import java.util.List;
@@ -185,35 +184,15 @@ public class ArchivaMetadataCreationCons
createVersionMetadata = true;
}
- // TODO: merge with storage implementation, add Maven facet
- ArtifactMetadata artifactMeta = new ArtifactMetadata();
- artifactMeta.setRepositoryId( repository.getId() );
- artifactMeta.setNamespace( artifact.getGroupId() );
- artifactMeta.setProject( artifact.getArtifactId() );
- artifactMeta.setId( file.getName() );
- artifactMeta.setFileLastModified( file.lastModified() );
- artifactMeta.setSize( file.length() );
+ // A bit weird to reconstruct the file we already have, but don't want
to expose getArtifactFromFile in the
+ // storage API
+ IncludesFilter<String> filter = new IncludesFilter<String>(
Arrays.asList( file.getName() ) );
+ ArtifactMetadata artifactMeta = storageResolver.getArtifacts(
repository.getId(), artifact.getGroupId(),
+
artifact.getArtifactId(), projectVersion,
+ filter
).iterator().next();
artifactMeta.setVersion( artifact.getVersion() );
artifactMeta.setWhenGathered( whenGathered );
- ChecksummedFile checksummedFile = new ChecksummedFile( file );
- try
- {
- artifactMeta.setMd5( checksummedFile.calculateChecksum(
ChecksumAlgorithm.MD5 ) );
- }
- catch ( IOException e )
- {
- log.error( "Error attempting to get MD5 checksum for " + file + ":
" + e.getMessage() );
- }
- try
- {
- artifactMeta.setSha1( checksummedFile.calculateChecksum(
ChecksumAlgorithm.SHA1 ) );
- }
- catch ( IOException e )
- {
- log.error( "Error attempting to get SHA-1 checksum for " + file +
": " + e.getMessage() );
- }
-
// TODO: transaction
// read the metadata and update it if it is newer or doesn't exist
metadataRepository.updateArtifact( repository.getId(),
project.getNamespace(), project.getId(), projectVersion,
Copied:
archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/filter/IncludesFilter.java
(from r920650,
archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/filter/ExcludesFilter.java)
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/filter/IncludesFilter.java?p2=archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/filter/IncludesFilter.java&p1=archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/filter/ExcludesFilter.java&r1=920650&r2=921376&rev=921376&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/filter/ExcludesFilter.java
(original)
+++
archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/filter/IncludesFilter.java
Wed Mar 10 14:55:59 2010
@@ -21,18 +21,18 @@ package org.apache.archiva.metadata.repo
import java.util.Collection;
-public class ExcludesFilter<T>
+public class IncludesFilter<T>
implements Filter<T>
{
- private Collection<T> excludes;
+ private Collection<T> includes;
- public ExcludesFilter( Collection<T> excludes )
+ public IncludesFilter( Collection<T> includes )
{
- this.excludes = excludes;
+ this.includes = includes;
}
public boolean accept( T value )
{
- return !excludes.contains( value );
+ return includes.contains( value );
}
-}
+}
\ No newline at end of file