You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2014/04/23 07:50:01 UTC
[2/2] git commit: De-plexusize MI
De-plexusize MI
For now, only main codebase is done. Build will still fail,
as there are still UTs needed to be fixed.
Project: http://git-wip-us.apache.org/repos/asf/maven-indexer/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven-indexer/commit/ea16d91e
Tree: http://git-wip-us.apache.org/repos/asf/maven-indexer/tree/ea16d91e
Diff: http://git-wip-us.apache.org/repos/asf/maven-indexer/diff/ea16d91e
Branch: refs/heads/javax-inject
Commit: ea16d91e71b2dba23e336c9e9f1836c1421e911a
Parents: dfc8159
Author: Tamás Cservenák <cs...@apache.org>
Authored: Fri Nov 16 14:31:45 2012 +0100
Committer: Tamás Cservenák <cs...@apache.org>
Committed: Fri Nov 16 15:43:01 2012 +0100
----------------------------------------------------------------------
indexer-artifact/pom.xml | 13 +++--
.../DefaultArtifactPackagingMapper.java | 20 ++++---
.../maven/index/artifact/M1GavCalculator.java | 18 ++++---
.../maven/index/artifact/M2GavCalculator.java | 26 ++++-----
indexer-cli/pom.xml | 12 ++++-
indexer-core/pom.xml | 23 ++++++--
.../apache/maven/index/ComponentSupport.java | 31 +++++++++++
.../index/DefaultArtifactContextProducer.java | 18 +++++--
.../org/apache/maven/index/DefaultIndexer.java | 50 +++++++++++-------
.../maven/index/DefaultIndexerEngine.java | 9 ++--
.../apache/maven/index/DefaultNexusIndexer.java | 34 +++++++-----
.../apache/maven/index/DefaultQueryCreator.java | 32 +++++-------
.../org/apache/maven/index/DefaultScanner.java | 24 ++++++---
.../maven/index/DefaultScannerListener.java | 6 +--
.../apache/maven/index/DefaultSearchEngine.java | 9 ++--
.../archetype/AbstractArchetypeDataSource.java | 17 +++---
.../archetype/NexusArchetypeDataSource.java | 23 +++++---
.../index/creator/AbstractIndexCreator.java | 4 +-
.../creator/JarFileContentsIndexCreator.java | 7 +--
.../MavenArchetypeArtifactInfoIndexCreator.java | 7 +--
.../MavenPluginArtifactInfoIndexCreator.java | 32 +++++++-----
.../MinimalArtifactInfoIndexCreator.java | 7 +--
.../index/creator/OsgiArtifactIndexCreator.java | 23 ++++----
.../incremental/DefaultIncrementalHandler.java | 13 +++--
.../maven/index/packer/DefaultIndexPacker.java | 43 +++++++++------
.../index/treeview/DefaultIndexTreeView.java | 25 +++++----
.../index/updater/DefaultIndexUpdater.java | 55 ++++++++++----------
.../maven/index/AbstractIndexCreatorHelper.java | 9 ++++
pom.xml | 47 ++++++++++++++---
29 files changed, 410 insertions(+), 227 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-artifact/pom.xml
----------------------------------------------------------------------
diff --git a/indexer-artifact/pom.xml b/indexer-artifact/pom.xml
index 499c344..07a271c 100644
--- a/indexer-artifact/pom.xml
+++ b/indexer-artifact/pom.xml
@@ -37,15 +37,20 @@ under the License.
<dependencies>
<dependency>
<groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-component-annotations</artifactId>
+ <artifactId>plexus-utils</artifactId>
</dependency>
+
<dependency>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-utils</artifactId>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.inject</groupId>
+ <artifactId>javax.inject</artifactId>
</dependency>
<dependency>
<groupId>org.sonatype.sisu</groupId>
- <artifactId>sisu-inject-plexus</artifactId>
+ <artifactId>sisu-inject-bean</artifactId>
</dependency>
<!-- Test -->
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-artifact/src/main/java/org/apache/maven/index/artifact/DefaultArtifactPackagingMapper.java
----------------------------------------------------------------------
diff --git a/indexer-artifact/src/main/java/org/apache/maven/index/artifact/DefaultArtifactPackagingMapper.java b/indexer-artifact/src/main/java/org/apache/maven/index/artifact/DefaultArtifactPackagingMapper.java
index 9f3caa5..604deb1 100644
--- a/indexer-artifact/src/main/java/org/apache/maven/index/artifact/DefaultArtifactPackagingMapper.java
+++ b/indexer-artifact/src/main/java/org/apache/maven/index/artifact/DefaultArtifactPackagingMapper.java
@@ -25,10 +25,12 @@ import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
+import javax.inject.Named;
+import javax.inject.Singleton;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.util.IOUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
/**
* A very simple artifact packaging mapper, that has everything for quick-start wired in this class. Also, it takes into
@@ -37,14 +39,16 @@ import org.codehaus.plexus.util.IOUtil;
*
* @author cstamas
*/
-@Component( role = ArtifactPackagingMapper.class )
+@Singleton
+@Named
public class DefaultArtifactPackagingMapper
- extends AbstractLogEnabled
implements ArtifactPackagingMapper
{
public static final String MAPPING_PROPERTIES_FILE = "packaging2extension-mapping.properties";
+ private final Logger logger = LoggerFactory.getLogger( getClass() );
+
private File propertiesFile;
private volatile Map<String, String> packaging2extensionMapping;
@@ -91,7 +95,7 @@ public class DefaultArtifactPackagingMapper
if ( propertiesFile != null && propertiesFile.exists() )
{
- getLogger().info( "Found user artifact packaging mapping file, applying it..." );
+ logger.info( "Found user artifact packaging mapping file, applying it..." );
Properties userMappings = new Properties();
@@ -111,7 +115,7 @@ public class DefaultArtifactPackagingMapper
userMappings.getProperty( key.toString() ) );
}
- getLogger().info(
+ logger.info(
propertiesFile.getAbsolutePath()
+ " user artifact packaging mapping file contained "
+ userMappings.keySet().size() + " mappings, applied them all succesfully." );
@@ -119,7 +123,7 @@ public class DefaultArtifactPackagingMapper
}
catch ( IOException e )
{
- getLogger().warn(
+ logger.warn(
"Got IO exception during read of file: " + propertiesFile.getAbsolutePath() );
}
finally
@@ -131,7 +135,7 @@ public class DefaultArtifactPackagingMapper
else
{
// make it silent if using defaults
- getLogger().debug(
+ logger.debug(
"User artifact packaging mappings file not found, will work with defaults..." );
}
}
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-artifact/src/main/java/org/apache/maven/index/artifact/M1GavCalculator.java
----------------------------------------------------------------------
diff --git a/indexer-artifact/src/main/java/org/apache/maven/index/artifact/M1GavCalculator.java b/indexer-artifact/src/main/java/org/apache/maven/index/artifact/M1GavCalculator.java
index be0615d..e7fc463 100644
--- a/indexer-artifact/src/main/java/org/apache/maven/index/artifact/M1GavCalculator.java
+++ b/indexer-artifact/src/main/java/org/apache/maven/index/artifact/M1GavCalculator.java
@@ -21,23 +21,25 @@ package org.apache.maven.index.artifact;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-
-import org.codehaus.plexus.component.annotations.Component;
+import javax.inject.Named;
+import javax.inject.Singleton;
/**
* An M1 <code>GavCalculator</code>. Heavily under-maintained.
- *
+ *
* @author Jason van Zyl
* @author Tamas Cservenak
*/
-@Component( role = GavCalculator.class, hint = "maven1" )
+@Singleton
+@Named( "maven1" )
public class M1GavCalculator
implements GavCalculator
{
private static final Pattern pat1 = Pattern.compile( "^([^0-9]+)-([0-9].+)\\.([^0-9]+)(\\.md5|\\.sha1){0,1}$" );
- private static final Pattern pat2 = Pattern.compile( "^([a-z0-9-_]+)-([0-9-].+)\\.([^0-9]+)(\\.md5|\\.sha1){0,1}$" );
+ private static final Pattern pat2 =
+ Pattern.compile( "^([a-z0-9-_]+)-([0-9-].+)\\.([^0-9]+)(\\.md5|\\.sha1){0,1}$" );
public Gav pathToGav( String str )
{
@@ -111,7 +113,7 @@ public class M1GavCalculator
}
return new Gav( g, a, version, classifier, ext, null, null, n, checksum, checksumType, false,
- null );
+ null );
}
else
{
@@ -126,7 +128,7 @@ public class M1GavCalculator
}
return new Gav( g, a, version, classifier, ext, null, null, n, checksum, checksumType,
- false, null );
+ false, null );
}
else
{
@@ -146,7 +148,7 @@ public class M1GavCalculator
/**
* // XXX this is not accurate, m1 is using packaging as an artifact folder name.
- *
+ *
* @see org.apache.maven.artifact.repository.layout.LegacyRepositoryLayout#pathOf(org.apache.maven.artifact.Artifact)
* @see org.apache.maven.artifact.handler.DefaultArtifactHandler#getDirectory()
*/
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-artifact/src/main/java/org/apache/maven/index/artifact/M2GavCalculator.java
----------------------------------------------------------------------
diff --git a/indexer-artifact/src/main/java/org/apache/maven/index/artifact/M2GavCalculator.java b/indexer-artifact/src/main/java/org/apache/maven/index/artifact/M2GavCalculator.java
index 8ec1570..a5c6531 100644
--- a/indexer-artifact/src/main/java/org/apache/maven/index/artifact/M2GavCalculator.java
+++ b/indexer-artifact/src/main/java/org/apache/maven/index/artifact/M2GavCalculator.java
@@ -21,19 +21,21 @@ package org.apache.maven.index.artifact;
import java.text.ParseException;
import java.text.SimpleDateFormat;
-
-import org.codehaus.plexus.component.annotations.Component;
+import javax.inject.Named;
+import javax.inject.Singleton;
/**
* An M2 <code>GavCalculator</code>.
- *
+ *
* @author Jason van Zyl
* @author Tamas Cservenak
*/
-@Component( role = GavCalculator.class, hint = "maven2" )
+@Singleton
+@Named( "maven2" )
public class M2GavCalculator
implements GavCalculator
{
+
public Gav pathToGav( String str )
{
try
@@ -100,12 +102,12 @@ public class M2GavCalculator
if ( snapshot )
{
return getSnapshotGav( s, vEndPos, groupId, artifactId, version, fileName, checksum, signature,
- checksumType, signatureType );
+ checksumType, signatureType );
}
else
{
return getReleaseGav( s, vEndPos, groupId, artifactId, version, fileName, checksum, signature,
- checksumType, signatureType );
+ checksumType, signatureType );
}
}
catch ( NumberFormatException e )
@@ -119,8 +121,8 @@ public class M2GavCalculator
}
private Gav getReleaseGav( String s, int vEndPos, String groupId, String artifactId, String version,
- String fileName, boolean checksum, boolean signature, Gav.HashType checksumType,
- Gav.SignatureType signatureType )
+ String fileName, boolean checksum, boolean signature, Gav.HashType checksumType,
+ Gav.SignatureType signatureType )
{
if ( !fileName.startsWith( artifactId + "-" + version + "." )
&& !fileName.startsWith( artifactId + "-" + version + "-" ) )
@@ -146,12 +148,12 @@ public class M2GavCalculator
String classifier = tail.charAt( 0 ) == '-' ? tail.substring( 1, nExtPos ) : null;
return new Gav( groupId, artifactId, version, classifier, ext, null, null, fileName, checksum, checksumType,
- signature, signatureType );
+ signature, signatureType );
}
private Gav getSnapshotGav( String s, int vEndPos, String groupId, String artifactId, String version,
- String fileName, boolean checksum, boolean signature, Gav.HashType checksumType,
- Gav.SignatureType signatureType )
+ String fileName, boolean checksum, boolean signature, Gav.HashType checksumType,
+ Gav.SignatureType signatureType )
{
Integer snapshotBuildNo = null;
@@ -229,7 +231,7 @@ public class M2GavCalculator
}
return new Gav( groupId, artifactId, version, classifier, ext, snapshotBuildNo, snapshotTimestamp, fileName,
- checksum, checksumType, signature, signatureType );
+ checksum, checksumType, signature, signatureType );
}
public String gavToPath( Gav gav )
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-cli/pom.xml
----------------------------------------------------------------------
diff --git a/indexer-cli/pom.xml b/indexer-cli/pom.xml
index 941720e..5b3890c 100644
--- a/indexer-cli/pom.xml
+++ b/indexer-cli/pom.xml
@@ -49,7 +49,17 @@ under the License.
<version>${project.version}</version>
</dependency>
- <!-- Plexus (as compile since it has to end up in CLI) -->
+ <!-- SISU + Plexus (as compile since it has to end up in CLI) -->
+ <dependency>
+ <groupId>javax.inject</groupId>
+ <artifactId>javax.inject</artifactId>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.sonatype.sisu</groupId>
+ <artifactId>sisu-inject-bean</artifactId>
+ <scope>compile</scope>
+ </dependency>
<dependency>
<groupId>org.sonatype.sisu</groupId>
<artifactId>sisu-inject-plexus</artifactId>
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/pom.xml
----------------------------------------------------------------------
diff --git a/indexer-core/pom.xml b/indexer-core/pom.xml
index 02489c3..23c164d 100644
--- a/indexer-core/pom.xml
+++ b/indexer-core/pom.xml
@@ -42,11 +42,11 @@ under the License.
</dependency>
<dependency>
<groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-component-annotations</artifactId>
+ <artifactId>plexus-utils</artifactId>
</dependency>
<dependency>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-utils</artifactId>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
</dependency>
<!-- Lucene -->
@@ -82,6 +82,14 @@ under the License.
<!-- Plexus (as provided since you have to provide it when embedding MI) -->
<dependency>
+ <groupId>javax.inject</groupId>
+ <artifactId>javax.inject</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.sonatype.sisu</groupId>
+ <artifactId>sisu-inject-bean</artifactId>
+ </dependency>
+ <dependency>
<groupId>org.sonatype.sisu</groupId>
<artifactId>sisu-inject-plexus</artifactId>
</dependency>
@@ -106,6 +114,10 @@ under the License.
<artifactId>plexus-container-default</artifactId>
</exclusion>
<exclusion>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-component-annotations</artifactId>
+ </exclusion>
+ <exclusion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core</artifactId>
</exclusion>
@@ -189,6 +201,11 @@ under the License.
<artifactId>wagon-http-lightweight</artifactId>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-simple</artifactId>
+ <scope>test</scope>
+ </dependency>
</dependencies>
<build>
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/ComponentSupport.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/ComponentSupport.java b/indexer-core/src/main/java/org/apache/maven/index/ComponentSupport.java
new file mode 100644
index 0000000..9a3927c
--- /dev/null
+++ b/indexer-core/src/main/java/org/apache/maven/index/ComponentSupport.java
@@ -0,0 +1,31 @@
+package org.apache.maven.index;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Simple support for components.
+ *
+ * @author cstamas
+ * @since 5.1
+ */
+public abstract class ComponentSupport
+{
+
+ private final Logger logger;
+
+ protected ComponentSupport()
+ {
+ this.logger = createLogger();
+ }
+
+ protected Logger createLogger()
+ {
+ return LoggerFactory.getLogger( getClass() );
+ }
+
+ protected Logger getLogger()
+ {
+ return logger;
+ }
+}
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/DefaultArtifactContextProducer.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/DefaultArtifactContextProducer.java b/indexer-core/src/main/java/org/apache/maven/index/DefaultArtifactContextProducer.java
index f4d6b13..a6a3aa7 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/DefaultArtifactContextProducer.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/DefaultArtifactContextProducer.java
@@ -20,6 +20,9 @@ package org.apache.maven.index;
*/
import java.io.File;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.maven.index.artifact.ArtifactPackagingMapper;
import org.apache.maven.index.artifact.Gav;
@@ -29,8 +32,6 @@ import org.apache.maven.index.locator.GavHelpedLocator;
import org.apache.maven.index.locator.Locator;
import org.apache.maven.index.locator.MetadataLocator;
import org.apache.maven.index.locator.PomLocator;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.util.StringUtils;
/**
@@ -39,17 +40,24 @@ import org.codehaus.plexus.util.StringUtils;
* @author Tamas Cservenak
* @author Eugene Kuleshov
*/
-@Component( role = ArtifactContextProducer.class )
+@Singleton
+@Named
public class DefaultArtifactContextProducer
+ extends ComponentSupport
implements ArtifactContextProducer
{
- @Requirement
- private ArtifactPackagingMapper mapper;
+ private final ArtifactPackagingMapper mapper;
private GavHelpedLocator pl = new PomLocator();
private Locator ml = new MetadataLocator();
+ @Inject
+ public DefaultArtifactContextProducer( final ArtifactPackagingMapper mapper )
+ {
+ this.mapper = mapper;
+ }
+
/**
* Get ArtifactContext for given pom or artifact (jar, war, etc). A file can be
*/
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexer.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexer.java b/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexer.java
index ac7ec24..e92a41a 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexer.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexer.java
@@ -28,6 +28,9 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.queryParser.ParseException;
import org.apache.lucene.search.Query;
@@ -40,49 +43,55 @@ import org.apache.maven.index.context.MergedIndexingContext;
import org.apache.maven.index.expr.SearchExpression;
import org.apache.maven.index.expr.SourcedSearchExpression;
import org.apache.maven.index.util.IndexCreatorSorter;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
+import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.IOUtil;
/**
* A default {@link Indexer} implementation.
- *
+ *
* @author Tamas Cservenak
*/
-@Component( role = Indexer.class )
+@Singleton
+@Named
public class DefaultIndexer
- extends AbstractLogEnabled
+ extends ComponentSupport
implements Indexer
{
- @Requirement
- private SearchEngine searcher;
- @Requirement
- private IndexerEngine indexerEngine;
+ private final SearchEngine searcher;
- @Requirement
- private QueryCreator queryCreator;
+ private final IndexerEngine indexerEngine;
- // ----------------------------------------------------------------------------
+ private final QueryCreator queryCreator;
+
+ @Inject
+ public DefaultIndexer( final SearchEngine searcher, final IndexerEngine indexerEngine,
+ final QueryCreator queryCreator )
+ {
+ this.searcher = searcher;
+ this.indexerEngine = indexerEngine;
+ this.queryCreator = queryCreator;
+ }
+
+// ----------------------------------------------------------------------------
// Contexts
// ----------------------------------------------------------------------------
public IndexingContext createIndexingContext( String id, String repositoryId, File repository, File indexDirectory,
- String repositoryUrl, String indexUpdateUrl, boolean searchable,
- boolean reclaim, List<? extends IndexCreator> indexers )
+ String repositoryUrl, String indexUpdateUrl, boolean searchable,
+ boolean reclaim, List<? extends IndexCreator> indexers )
throws IOException, ExistingLuceneIndexMismatchException, IllegalArgumentException
{
final IndexingContext context =
new DefaultIndexingContext( id, repositoryId, repository, indexDirectory, repositoryUrl, indexUpdateUrl,
- IndexCreatorSorter.sort( indexers ), reclaim );
+ IndexCreatorSorter.sort( indexers ), reclaim );
context.setSearchable( searchable );
return context;
}
public IndexingContext createMergedIndexingContext( String id, String repositoryId, File repository,
- File indexDirectory, boolean searchable,
- ContextMemberProvider membersProvider )
+ File indexDirectory, boolean searchable,
+ ContextMemberProvider membersProvider )
throws IOException
{
IndexingContext context =
@@ -137,7 +146,7 @@ public class DefaultIndexer
{
if ( request.getContexts().isEmpty() )
{
- return new FlatSearchResponse( request.getQuery(), 0, Collections.<ArtifactInfo> emptySet() );
+ return new FlatSearchResponse( request.getQuery(), 0, Collections.<ArtifactInfo>emptySet() );
}
else
{
@@ -163,7 +172,8 @@ public class DefaultIndexer
{
if ( request.getContexts().isEmpty() )
{
- return new GroupedSearchResponse( request.getQuery(), 0, Collections.<String, ArtifactInfoGroup> emptyMap() );
+ return new GroupedSearchResponse( request.getQuery(), 0,
+ Collections.<String, ArtifactInfoGroup>emptyMap() );
}
else
{
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java b/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java
index 6efe8d9..8dd15d8 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java
@@ -23,6 +23,8 @@ import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
@@ -34,17 +36,16 @@ import org.apache.lucene.search.TermQuery;
import org.apache.lucene.search.TopDocs;
import org.apache.maven.index.context.IndexingContext;
import org.apache.maven.index.creator.MinimalArtifactInfoIndexCreator;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
/**
* A default {@link IndexerEngine} implementation.
*
* @author Tamas Cservenak
*/
-@Component( role = IndexerEngine.class )
+@Singleton
+@Named
public class DefaultIndexerEngine
- extends AbstractLogEnabled
+ extends ComponentSupport
implements IndexerEngine
{
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/DefaultNexusIndexer.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/DefaultNexusIndexer.java b/indexer-core/src/main/java/org/apache/maven/index/DefaultNexusIndexer.java
index e9603c5..aced0aa 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/DefaultNexusIndexer.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/DefaultNexusIndexer.java
@@ -26,6 +26,9 @@ import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.queryParser.ParseException;
import org.apache.lucene.search.Query;
@@ -42,9 +45,6 @@ import org.apache.maven.index.context.StaticContextMemberProvider;
import org.apache.maven.index.context.UnsupportedExistingLuceneIndexException;
import org.apache.maven.index.expr.SearchExpression;
import org.apache.maven.index.util.IndexCreatorSorter;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.util.FileUtils;
/**
@@ -58,26 +58,33 @@ import org.codehaus.plexus.util.FileUtils;
* it's behavior less intuitive.
*/
@Deprecated
-@Component( role = NexusIndexer.class )
+@Singleton
+@Named
public class DefaultNexusIndexer
- extends AbstractLogEnabled
+ extends ComponentSupport
implements NexusIndexer
{
- @Requirement
- private Indexer indexer;
+ private final Indexer indexer;
- @Requirement
- private Scanner scanner;
+ private final Scanner scanner;
- @Requirement
- private IndexerEngine indexerEngine;
+ private final IndexerEngine indexerEngine;
- @Requirement
- private QueryCreator queryCreator;
+ private final QueryCreator queryCreator;
private final Map<String, IndexingContext> indexingContexts = new ConcurrentHashMap<String, IndexingContext>();
+ @Inject
+ public DefaultNexusIndexer( final Indexer indexer, final Scanner scanner, final IndexerEngine indexerEngine,
+ final QueryCreator queryCreator )
+ {
+ this.indexer = indexer;
+ this.scanner = scanner;
+ this.indexerEngine = indexerEngine;
+ this.queryCreator = queryCreator;
+ }
+
// ----------------------------------------------------------------------------
// Contexts
// ----------------------------------------------------------------------------
@@ -87,6 +94,7 @@ public class DefaultNexusIndexer
indexingContexts.put( context.getId(), context );
}
+ ;
public IndexingContext addIndexingContext( String id, String repositoryId, File repository, File indexDirectory,
String repositoryUrl, String indexUpdateUrl,
List<? extends IndexCreator> indexers )
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java b/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java
index aae6040..0539a8d 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java
@@ -21,6 +21,8 @@ package org.apache.maven.index;
import java.io.IOException;
import java.io.StringReader;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.index.Term;
@@ -39,13 +41,10 @@ import org.apache.maven.index.creator.JarFileContentsIndexCreator;
import org.apache.maven.index.creator.MinimalArtifactInfoIndexCreator;
import org.apache.maven.index.expr.SearchExpression;
import org.apache.maven.index.expr.SearchTyped;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
-import org.codehaus.plexus.logging.Logger;
/**
* A default {@link QueryCreator} constructs Lucene query for provided query text.
- * <p>
+ * <p/>
* By default wildcards are created such as query text matches beginning of the field value or beginning of the
* class/package name segment for {@link ArtifactInfo#NAMES NAMES} field. But it can be controlled by using special
* markers:
@@ -60,22 +59,15 @@ import org.codehaus.plexus.logging.Logger;
* <li>*junit - matches junit, junit-foo and foo-junit</li>
* <li>^junit$ - matches junit, but not junit-foo, nor foo-junit</li>
* </ul>
- *
+ *
* @author Eugene Kuleshov
*/
-@Component( role = QueryCreator.class )
+@Singleton
+@Named
public class DefaultQueryCreator
+ extends ComponentSupport
implements QueryCreator
{
- @Requirement
- private Logger logger;
-
- protected Logger getLogger()
- {
- return logger;
- }
-
- // ==
public IndexerField selectIndexerField( final Field field, final SearchType type )
{
@@ -150,7 +142,8 @@ public class DefaultQueryCreator
if ( query.contains( "*" ) && query.matches( ".*(\\.|-|_).*" ) )
{
query =
- query.toLowerCase().replaceAll( "\\*", "X" ).replaceAll( "\\.|-|_", " " ).replaceAll( "X", "*" );
+ query.toLowerCase().replaceAll( "\\*", "X" ).replaceAll( "\\.|-|_", " " ).replaceAll( "X",
+ "*" );
}
}
@@ -178,7 +171,7 @@ public class DefaultQueryCreator
// ==
public Query constructQuery( final Field field, final IndexerField indexerField, final String query,
- final SearchType type )
+ final SearchType type )
throws ParseException
{
if ( indexerField == null )
@@ -233,7 +226,7 @@ public class DefaultQueryCreator
if ( query.startsWith( "/" ) )
{
return new TermQuery( new Term( indexerField.getKey(), query.toLowerCase().replaceAll( "\\.",
- "/" ) ) );
+ "/" ) ) );
}
else
{
@@ -318,7 +311,8 @@ public class DefaultQueryCreator
{
qpQuery =
qpQuery.toLowerCase().replaceAll( "\\*", "X" ).replaceAll( "\\.|-|_|/", " " ).replaceAll( "X",
- "*" ).replaceAll( " \\* ", "" ).replaceAll( "^\\* ", "" ).replaceAll( " \\*$", "" );
+ "*" ).replaceAll(
+ " \\* ", "" ).replaceAll( "^\\* ", "" ).replaceAll( " \\*$", "" );
}
// "fix" it with trailing "*" if not there, but only if it not ends with a space
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/DefaultScanner.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/DefaultScanner.java b/indexer-core/src/main/java/org/apache/maven/index/DefaultScanner.java
index 5d7a9f1..5c82221 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/DefaultScanner.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/DefaultScanner.java
@@ -24,25 +24,32 @@ import java.util.Arrays;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.maven.index.context.IndexingContext;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
/**
* A default repository scanner for Maven 2 repository.
- *
+ *
* @author Jason Van Zyl
* @author Tamas Cservenak
*/
-@Component( role = Scanner.class )
+@Singleton
+@Named
public class DefaultScanner
- extends AbstractLogEnabled
+ extends ComponentSupport
implements Scanner
{
- @Requirement
- private ArtifactContextProducer artifactContextProducer;
+
+ private final ArtifactContextProducer artifactContextProducer;
+
+ @Inject
+ public DefaultScanner( final ArtifactContextProducer artifactContextProducer )
+ {
+ this.artifactContextProducer = artifactContextProducer;
+ }
public ScanningResult scan( ScanningRequest request )
{
@@ -119,6 +126,7 @@ public class DefaultScanner
private static class ScannerFileComparator
implements Comparator<File>
{
+
public int compare( File o1, File o2 )
{
if ( o1.getName().endsWith( ".pom" ) && !o2.getName().endsWith( ".pom" ) )
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java b/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java
index 5a277fc..6266dd6 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java
@@ -33,7 +33,6 @@ import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.TermQuery;
import org.apache.lucene.search.TopScoreDocCollector;
import org.apache.maven.index.context.IndexingContext;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
/**
* A default scanning listener
@@ -41,7 +40,6 @@ import org.codehaus.plexus.logging.AbstractLogEnabled;
* @author Eugene Kuleshov
*/
public class DefaultScannerListener
- extends AbstractLogEnabled
implements ArtifactScanningListener
{
private final IndexingContext context;
@@ -206,7 +204,7 @@ public class DefaultScannerListener
}
private void initialize( IndexingContext ctx )
- throws IOException, CorruptIndexException
+ throws IOException
{
final IndexSearcher indexSearcher = ctx.acquireIndexSearcher();
try
@@ -317,4 +315,4 @@ public class DefaultScannerListener
result.setDeletedFiles( deleted );
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/DefaultSearchEngine.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/DefaultSearchEngine.java b/indexer-core/src/main/java/org/apache/maven/index/DefaultSearchEngine.java
index d7847bf..e93ed64 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/DefaultSearchEngine.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/DefaultSearchEngine.java
@@ -29,6 +29,8 @@ import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
import java.util.TreeSet;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.document.Document;
import org.apache.lucene.search.IndexSearcher;
@@ -39,8 +41,6 @@ import org.apache.maven.index.context.IndexUtils;
import org.apache.maven.index.context.IndexingContext;
import org.apache.maven.index.context.NexusIndexMultiReader;
import org.apache.maven.index.context.NexusIndexMultiSearcher;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
/**
* A default search engine implementation
@@ -48,9 +48,10 @@ import org.codehaus.plexus.logging.AbstractLogEnabled;
* @author Eugene Kuleshov
* @author Tamas Cservenak
*/
-@Component( role = SearchEngine.class )
+@Singleton
+@Named
public class DefaultSearchEngine
- extends AbstractLogEnabled
+ extends ComponentSupport
implements SearchEngine
{
@Deprecated
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/archetype/AbstractArchetypeDataSource.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/archetype/AbstractArchetypeDataSource.java b/indexer-core/src/main/java/org/apache/maven/index/archetype/AbstractArchetypeDataSource.java
index f6ec695..07fd618 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/archetype/AbstractArchetypeDataSource.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/archetype/AbstractArchetypeDataSource.java
@@ -30,21 +30,25 @@ import org.apache.maven.archetype.catalog.ArchetypeCatalog;
import org.apache.maven.archetype.source.ArchetypeDataSource;
import org.apache.maven.archetype.source.ArchetypeDataSourceException;
import org.apache.maven.index.ArtifactInfo;
+import org.apache.maven.index.ComponentSupport;
import org.apache.maven.index.FlatSearchRequest;
import org.apache.maven.index.FlatSearchResponse;
import org.apache.maven.index.Indexer;
import org.apache.maven.index.MAVEN;
import org.apache.maven.index.context.IndexingContext;
import org.apache.maven.index.expr.SourcedSearchExpression;
-import org.codehaus.plexus.component.annotations.Requirement;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
public abstract class AbstractArchetypeDataSource
- extends AbstractLogEnabled
+ extends ComponentSupport
implements ArchetypeDataSource
{
- @Requirement
- private Indexer indexer;
+
+ private final Indexer indexer;
+
+ protected AbstractArchetypeDataSource( final Indexer indexer )
+ {
+ this.indexer = indexer;
+ }
public ArchetypeCatalog getArchetypeCatalog( final Properties properties )
throws ArchetypeDataSourceException
@@ -53,7 +57,8 @@ public abstract class AbstractArchetypeDataSource
try
{
final Map<String, String> repositories = getRepositoryMap();
- final Query pq = indexer.constructQuery( MAVEN.PACKAGING, new SourcedSearchExpression( "maven-archetype" ) );
+ final Query pq =
+ indexer.constructQuery( MAVEN.PACKAGING, new SourcedSearchExpression( "maven-archetype" ) );
final FlatSearchRequest searchRequest = new FlatSearchRequest( pq );
searchRequest.setContexts( getIndexingContexts() );
final FlatSearchResponse searchResponse = indexer.searchFlat( searchRequest );
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/archetype/NexusArchetypeDataSource.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/archetype/NexusArchetypeDataSource.java b/indexer-core/src/main/java/org/apache/maven/index/archetype/NexusArchetypeDataSource.java
index 005ef9c..6b3a2a0 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/archetype/NexusArchetypeDataSource.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/archetype/NexusArchetypeDataSource.java
@@ -21,26 +21,35 @@ package org.apache.maven.index.archetype;
import java.util.ArrayList;
import java.util.List;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Singleton;
-import org.apache.maven.archetype.source.ArchetypeDataSource;
+import org.apache.maven.index.Indexer;
import org.apache.maven.index.NexusIndexer;
import org.apache.maven.index.context.IndexingContext;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
/**
* Nexus Archetype Data Source.
- *
+ *
* @author Eugene Kuleshov
* @deprecated Extend {@link AbstractArchetypeDataSource} instead, and make it suit your case.
*/
@Deprecated
-@Component( role = ArchetypeDataSource.class, hint = "nexus" )
+@Singleton
+@Named( "nexus" )
public class NexusArchetypeDataSource
extends AbstractArchetypeDataSource
{
- @Requirement
- private NexusIndexer nexusIndexer;
+
+ private final NexusIndexer nexusIndexer;
+
+ @Inject
+ public NexusArchetypeDataSource( final Indexer indexer, final NexusIndexer nexusIndexer )
+ {
+ super( indexer );
+ this.nexusIndexer = nexusIndexer;
+ }
@Override
protected List<IndexingContext> getIndexingContexts()
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/creator/AbstractIndexCreator.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/creator/AbstractIndexCreator.java b/indexer-core/src/main/java/org/apache/maven/index/creator/AbstractIndexCreator.java
index 39dbe47..4d420c9 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/creator/AbstractIndexCreator.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/creator/AbstractIndexCreator.java
@@ -23,8 +23,8 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import org.apache.maven.index.ComponentSupport;
import org.apache.maven.index.context.IndexCreator;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
/**
* An abstract base class for {@link IndexCreator} implementations.
@@ -32,7 +32,7 @@ import org.codehaus.plexus.logging.AbstractLogEnabled;
* @author Jason van Zyl
*/
public abstract class AbstractIndexCreator
- extends AbstractLogEnabled
+ extends ComponentSupport
implements IndexCreator
{
private final String id;
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/creator/JarFileContentsIndexCreator.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/creator/JarFileContentsIndexCreator.java b/indexer-core/src/main/java/org/apache/maven/index/creator/JarFileContentsIndexCreator.java
index e43dbd4..dcad12d 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/creator/JarFileContentsIndexCreator.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/creator/JarFileContentsIndexCreator.java
@@ -24,6 +24,8 @@ import java.io.IOException;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field.Index;
@@ -33,17 +35,16 @@ import org.apache.maven.index.ArtifactInfo;
import org.apache.maven.index.IndexerField;
import org.apache.maven.index.IndexerFieldVersion;
import org.apache.maven.index.MAVEN;
-import org.apache.maven.index.context.IndexCreator;
import org.apache.maven.index.util.zip.ZipFacade;
import org.apache.maven.index.util.zip.ZipHandle;
-import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.util.StringUtils;
/**
* An index creator used to index Java class names from a Maven artifact (JAR or WAR for now). Will open up the file and
* collect all the class names from it.
*/
-@Component( role = IndexCreator.class, hint = JarFileContentsIndexCreator.ID )
+@Singleton
+@Named( JarFileContentsIndexCreator.ID )
public class JarFileContentsIndexCreator
extends AbstractIndexCreator
implements LegacyDocumentUpdater
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/creator/MavenArchetypeArtifactInfoIndexCreator.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/creator/MavenArchetypeArtifactInfoIndexCreator.java b/indexer-core/src/main/java/org/apache/maven/index/creator/MavenArchetypeArtifactInfoIndexCreator.java
index 350d015..f1d6354 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/creator/MavenArchetypeArtifactInfoIndexCreator.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/creator/MavenArchetypeArtifactInfoIndexCreator.java
@@ -24,15 +24,15 @@ import java.io.IOException;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.document.Document;
import org.apache.maven.index.ArtifactContext;
import org.apache.maven.index.ArtifactInfo;
import org.apache.maven.index.IndexerField;
-import org.apache.maven.index.context.IndexCreator;
import org.apache.maven.index.util.zip.ZipFacade;
import org.apache.maven.index.util.zip.ZipHandle;
-import org.codehaus.plexus.component.annotations.Component;
/**
* A Maven Archetype index creator used to detect and correct the artifact packaging to "maven-archetype" if the
@@ -42,7 +42,8 @@ import org.codehaus.plexus.component.annotations.Component;
*
* @author cstamas
*/
-@Component( role = IndexCreator.class, hint = MavenArchetypeArtifactInfoIndexCreator.ID )
+@Singleton
+@Named( MavenArchetypeArtifactInfoIndexCreator.ID )
public class MavenArchetypeArtifactInfoIndexCreator
extends AbstractIndexCreator
{
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/creator/MavenPluginArtifactInfoIndexCreator.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/creator/MavenPluginArtifactInfoIndexCreator.java b/indexer-core/src/main/java/org/apache/maven/index/creator/MavenPluginArtifactInfoIndexCreator.java
index 48e1a59..57c9215 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/creator/MavenPluginArtifactInfoIndexCreator.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/creator/MavenPluginArtifactInfoIndexCreator.java
@@ -27,6 +27,8 @@ import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field.Index;
@@ -36,34 +38,37 @@ import org.apache.maven.index.ArtifactInfo;
import org.apache.maven.index.IndexerField;
import org.apache.maven.index.IndexerFieldVersion;
import org.apache.maven.index.MAVEN;
-import org.apache.maven.index.context.IndexCreator;
import org.apache.maven.index.util.zip.ZipFacade;
import org.apache.maven.index.util.zip.ZipHandle;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.configuration.PlexusConfiguration;
-import org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration;
+import org.codehaus.plexus.util.xml.Xpp3Dom;
import org.codehaus.plexus.util.xml.Xpp3DomBuilder;
/**
* A Maven Plugin index creator used to provide information about Maven Plugins. It will collect the plugin prefix and
* the goals the plugin provides. Also, the Lucene document and the returned ArtifactInfo will be correctly filled with
* these information.
- *
+ *
* @author cstamas
*/
-@Component( role = IndexCreator.class, hint = MavenPluginArtifactInfoIndexCreator.ID )
+@Singleton
+@Named( MavenPluginArtifactInfoIndexCreator.ID )
public class MavenPluginArtifactInfoIndexCreator
extends AbstractIndexCreator
{
+
public static final String ID = "maven-plugin";
private static final String MAVEN_PLUGIN_PACKAGING = "maven-plugin";
public static final IndexerField FLD_PLUGIN_PREFIX = new IndexerField( MAVEN.PLUGIN_PREFIX, IndexerFieldVersion.V1,
- "px", "MavenPlugin prefix (as keyword, stored)", Store.YES, Index.NOT_ANALYZED );
+ "px",
+ "MavenPlugin prefix (as keyword, stored)",
+ Store.YES, Index.NOT_ANALYZED );
public static final IndexerField FLD_PLUGIN_GOALS = new IndexerField( MAVEN.PLUGIN_GOALS, IndexerFieldVersion.V1,
- "gx", "MavenPlugin goals (as keyword, stored)", Store.YES, Index.ANALYZED );
+ "gx",
+ "MavenPlugin goals (as keyword, stored)",
+ Store.YES, Index.ANALYZED );
public MavenPluginArtifactInfoIndexCreator()
{
@@ -77,7 +82,8 @@ public class MavenPluginArtifactInfoIndexCreator
ArtifactInfo ai = ac.getArtifactInfo();
// we need the file to perform these checks, and those may be only JARs
- if ( artifact != null && MAVEN_PLUGIN_PACKAGING.equals( ai.packaging ) && artifact.getName().endsWith( ".jar" ) )
+ if ( artifact != null && MAVEN_PLUGIN_PACKAGING.equals( ai.packaging ) && artifact.getName().endsWith(
+ ".jar" ) )
{
// TODO: recheck, is the following true? "Maven plugins and Maven Archetypes can be only JARs?"
@@ -103,16 +109,16 @@ public class MavenPluginArtifactInfoIndexCreator
try
{
// here the reader is closed
- PlexusConfiguration plexusConfig =
- new XmlPlexusConfiguration( Xpp3DomBuilder.build( new InputStreamReader( is ) ) );
+ Xpp3Dom plexusConfig =
+ Xpp3DomBuilder.build( new InputStreamReader( is ) );
ai.prefix = plexusConfig.getChild( "goalPrefix" ).getValue();
ai.goals = new ArrayList<String>();
- PlexusConfiguration[] mojoConfigs = plexusConfig.getChild( "mojos" ).getChildren( "mojo" );
+ Xpp3Dom[] mojoConfigs = plexusConfig.getChild( "mojos" ).getChildren( "mojo" );
- for ( PlexusConfiguration mojoConfig : mojoConfigs )
+ for ( Xpp3Dom mojoConfig : mojoConfigs )
{
ai.goals.add( mojoConfig.getChild( "goal" ).getValue() );
}
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/creator/MinimalArtifactInfoIndexCreator.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/creator/MinimalArtifactInfoIndexCreator.java b/indexer-core/src/main/java/org/apache/maven/index/creator/MinimalArtifactInfoIndexCreator.java
index b9f4837..404d036 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/creator/MinimalArtifactInfoIndexCreator.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/creator/MinimalArtifactInfoIndexCreator.java
@@ -23,6 +23,8 @@ import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.Collection;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
@@ -36,14 +38,12 @@ import org.apache.maven.index.IndexerFieldVersion;
import org.apache.maven.index.MAVEN;
import org.apache.maven.index.NEXUS;
import org.apache.maven.index.artifact.Gav;
-import org.apache.maven.index.context.IndexCreator;
import org.apache.maven.index.locator.JavadocLocator;
import org.apache.maven.index.locator.Locator;
import org.apache.maven.index.locator.Sha1Locator;
import org.apache.maven.index.locator.SignatureLocator;
import org.apache.maven.index.locator.SourcesLocator;
import org.apache.maven.model.Model;
-import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.StringUtils;
@@ -55,7 +55,8 @@ import org.codehaus.plexus.util.StringUtils;
*
* @author cstamas
*/
-@Component( role = IndexCreator.class, hint = MinimalArtifactInfoIndexCreator.ID )
+@Singleton
+@Named( MinimalArtifactInfoIndexCreator.ID )
public class MinimalArtifactInfoIndexCreator
extends AbstractIndexCreator
implements LegacyDocumentUpdater
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/creator/OsgiArtifactIndexCreator.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/creator/OsgiArtifactIndexCreator.java b/indexer-core/src/main/java/org/apache/maven/index/creator/OsgiArtifactIndexCreator.java
index 41c1451..90b61e6 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/creator/OsgiArtifactIndexCreator.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/creator/OsgiArtifactIndexCreator.java
@@ -19,6 +19,16 @@ package org.apache.maven.index.creator;
* under the License.
*/
+import java.io.File;
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
+import java.util.jar.Attributes;
+import java.util.jar.Manifest;
+import javax.inject.Named;
+import javax.inject.Singleton;
+
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.maven.index.ArtifactContext;
@@ -26,20 +36,10 @@ import org.apache.maven.index.ArtifactInfo;
import org.apache.maven.index.IndexerField;
import org.apache.maven.index.IndexerFieldVersion;
import org.apache.maven.index.OSGI;
-import org.apache.maven.index.context.IndexCreator;
import org.apache.maven.index.util.zip.ZipFacade;
import org.apache.maven.index.util.zip.ZipHandle;
-import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.util.StringUtils;
-import java.io.File;
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.List;
-import java.util.jar.Attributes;
-import java.util.jar.Manifest;
-
/**
* This indexCreator will index some OSGI metadatas.
* <br/>
@@ -58,7 +58,8 @@ import java.util.jar.Manifest;
* @author Olivier Lamy
* @since 4.1.2
*/
-@Component( role = IndexCreator.class, hint = OsgiArtifactIndexCreator.ID )
+@Singleton
+@Named( OsgiArtifactIndexCreator.ID )
public class OsgiArtifactIndexCreator
extends AbstractIndexCreator
{
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java b/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java
index 1e518ce..caea2dc 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java
@@ -34,23 +34,26 @@ import java.util.Properties;
import java.util.Set;
import java.util.TimeZone;
import java.util.TreeMap;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.document.Document;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.search.IndexSearcher;
import org.apache.maven.index.ArtifactInfo;
+import org.apache.maven.index.ComponentSupport;
import org.apache.maven.index.context.IndexingContext;
import org.apache.maven.index.packer.IndexPackingRequest;
import org.apache.maven.index.updater.IndexUpdateRequest;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.util.StringUtils;
-@Component( role = IncrementalHandler.class )
+@Singleton
+@Named
public class DefaultIncrementalHandler
- extends AbstractLogEnabled
+ extends ComponentSupport
implements IncrementalHandler
{
+
public List<Integer> getIncrementalUpdates( IndexPackingRequest request, Properties properties )
throws IOException
{
@@ -81,7 +84,7 @@ public class DefaultIncrementalHandler
}
public List<String> loadRemoteIncrementalUpdates( IndexUpdateRequest request, Properties localProperties,
- Properties remoteProperties )
+ Properties remoteProperties )
throws IOException
{
List<String> filenames = null;
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java b/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java
index dd67ad3..abe1884 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java
@@ -32,6 +32,9 @@ import java.util.Properties;
import java.util.TimeZone;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
@@ -44,6 +47,7 @@ import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.store.IndexInput;
import org.apache.lucene.store.LockObtainFailedException;
import org.apache.maven.index.ArtifactInfo;
+import org.apache.maven.index.ComponentSupport;
import org.apache.maven.index.context.IndexCreator;
import org.apache.maven.index.context.IndexUtils;
import org.apache.maven.index.context.IndexingContext;
@@ -52,25 +56,29 @@ import org.apache.maven.index.context.NexusLegacyAnalyzer;
import org.apache.maven.index.creator.LegacyDocumentUpdater;
import org.apache.maven.index.incremental.IncrementalHandler;
import org.apache.maven.index.updater.IndexDataWriter;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.IOUtil;
/**
* A default {@link IndexPacker} implementation. Creates the properties, legacy index zip and new gz files.
- *
+ *
* @author Tamas Cservenak
* @author Eugene Kuleshov
*/
-@Component( role = IndexPacker.class )
+@Singleton
+@Named
public class DefaultIndexPacker
- extends AbstractLogEnabled
+ extends ComponentSupport
implements IndexPacker
{
- @Requirement( role = IncrementalHandler.class )
- IncrementalHandler incrementalHandler;
+
+ private final IncrementalHandler incrementalHandler;
+
+ @Inject
+ public DefaultIndexPacker( final IncrementalHandler incrementalHandler )
+ {
+ this.incrementalHandler = incrementalHandler;
+ }
public void packIndex( IndexPackingRequest request )
throws IOException, IllegalArgumentException
@@ -85,13 +93,13 @@ public class DefaultIndexPacker
if ( !request.getTargetDir().isDirectory() )
{
throw new IllegalArgumentException( //
- String.format( "Specified target path %s is not a directory",
- request.getTargetDir().getAbsolutePath() ) );
+ String.format( "Specified target path %s is not a directory",
+ request.getTargetDir().getAbsolutePath() ) );
}
if ( !request.getTargetDir().canWrite() )
{
throw new IllegalArgumentException( String.format( "Specified target path %s is not writtable",
- request.getTargetDir().getAbsolutePath() ) );
+ request.getTargetDir().getAbsolutePath() ) );
}
}
else
@@ -131,11 +139,11 @@ public class DefaultIndexPacker
{
File file =
new File( request.getTargetDir(), //
- IndexingContext.INDEX_FILE_PREFIX + "."
- + info.getProperty( IndexingContext.INDEX_CHUNK_COUNTER ) + ".gz" );
+ IndexingContext.INDEX_FILE_PREFIX + "."
+ + info.getProperty( IndexingContext.INDEX_CHUNK_COUNTER ) + ".gz" );
writeIndexData( request.getContext(), //
- chunk, file );
+ chunk, file );
if ( request.isCreateChecksumFiles() )
{
@@ -191,10 +199,10 @@ public class DefaultIndexPacker
if ( request.isCreateChecksumFiles() )
{
FileUtils.fileWrite( new File( v1File.getParentFile(), v1File.getName() + ".sha1" ).getAbsolutePath(),
- DigesterUtils.getSha1Digest( v1File ) );
+ DigesterUtils.getSha1Digest( v1File ) );
FileUtils.fileWrite( new File( v1File.getParentFile(), v1File.getName() + ".md5" ).getAbsolutePath(),
- DigesterUtils.getMd5Digest( v1File ) );
+ DigesterUtils.getMd5Digest( v1File ) );
}
}
@@ -479,7 +487,8 @@ public class DefaultIndexPacker
if ( request.isCreateChecksumFiles() )
{
FileUtils.fileWrite(
- new File( targetPropertyFile.getParentFile(), targetPropertyFile.getName() + ".sha1" ).getAbsolutePath(),
+ new File( targetPropertyFile.getParentFile(),
+ targetPropertyFile.getName() + ".sha1" ).getAbsolutePath(),
DigesterUtils.getSha1Digest( targetPropertyFile ) );
FileUtils.fileWrite(
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/treeview/DefaultIndexTreeView.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/treeview/DefaultIndexTreeView.java b/indexer-core/src/main/java/org/apache/maven/index/treeview/DefaultIndexTreeView.java
index 87552c9..325d0c5 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/treeview/DefaultIndexTreeView.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/treeview/DefaultIndexTreeView.java
@@ -24,11 +24,15 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.search.BooleanClause;
import org.apache.lucene.search.BooleanQuery;
import org.apache.lucene.search.Query;
import org.apache.maven.index.ArtifactInfo;
+import org.apache.maven.index.ComponentSupport;
import org.apache.maven.index.Field;
import org.apache.maven.index.Indexer;
import org.apache.maven.index.IteratorSearchRequest;
@@ -36,18 +40,21 @@ import org.apache.maven.index.IteratorSearchResponse;
import org.apache.maven.index.MAVEN;
import org.apache.maven.index.expr.SourcedSearchExpression;
import org.apache.maven.index.treeview.TreeNode.Type;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.util.StringUtils;
-@Component( role = IndexTreeView.class )
+@Singleton
+@Named
public class DefaultIndexTreeView
- extends AbstractLogEnabled
+ extends ComponentSupport
implements IndexTreeView
{
- @Requirement
- private Indexer indexer;
+ private final Indexer indexer;
+
+ @Inject
+ public DefaultIndexTreeView( final Indexer indexer )
+ {
+ this.indexer = indexer;
+ }
protected Indexer getIndexer()
{
@@ -123,7 +130,7 @@ public class DefaultIndexTreeView
/**
* @param root
- * @param factory
+ * @param request
* @param allGroups
* @throws IOException
*/
@@ -532,4 +539,4 @@ public class DefaultIndexTreeView
return result;
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java b/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java
index cfd6b5b..477e2b3 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java
@@ -41,6 +41,9 @@ import java.util.Properties;
import java.util.TimeZone;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Singleton;
import org.apache.lucene.document.Document;
import org.apache.lucene.index.CorruptIndexException;
@@ -50,6 +53,7 @@ import org.apache.lucene.store.Directory;
import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.store.IndexOutput;
import org.apache.lucene.store.LockObtainFailedException;
+import org.apache.maven.index.ComponentSupport;
import org.apache.maven.index.context.DocumentFilter;
import org.apache.maven.index.context.IndexUtils;
import org.apache.maven.index.context.IndexingContext;
@@ -59,42 +63,34 @@ import org.apache.maven.index.fs.Lock;
import org.apache.maven.index.fs.Locker;
import org.apache.maven.index.incremental.IncrementalHandler;
import org.apache.maven.index.updater.IndexDataReader.IndexDataReadResult;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.io.RawInputStreamFacade;
/**
* A default index updater implementation
- *
+ *
* @author Jason van Zyl
* @author Eugene Kuleshov
*/
-@Component( role = IndexUpdater.class )
+@Singleton
+@Named
public class DefaultIndexUpdater
- extends AbstractLogEnabled
+ extends ComponentSupport
implements IndexUpdater
{
- @Requirement( role = IncrementalHandler.class )
- IncrementalHandler incrementalHandler;
+ private final IncrementalHandler incrementalHandler;
- @Requirement( role = IndexUpdateSideEffect.class )
- private List<IndexUpdateSideEffect> sideEffects;
+ private final List<IndexUpdateSideEffect> sideEffects;
+ @Inject
public DefaultIndexUpdater( final IncrementalHandler handler, final List<IndexUpdateSideEffect> mySideeffects )
{
incrementalHandler = handler;
sideEffects = mySideeffects;
}
- public DefaultIndexUpdater()
- {
-
- }
-
public IndexUpdateResult fetchAndUpdateIndex( final IndexUpdateRequest updateRequest )
throws IOException
{
@@ -175,7 +171,7 @@ public class DefaultIndexUpdater
}
private Date loadIndexDirectory( final IndexUpdateRequest updateRequest, final ResourceFetcher fetcher,
- final boolean merge, final String remoteIndexFile )
+ final boolean merge, final String remoteIndexFile )
throws IOException
{
File indexDir = File.createTempFile( remoteIndexFile, ".dir" );
@@ -195,13 +191,13 @@ public class DefaultIndexUpdater
if ( remoteIndexFile.endsWith( ".gz" ) )
{
timestamp = unpackIndexData( is, directory, //
- updateRequest.getIndexingContext() );
+ updateRequest.getIndexingContext() );
}
else
{
// legacy transfer format
timestamp = unpackIndexArchive( is, directory, //
- updateRequest.getIndexingContext() );
+ updateRequest.getIndexingContext() );
}
if ( updateRequest.getDocumentFilter() != null )
@@ -250,13 +246,13 @@ public class DefaultIndexUpdater
/**
* Unpack legacy index archive into a specified Lucene <code>Directory</code>
- *
- * @param is a <code>ZipInputStream</code> with index data
+ *
+ * @param is a <code>ZipInputStream</code> with index data
* @param directory Lucene <code>Directory</code> to unpack index data to
* @return {@link Date} of the index update or null if it can't be read
*/
public static Date unpackIndexArchive( final InputStream is, final Directory directory,
- final IndexingContext context )
+ final IndexingContext context )
throws IOException
{
File indexArchive = File.createTempFile( "nexus-index", "" );
@@ -327,7 +323,7 @@ public class DefaultIndexUpdater
}
private static void copyUpdatedDocuments( final Directory sourcedir, final Directory targetdir,
- final IndexingContext context )
+ final IndexingContext context )
throws CorruptIndexException, LockObtainFailedException, IOException
{
IndexWriter w = null;
@@ -493,9 +489,9 @@ public class DefaultIndexUpdater
/**
* Unpack index data using specified Lucene Index writer
- *
- * @param is an input stream to unpack index data from
- * @param w a writer to save index data
+ *
+ * @param is an input stream to unpack index data from
+ * @param w a writer to save index data
* @param ics a collection of index creators for updating unpacked documents.
*/
public static Date unpackIndexData( final InputStream is, final Directory d, final IndexingContext context )
@@ -522,6 +518,7 @@ public class DefaultIndexUpdater
public static class FileFetcher
implements ResourceFetcher
{
+
private final File basedir;
public FileFetcher( File basedir )
@@ -563,6 +560,7 @@ public class DefaultIndexUpdater
private abstract class IndexAdaptor
{
+
protected final File dir;
protected Properties properties;
@@ -602,6 +600,7 @@ public class DefaultIndexUpdater
private class LuceneIndexAdaptor
extends IndexAdaptor
{
+
private final IndexUpdateRequest updateRequest;
public LuceneIndexAdaptor( IndexUpdateRequest updateRequest )
@@ -655,6 +654,7 @@ public class DefaultIndexUpdater
private class LocalCacheIndexAdaptor
extends IndexAdaptor
{
+
private static final String CHUNKS_FILENAME = "chunks.lst";
private static final String CHUNKS_FILE_ENCODING = "UTF-8";
@@ -786,6 +786,7 @@ public class DefaultIndexUpdater
abstract static class LocalIndexCacheFetcher
extends FileFetcher
{
+
public LocalIndexCacheFetcher( File basedir )
{
super( basedir );
@@ -796,7 +797,7 @@ public class DefaultIndexUpdater
}
private Date fetchAndUpdateIndex( final IndexUpdateRequest updateRequest, ResourceFetcher source,
- IndexAdaptor target )
+ IndexAdaptor target )
throws IOException
{
if ( !updateRequest.isForceFullUpdate() )
@@ -881,7 +882,7 @@ public class DefaultIndexUpdater
catch ( IOException ex2 )
{
getLogger().error( "Fallback to *.zip also failed: " + ex2 ); // do not bother with stack trace
-
+
throw ex; // original exception more likely to be interesting
}
}
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java
----------------------------------------------------------------------
diff --git a/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java b/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java
index 6d55134..1b14e6f 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java
@@ -31,6 +31,8 @@ import org.apache.maven.index.creator.JarFileContentsIndexCreator;
import org.apache.maven.index.creator.MavenArchetypeArtifactInfoIndexCreator;
import org.apache.maven.index.creator.MavenPluginArtifactInfoIndexCreator;
import org.apache.maven.index.creator.MinimalArtifactInfoIndexCreator;
+import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.PlexusConstants;
import org.codehaus.plexus.PlexusTestCase;
import org.codehaus.plexus.util.FileUtils;
@@ -46,6 +48,13 @@ public class AbstractIndexCreatorHelper
Random rand = new Random();
@Override
+ protected void customizeContainerConfiguration( final ContainerConfiguration containerConfiguration )
+ {
+ super.customizeContainerConfiguration( containerConfiguration );
+ containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
+ }
+
+ @Override
protected void setUp()
throws Exception
{
http://git-wip-us.apache.org/repos/asf/maven-indexer/blob/ea16d91e/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 8120419..5f2537f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -72,7 +72,9 @@ under the License.
<distributionSiteUrl>scp://people.apache.org/www/maven.apache.org/maven-indexer</distributionSiteUrl>
<siteUrl>http://maven.apache.org/maven-indexer/</siteUrl>
- <sisu-inject-plexus.version>2.2.3</sisu-inject-plexus.version>
+ <sisu-inject.version>2.3.1</sisu-inject.version>
+ <sisu-guice.version>3.1.2</sisu-guice.version>
+
<lucene.version>3.6.1</lucene.version>
<maven.version>3.0.4</maven.version>
<aether.version>1.13.1</aether.version>
@@ -103,6 +105,20 @@ under the License.
<scope>compile</scope>
</dependency>
+ <!-- Logging -->
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>1.7.2</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-simple</artifactId>
+ <version>1.7.2</version>
+ <scope>test</scope>
+ </dependency>
+
<!-- ZipFacade -->
<dependency>
<groupId>de.schlichtherle.truezip</groupId>
@@ -122,11 +138,25 @@ under the License.
</dependency>
<dependency>
+ <groupId>javax.inject</groupId>
+ <artifactId>javax.inject</artifactId>
+ <version>1</version>
+ <scope>compile</scope>
+ </dependency>
+ <!-- Is compile for only one class: WagonHelper -->
+ <!-- Consider moving it out, as these should be provided -->
+ <dependency>
<groupId>org.sonatype.sisu</groupId>
- <artifactId>sisu-inject-plexus</artifactId>
- <version>${sisu-inject-plexus.version}</version>
- <scope>provided</scope>
+ <artifactId>sisu-inject-bean</artifactId>
+ <version>${sisu-inject.version}</version>
+ <scope>compile</scope>
</dependency>
+ <dependency>
+ <groupId>org.sonatype.sisu</groupId>
+ <artifactId>sisu-inject-plexus</artifactId>
+ <version>${sisu-inject.version}</version>
+ <scope>compile</scope>
+ </dependency>
<!-- Test -->
<dependency>
@@ -165,19 +195,20 @@ under the License.
<build>
<plugins>
<plugin>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-component-metadata</artifactId>
+ <groupId>org.sonatype.plugins</groupId>
+ <artifactId>sisu-maven-plugin</artifactId>
+ <version>1.1</version>
<executions>
<execution>
<id>process-classes</id>
<goals>
- <goal>generate-metadata</goal>
+ <goal>main-index</goal>
</goals>
</execution>
<execution>
<id>process-test-classes</id>
<goals>
- <goal>generate-test-metadata</goal>
+ <goal>test-index</goal>
</goals>
</execution>
</executions>