summaryrefslogtreecommitdiffstats
path: root/archiva-base/archiva-repository-layer
diff options
context:
space:
mode:
authorJoakim Erdfelt <joakime@apache.org>2007-05-11 22:25:12 +0000
committerJoakim Erdfelt <joakime@apache.org>2007-05-11 22:25:12 +0000
commitb2a4a02c00b70a0265251bd57fc772bebafba434 (patch)
tree98a48045eddb0a1dcb6a7c202fd651d17478eb81 /archiva-base/archiva-repository-layer
parentcfb785460af3e39c016a1e89f9a2da16be87c088 (diff)
downloadarchiva-b2a4a02c00b70a0265251bd57fc772bebafba434.tar.gz
archiva-b2a4a02c00b70a0265251bd57fc772bebafba434.zip
[MRM-336]: Repository Admin - "Index Repository" appears to not do anything.
git-svn-id: https://svn.apache.org/repos/asf/maven/archiva/trunk@537304 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'archiva-base/archiva-repository-layer')
-rw-r--r--archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/DefaultRepositoryScanner.java36
-rw-r--r--archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumers.java48
2 files changed, 60 insertions, 24 deletions
diff --git a/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/DefaultRepositoryScanner.java b/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/DefaultRepositoryScanner.java
index cf9b790ae..4a8d20915 100644
--- a/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/DefaultRepositoryScanner.java
+++ b/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/DefaultRepositoryScanner.java
@@ -19,8 +19,10 @@ package org.apache.maven.archiva.repository.scanner;
* under the License.
*/
+import org.apache.commons.collections.Closure;
import org.apache.commons.collections.CollectionUtils;
import org.apache.maven.archiva.configuration.FileTypes;
+import org.apache.maven.archiva.consumers.RepositoryContentConsumer;
import org.apache.maven.archiva.model.ArchivaRepository;
import org.apache.maven.archiva.model.RepositoryContentStatistics;
import org.apache.maven.archiva.repository.RepositoryException;
@@ -123,6 +125,38 @@ public class DefaultRepositoryScanner
// Execute scan.
dirWalker.scan();
- return scannerInstance.getStatistics();
+ RepositoryContentStatistics stats = scannerInstance.getStatistics();
+
+ ConsumerIdClosure consumerIdList;
+
+ consumerIdList = new ConsumerIdClosure();
+ CollectionUtils.forAllDo( knownContentConsumers, consumerIdList );
+ stats.setKnownConsumers( consumerIdList.getList() );
+
+ consumerIdList = new ConsumerIdClosure();
+ CollectionUtils.forAllDo( invalidContentConsumers, consumerIdList );
+ stats.setInvalidConsumers( consumerIdList.getList() );
+
+ return stats;
+ }
+
+ class ConsumerIdClosure
+ implements Closure
+ {
+ private List list = new ArrayList();
+
+ public void execute( Object input )
+ {
+ if ( input instanceof RepositoryContentConsumer )
+ {
+ RepositoryContentConsumer consumer = (RepositoryContentConsumer) input;
+ list.add( consumer.getId() );
+ }
+ }
+
+ public List getList()
+ {
+ return list;
+ }
}
}
diff --git a/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumers.java b/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumers.java
index 6e38b7ae2..e57c633c1 100644
--- a/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumers.java
+++ b/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumers.java
@@ -24,11 +24,13 @@ import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.Predicate;
import org.apache.commons.collections.functors.IfClosure;
import org.apache.maven.archiva.configuration.ArchivaConfiguration;
-import org.apache.maven.archiva.configuration.Configuration;
import org.apache.maven.archiva.configuration.RepositoryScanningConfiguration;
import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer;
import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer;
import org.apache.maven.archiva.consumers.RepositoryContentConsumer;
+import org.codehaus.plexus.logging.AbstractLogEnabled;
+import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
+import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException;
import java.util.ArrayList;
import java.util.HashMap;
@@ -44,6 +46,8 @@ import java.util.Map;
* @plexus.component role="org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers"
*/
public class RepositoryContentConsumers
+ extends AbstractLogEnabled
+ implements Initializable
{
/**
* @plexus.requirement
@@ -60,6 +64,10 @@ public class RepositoryContentConsumers
*/
private List availableInvalidConsumers;
+ private SelectedKnownRepoConsumersPredicate selectedKnownPredicate;
+
+ private SelectedInvalidRepoConsumersPredicate selectedInvalidPredicate;
+
class SelectedKnownRepoConsumersPredicate
implements Predicate
{
@@ -70,14 +78,14 @@ public class RepositoryContentConsumers
if ( object instanceof KnownRepositoryContentConsumer )
{
KnownRepositoryContentConsumer known = (KnownRepositoryContentConsumer) object;
- Configuration config = archivaConfiguration.getConfiguration();
+ RepositoryScanningConfiguration scanning = archivaConfiguration.getConfiguration()
+ .getRepositoryScanning();
- return config.getRepositoryScanning().getKnownContentConsumers().contains( known.getId() );
+ return scanning.getKnownContentConsumers().contains( known.getId() );
}
return satisfies;
}
-
}
class SelectedInvalidRepoConsumersPredicate
@@ -90,9 +98,10 @@ public class RepositoryContentConsumers
if ( object instanceof InvalidRepositoryContentConsumer )
{
InvalidRepositoryContentConsumer invalid = (InvalidRepositoryContentConsumer) object;
- Configuration config = archivaConfiguration.getConfiguration();
+ RepositoryScanningConfiguration scanning = archivaConfiguration.getConfiguration()
+ .getRepositoryScanning();
- return config.getRepositoryScanning().getInvalidContentConsumers().contains( invalid.getId() );
+ return scanning.getInvalidContentConsumers().contains( invalid.getId() );
}
return satisfies;
@@ -119,22 +128,19 @@ public class RepositoryContentConsumers
}
}
- public Predicate getKnownSelectionPredicate()
+ public void initialize()
+ throws InitializationException
{
- return new SelectedKnownRepoConsumersPredicate();
+ this.selectedKnownPredicate = new SelectedKnownRepoConsumersPredicate();
+ this.selectedInvalidPredicate = new SelectedInvalidRepoConsumersPredicate();
}
- public Predicate getInvalidSelectionPredicate()
- {
- return new SelectedInvalidRepoConsumersPredicate();
- }
-
public List getSelectedKnownConsumerIds()
{
RepositoryScanningConfiguration scanning = archivaConfiguration.getConfiguration().getRepositoryScanning();
return scanning.getKnownContentConsumers();
}
-
+
public List getSelectedInvalidConsumerIds()
{
RepositoryScanningConfiguration scanning = archivaConfiguration.getConfiguration().getRepositoryScanning();
@@ -144,7 +150,7 @@ public class RepositoryContentConsumers
public Map getSelectedKnownConsumersMap()
{
RepoConsumerToMapClosure consumerMapClosure = new RepoConsumerToMapClosure();
- Closure ifclosure = IfClosure.getInstance( getKnownSelectionPredicate(), consumerMapClosure );
+ Closure ifclosure = IfClosure.getInstance( selectedKnownPredicate, consumerMapClosure );
CollectionUtils.forAllDo( availableKnownConsumers, ifclosure );
return consumerMapClosure.getMap();
@@ -153,28 +159,24 @@ public class RepositoryContentConsumers
public Map getSelectedInvalidConsumersMap()
{
RepoConsumerToMapClosure consumerMapClosure = new RepoConsumerToMapClosure();
- Closure ifclosure = IfClosure.getInstance( getInvalidSelectionPredicate(), consumerMapClosure );
+ Closure ifclosure = IfClosure.getInstance( selectedInvalidPredicate, consumerMapClosure );
CollectionUtils.forAllDo( availableInvalidConsumers, ifclosure );
return consumerMapClosure.getMap();
}
-
+
public List getSelectedKnownConsumers()
{
- RepositoryScanningConfiguration scanning = archivaConfiguration.getConfiguration().getRepositoryScanning();
-
List ret = new ArrayList();
- ret.addAll( CollectionUtils.select( scanning.getKnownContentConsumers(), getKnownSelectionPredicate() ));
+ ret.addAll( CollectionUtils.select( availableKnownConsumers, selectedKnownPredicate ) );
return ret;
}
public List getSelectedInvalidConsumers()
{
- RepositoryScanningConfiguration scanning = archivaConfiguration.getConfiguration().getRepositoryScanning();
-
List ret = new ArrayList();
- ret.addAll( CollectionUtils.select( scanning.getInvalidContentConsumers(), getInvalidSelectionPredicate() ));
+ ret.addAll( CollectionUtils.select( availableInvalidConsumers, selectedInvalidPredicate ) );
return ret;
}