diff options
author | Joakim Erdfelt <joakime@apache.org> | 2007-10-17 16:56:51 +0000 |
---|---|---|
committer | Joakim Erdfelt <joakime@apache.org> | 2007-10-17 16:56:51 +0000 |
commit | b8ec325b490be376cb7696dec95dbb2b2cc37c9c (patch) | |
tree | 258f96470c27541e2e7d1cf9e9c036790bff254b /archiva-base/archiva-consumers | |
parent | acdff6dcc100d4959105ae788bfa2a4d69fc2a3c (diff) | |
download | archiva-b8ec325b490be376cb7696dec95dbb2b2cc37c9c.tar.gz archiva-b8ec325b490be376cb7696dec95dbb2b2cc37c9c.zip |
Upgrading bidirlayout usage to RepoContent usage to eliminate bugs around missing content from bad layout routines.
git-svn-id: https://svn.apache.org/repos/asf/maven/archiva/trunk@585574 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'archiva-base/archiva-consumers')
-rw-r--r-- | archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/maven/archiva/consumers/lucene/IndexContentConsumer.java | 38 |
1 files changed, 18 insertions, 20 deletions
diff --git a/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/maven/archiva/consumers/lucene/IndexContentConsumer.java b/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/maven/archiva/consumers/lucene/IndexContentConsumer.java index aefaba8ad..95a9a561a 100644 --- a/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/maven/archiva/consumers/lucene/IndexContentConsumer.java +++ b/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/maven/archiva/consumers/lucene/IndexContentConsumer.java @@ -31,8 +31,10 @@ import org.apache.maven.archiva.indexer.RepositoryContentIndexFactory; import org.apache.maven.archiva.indexer.RepositoryIndexException; import org.apache.maven.archiva.indexer.filecontent.FileContentRecord; import org.apache.maven.archiva.model.ArchivaArtifact; -import org.apache.maven.archiva.repository.layout.BidirectionalRepositoryLayout; -import org.apache.maven.archiva.repository.layout.BidirectionalRepositoryLayoutFactory; +import org.apache.maven.archiva.model.ArtifactReference; +import org.apache.maven.archiva.repository.ManagedRepositoryContent; +import org.apache.maven.archiva.repository.RepositoryContentFactory; +import org.apache.maven.archiva.repository.RepositoryException; import org.apache.maven.archiva.repository.layout.LayoutException; import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException; @@ -82,14 +84,14 @@ public class IndexContentConsumer private FileTypes filetypes; /** - * @plexus.requirement role-hint="lucene" + * @plexus.requirement */ - private RepositoryContentIndexFactory indexFactory; - + private RepositoryContentFactory repositoryFactory; + /** - * @plexus.requirement + * @plexus.requirement role-hint="lucene" */ - private BidirectionalRepositoryLayoutFactory layoutFactory; + private RepositoryContentIndexFactory indexFactory; private List<String> propertyNameTriggers = new ArrayList<String>(); @@ -97,12 +99,10 @@ public class IndexContentConsumer private RepositoryContentIndex index; - private ManagedRepositoryConfiguration repository; + private ManagedRepositoryContent repository; private File repositoryDir; - private BidirectionalRepositoryLayout repositoryLayout; - public String getId() { return this.id; @@ -128,21 +128,18 @@ public class IndexContentConsumer return this.includes; } - public void beginScan( ManagedRepositoryConfiguration repository ) + public void beginScan( ManagedRepositoryConfiguration repo ) throws ConsumerException { - this.repository = repository; - this.repositoryDir = new File( repository.getLocation() ); - this.index = indexFactory.createFileContentIndex( repository ); - try { - this.repositoryLayout = layoutFactory.getLayout( this.repository.getLayout() ); + this.repository = repositoryFactory.getManagedRepositoryContent( repo.getId() ); + this.repositoryDir = new File( repository.getRepoRoot() ); + this.index = indexFactory.createFileContentIndex( repository.getRepository() ); } - catch ( LayoutException e ) + catch ( RepositoryException e ) { - throw new ConsumerException( - "Unable to initialize consumer due to unknown repository layout: " + e.getMessage(), e ); + throw new ConsumerException( "Unable to start IndexContentConsumer: " + e.getMessage(), e ); } } @@ -160,7 +157,8 @@ public class IndexContentConsumer // Test for possible artifact reference syntax. try { - ArchivaArtifact artifact = this.repositoryLayout.toArtifact( path ); + ArtifactReference ref = repository.toArtifactReference( path ); + ArchivaArtifact artifact = new ArchivaArtifact( ref ); record.setArtifact( artifact ); } catch ( LayoutException e ) |