diff options
446 files changed, 16999 insertions, 3271 deletions
diff --git a/archiva-cli/pom.xml b/archiva-cli/pom.xml index 4039c4575..ba13343ea 100644 --- a/archiva-cli/pom.xml +++ b/archiva-cli/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-cli</artifactId> @@ -35,7 +35,13 @@ <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-dependency-tree-consumer</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-metadata-consumer</artifactId> + <version>1.3-SNAPSHOT</version> <scope>runtime</scope> </dependency> <dependency> diff --git a/archiva-cli/src/main/java/org/apache/maven/archiva/cli/ArchivaCli.java b/archiva-cli/src/main/java/org/apache/maven/archiva/cli/ArchivaCli.java index 43cb75350..0c91aaf2b 100644 --- a/archiva-cli/src/main/java/org/apache/maven/archiva/cli/ArchivaCli.java +++ b/archiva-cli/src/main/java/org/apache/maven/archiva/cli/ArchivaCli.java @@ -19,9 +19,6 @@ package org.apache.maven.archiva.cli; * under the License. */ -import com.sampullara.cli.Args; -import com.sampullara.cli.Argument; - import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; @@ -34,6 +31,11 @@ import java.util.List; import java.util.Map; import java.util.Properties; +import com.sampullara.cli.Args; +import com.sampullara.cli.Argument; +import org.apache.archiva.repository.scanner.RepositoryScanStatistics; +import org.apache.archiva.repository.scanner.RepositoryScanner; +import org.apache.archiva.repository.scanner.RepositoryScannerException; import org.apache.commons.io.IOUtils; import org.apache.commons.lang.StringUtils; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; @@ -43,9 +45,6 @@ import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; import org.apache.maven.archiva.consumers.RepositoryContentConsumer; import org.apache.maven.archiva.converter.RepositoryConversionException; import org.apache.maven.archiva.converter.legacy.LegacyRepositoryConverter; -import org.apache.maven.archiva.repository.RepositoryException; -import org.apache.maven.archiva.repository.scanner.RepositoryScanStatistics; -import org.apache.maven.archiva.repository.scanner.RepositoryScanner; import org.apache.maven.artifact.manager.WagonManager; import org.codehaus.plexus.spring.PlexusClassPathXmlApplicationContext; import org.codehaus.plexus.spring.PlexusToSpringUtils; @@ -172,7 +171,7 @@ public class ArchivaCli System.out.println( "\n" + stats.toDump( repo ) ); } - catch ( RepositoryException e ) + catch ( RepositoryScannerException e ) { e.printStackTrace( System.err ); } diff --git a/archiva-docs/pom.xml b/archiva-docs/pom.xml index 060edc504..028a011aa 100644 --- a/archiva-docs/pom.xml +++ b/archiva-docs/pom.xml @@ -21,7 +21,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-docs</artifactId> diff --git a/archiva-jetty/pom.xml b/archiva-jetty/pom.xml index 692937af0..13c35933e 100644 --- a/archiva-jetty/pom.xml +++ b/archiva-jetty/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-jetty</artifactId> <packaging>pom</packaging> diff --git a/archiva-modules/archiva-base/archiva-artifact-converter/pom.xml b/archiva-modules/archiva-base/archiva-artifact-converter/pom.xml index a544ffa9b..7e5ee9023 100644 --- a/archiva-modules/archiva-base/archiva-artifact-converter/pom.xml +++ b/archiva-modules/archiva-base/archiva-artifact-converter/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-artifact-converter</artifactId> <name>Archiva Artifact Converter</name> diff --git a/archiva-modules/archiva-base/archiva-checksum/pom.xml b/archiva-modules/archiva-base/archiva-checksum/pom.xml index 7532df03a..bf525a970 100644 --- a/archiva-modules/archiva-base/archiva-checksum/pom.xml +++ b/archiva-modules/archiva-base/archiva-checksum/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-checksum</artifactId> <name>Archiva Checksum</name> diff --git a/archiva-modules/archiva-base/archiva-common/pom.xml b/archiva-modules/archiva-base/archiva-common/pom.xml index 233964823..91bdca84e 100644 --- a/archiva-modules/archiva-base/archiva-common/pom.xml +++ b/archiva-modules/archiva-base/archiva-common/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-common</artifactId> diff --git a/archiva-modules/archiva-base/archiva-configuration/pom.xml b/archiva-modules/archiva-base/archiva-configuration/pom.xml index cf1d13cac..af8d09c00 100644 --- a/archiva-modules/archiva-base/archiva-configuration/pom.xml +++ b/archiva-modules/archiva-base/archiva-configuration/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-configuration</artifactId> diff --git a/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo b/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo index 0187601c2..717721c91 100644 --- a/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo +++ b/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo @@ -1039,6 +1039,7 @@ <name>cleanupConsumers</name> <version>1.0.0+</version> <required>true</required> + <deprecated>true</deprecated> <association> <type>String</type> <multiplicity>*</multiplicity> diff --git a/archiva-modules/archiva-base/archiva-configuration/src/test/java/org/apache/maven/archiva/configuration/ArchivaConfigurationTest.java b/archiva-modules/archiva-base/archiva-configuration/src/test/java/org/apache/maven/archiva/configuration/ArchivaConfigurationTest.java index d874420fb..c28aebb73 100644 --- a/archiva-modules/archiva-base/archiva-configuration/src/test/java/org/apache/maven/archiva/configuration/ArchivaConfigurationTest.java +++ b/archiva-modules/archiva-base/archiva-configuration/src/test/java/org/apache/maven/archiva/configuration/ArchivaConfigurationTest.java @@ -582,7 +582,7 @@ public class ArchivaConfigurationTest archivaConfiguration.save( configuration ); // Release existing -// FIXME spring equivalent ? release( archivaConfiguration ); + release( archivaConfiguration ); // Reload. archivaConfiguration = diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-api/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-api/pom.xml index 9c536fcdd..a3fb436eb 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-api/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-api/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-consumers</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-consumer-api</artifactId> diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/functors/ConsumerWantsFilePredicate.java b/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-api/src/main/java/org/apache/maven/archiva/consumers/functors/ConsumerWantsFilePredicate.java index af3499874..112cc4709 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/functors/ConsumerWantsFilePredicate.java +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-api/src/main/java/org/apache/maven/archiva/consumers/functors/ConsumerWantsFilePredicate.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner.functors; +package org.apache.maven.archiva.consumers.functors; /* * Licensed to the Apache Software Foundation (ASF) under one diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml index 27be9d08e..369262da9 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-consumers</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-core-consumers</artifactId> diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/AbstractRepositoryPurge.java b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/AbstractRepositoryPurge.java index c0c4e525f..5e23a2f51 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/AbstractRepositoryPurge.java +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/AbstractRepositoryPurge.java @@ -24,14 +24,13 @@ import java.io.FilenameFilter; import java.util.List; import java.util.Set; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import org.apache.maven.archiva.model.ArchivaArtifact; import org.apache.maven.archiva.model.ArtifactReference; -import org.apache.maven.archiva.repository.audit.AuditEvent; import org.apache.maven.archiva.repository.ManagedRepositoryContent; +import org.apache.maven.archiva.repository.audit.AuditEvent; import org.apache.maven.archiva.repository.events.RepositoryListener; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Base class for all repository purge tasks. @@ -46,9 +45,9 @@ public abstract class AbstractRepositoryPurge protected final List<RepositoryListener> listeners; - private Logger logger = LoggerFactory.getLogger( "org.apache.archiva.AuditLog" ); + private Logger logger = LoggerFactory.getLogger( "org.apache.archiva.AuditLog" ); - private static final char DELIM = ' '; + private static final char DELIM = ' '; public AbstractRepositoryPurge( ManagedRepositoryContent repository, List<RepositoryListener> listeners ) { diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/java/org/apache/maven/archiva/consumers/core/AbstractArtifactConsumerTest.java b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/java/org/apache/maven/archiva/consumers/core/AbstractArtifactConsumerTest.java index 59cffadc0..023893820 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/java/org/apache/maven/archiva/consumers/core/AbstractArtifactConsumerTest.java +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/java/org/apache/maven/archiva/consumers/core/AbstractArtifactConsumerTest.java @@ -19,16 +19,16 @@ package org.apache.maven.archiva.consumers.core; * under the License. */ +import java.io.File; + import org.apache.maven.archiva.common.utils.BaseFile; import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.FileType; import org.apache.maven.archiva.configuration.FileTypes; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import org.apache.maven.archiva.repository.scanner.functors.ConsumerWantsFilePredicate; +import org.apache.maven.archiva.consumers.functors.ConsumerWantsFilePredicate; import org.codehaus.plexus.spring.PlexusInSpringTestCase; -import java.io.File; - public abstract class AbstractArtifactConsumerTest extends PlexusInSpringTestCase { diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/java/org/apache/maven/archiva/consumers/core/repository/RepositoryPurgeConsumerTest.java b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/java/org/apache/maven/archiva/consumers/core/repository/RepositoryPurgeConsumerTest.java index c472c7459..be2a3fac0 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/java/org/apache/maven/archiva/consumers/core/repository/RepositoryPurgeConsumerTest.java +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/java/org/apache/maven/archiva/consumers/core/repository/RepositoryPurgeConsumerTest.java @@ -29,7 +29,7 @@ import org.apache.maven.archiva.configuration.FileType; import org.apache.maven.archiva.configuration.FileTypes; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import org.apache.maven.archiva.repository.scanner.functors.ConsumerWantsFilePredicate; +import org.apache.maven.archiva.consumers.functors.ConsumerWantsFilePredicate; import org.custommonkey.xmlunit.XMLAssert; /** diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/pom.xml index 2fd7a84b7..99378af66 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-consumers</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-database-consumers</artifactId> diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumer.java b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumer.java deleted file mode 100644 index c4539c6f3..000000000 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumer.java +++ /dev/null @@ -1,180 +0,0 @@ -package org.apache.maven.archiva.consumers.database; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; -import org.apache.maven.archiva.consumers.ConsumerException; -import org.apache.maven.archiva.database.Constraint; -import org.apache.maven.archiva.database.RepositoryProblemDAO; -import org.apache.maven.archiva.database.constraints.RepositoryProblemByArtifactConstraint; -import org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer; -import org.apache.maven.archiva.model.ArchivaArtifact; -import org.apache.maven.archiva.database.ArtifactDAO; -import org.apache.maven.archiva.database.ArchivaDatabaseException; -import org.apache.maven.archiva.model.RepositoryProblem; -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.audit.AuditEvent; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.List; -import java.io.File; - -/** - * Consumer for cleaning up the database of artifacts that are no longer existing in the repository. - * - * <a href="mailto:oching@apache.org">Maria Odea Ching</a> - * @version $Id$ - * - * @plexus.component role="org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer" - * role-hint="not-present-remove-db-artifact" - * instantiation-strategy="per-lookup" - */ -public class DatabaseCleanupRemoveArtifactConsumer - extends AbstractMonitoredConsumer - implements DatabaseCleanupConsumer -{ - /** - * @plexus.configuration default-value="not-present-remove-db-artifact" - */ - private String id; - - /** - * @plexus.configuration default-value="Remove artifact from database if not present on filesystem." - */ - private String description; - - /** - * @plexus.requirement role-hint="jdo" - */ - private ArtifactDAO artifactDAO; - - /** - * @plexus.requirement role-hint="jdo" - */ - private RepositoryProblemDAO repositoryProblemDAO; - - /** - * @plexus.requirement - */ - private RepositoryContentFactory repositoryFactory; - - private Logger logger = LoggerFactory.getLogger( "org.apache.archiva.AuditLog" ); - - private static final char DELIM = ' '; - - public void beginScan() - { - // TODO Auto-generated method stub - - } - - public void completeScan() - { - // TODO Auto-generated method stub - } - - public List<String> getIncludedTypes() - { - return null; - } - - public void processArchivaArtifact( ArchivaArtifact artifact ) - throws ConsumerException - { - try - { - ManagedRepositoryContent repositoryContent = - repositoryFactory.getManagedRepositoryContent( artifact.getModel().getRepositoryId() ); - - File file = new File( repositoryContent.getRepoRoot(), repositoryContent.toPath( artifact ) ); - - if( !file.exists() ) - { - artifactDAO.deleteArtifact( artifact ); - - triggerAuditEvent( repositoryContent.getRepository().getId(), artifact.getGroupId() + ":" + artifact.getArtifactId() + ":" + artifact.getVersion(), AuditEvent.REMOVE_SCANNED ); - - // Remove all repository problems related to this artifact - Constraint artifactConstraint = new RepositoryProblemByArtifactConstraint( artifact ); - List<RepositoryProblem> repositoryProblems = - repositoryProblemDAO.queryRepositoryProblems( artifactConstraint ); - - if ( repositoryProblems != null ) - { - for ( RepositoryProblem repositoryProblem : repositoryProblems ) - { - repositoryProblemDAO.deleteRepositoryProblem( repositoryProblem ); - } - } - } - } - catch ( RepositoryException re ) - { - throw new ConsumerException( "Can't run database cleanup remove artifact consumer: " + - re.getMessage() ); - } - catch ( ArchivaDatabaseException e ) - { - throw new ConsumerException( e.getMessage() ); - } - } - - public String getDescription() - { - return description; - } - - public String getId() - { - return id; - } - - public boolean isPermanent() - { - return false; - } - - public void setArtifactDAO( ArtifactDAO artifactDAO) - { - this.artifactDAO = artifactDAO; - } - - public void setRepositoryProblemDAO( RepositoryProblemDAO repositoryProblemDAO ) - { - this.repositoryProblemDAO = repositoryProblemDAO; - } - - public void setRepositoryFactory( RepositoryContentFactory repositoryFactory ) - { - this.repositoryFactory = repositoryFactory; - } - - private void triggerAuditEvent( String repoId, String resource, String action ) - { - String msg = repoId + DELIM + "<db-scan>" + DELIM + "<system>" + DELIM + '\"' + resource + '\"' + - DELIM + '\"' + action + '\"'; - - logger.info( msg ); - } -} diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumer.java b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumer.java deleted file mode 100644 index 52c799593..000000000 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumer.java +++ /dev/null @@ -1,179 +0,0 @@ -package org.apache.maven.archiva.consumers.database; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import org.apache.commons.lang.StringUtils; -import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; -import org.apache.maven.archiva.consumers.ConsumerException; -import org.apache.maven.archiva.model.ArchivaArtifact; -import org.apache.maven.archiva.model.ArchivaProjectModel; -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.database.ProjectModelDAO; -import org.apache.maven.archiva.database.ArchivaDatabaseException; -import org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer; -import org.codehaus.plexus.cache.Cache; - -import java.util.List; -import java.io.File; - -/** - * Consumer for removing or deleting from the database the project models fo artifacts that have been - * deleted/removed from the repository. - * - * <a href="mailto:oching@apache.org">Maria Odea Ching</a> - * @version $Id$ - * - * @plexus.component role="org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer" - * role-hint="not-present-remove-db-project" - * instantiation-strategy="per-lookup" - */ -public class DatabaseCleanupRemoveProjectConsumer - extends AbstractMonitoredConsumer - implements DatabaseCleanupConsumer -{ - /** - * @plexus.configuration default-value="not-present-remove-db-project" - */ - private String id; - - /** - * @plexus.configuration default-value="Remove project from database if not present on filesystem." - */ - private String description; - - /** - * @plexus.requirement role-hint="jdo" - */ - private ProjectModelDAO projectModelDAO; - - /** - * @plexus.requirement - */ - private RepositoryContentFactory repositoryFactory; - - /** - * @plexus.requirement role-hint="effective-project-cache" - */ - private Cache effectiveProjectCache; - - public void beginScan() - { - // TODO Auto-generated method stub - } - - public void completeScan() - { - // TODO Auto-generated method stub - } - - public List<String> getIncludedTypes() - { - return null; - } - - public void processArchivaArtifact( ArchivaArtifact artifact ) - throws ConsumerException - { - if ( !StringUtils.equals( "pom", artifact.getType() ) ) - { - // Not a pom. Skip it. - return; - } - - try - { - ManagedRepositoryContent repositoryContent = - repositoryFactory.getManagedRepositoryContent( artifact.getModel().getRepositoryId() ); - - File file = new File( repositoryContent.getRepoRoot(), repositoryContent.toPath( artifact ) ); - - if ( !file.exists() ) - { - ArchivaProjectModel projectModel = - projectModelDAO.getProjectModel( artifact.getGroupId(), artifact.getArtifactId(), - artifact.getVersion() ); - - projectModelDAO.deleteProjectModel( projectModel ); - - // Force removal of project model from effective cache - String projectKey = toProjectKey( projectModel ); - synchronized ( effectiveProjectCache ) - { - if ( effectiveProjectCache.hasKey( projectKey ) ) - { - effectiveProjectCache.remove( projectKey ); - } - } - } - } - catch ( RepositoryException re ) - { - throw new ConsumerException( "Can't run database cleanup remove artifact consumer: " + re.getMessage() ); - } - catch ( ArchivaDatabaseException e ) - { - throw new ConsumerException( e.getMessage() ); - } - - } - - public String getDescription() - { - return description; - } - - public String getId() - { - return id; - } - - public boolean isPermanent() - { - return false; - } - - public void setProjectModelDAO( ProjectModelDAO projectModelDAO ) - { - this.projectModelDAO = projectModelDAO; - } - - public void setRepositoryFactory( RepositoryContentFactory repositoryFactory ) - { - this.repositoryFactory = repositoryFactory; - } - - public void setEffectiveProjectCache( Cache effectiveProjectCache ) - { - this.effectiveProjectCache = effectiveProjectCache; - } - - private String toProjectKey( ArchivaProjectModel project ) - { - StringBuilder key = new StringBuilder(); - - key.append( project.getGroupId() ).append( ":" ); - key.append( project.getArtifactId() ).append( ":" ); - key.append( project.getVersion() ); - - return key.toString(); - } -} diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/ArtifactUpdateDatabaseConsumerTest.java b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/ArtifactUpdateDatabaseConsumerTest.java index 19b07ac1e..5bff8d355 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/ArtifactUpdateDatabaseConsumerTest.java +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/ArtifactUpdateDatabaseConsumerTest.java @@ -19,16 +19,16 @@ package org.apache.maven.archiva.consumers.database; * under the License. */ +import java.io.File; + import org.apache.maven.archiva.common.utils.BaseFile; import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.FileType; import org.apache.maven.archiva.configuration.FileTypes; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import org.apache.maven.archiva.repository.scanner.functors.ConsumerWantsFilePredicate; +import org.apache.maven.archiva.consumers.functors.ConsumerWantsFilePredicate; import org.codehaus.plexus.spring.PlexusInSpringTestCase; -import java.io.File; - public class ArtifactUpdateDatabaseConsumerTest extends PlexusInSpringTestCase { diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumerTest.java b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumerTest.java deleted file mode 100644 index e153e3f97..000000000 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumerTest.java +++ /dev/null @@ -1,96 +0,0 @@ -package org.apache.maven.archiva.consumers.database; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import org.easymock.MockControl; -import org.apache.maven.archiva.model.ArchivaArtifact; -import org.apache.maven.archiva.database.ArtifactDAO; -import org.apache.maven.archiva.database.RepositoryProblemDAO; - -/** - * Test for DatabaseCleanupRemoveArtifactConsumerTest - * - */ -public class DatabaseCleanupRemoveArtifactConsumerTest - extends AbstractDatabaseCleanupTest -{ - private MockControl artifactDAOControl; - - private ArtifactDAO artifactDAOMock; - - private MockControl repositoryProblemDAOControl; - - private RepositoryProblemDAO repositoryProblemDAOMock; - - private DatabaseCleanupRemoveArtifactConsumer dbCleanupRemoveArtifactConsumer; - - public void setUp() - throws Exception - { - super.setUp(); - - dbCleanupRemoveArtifactConsumer = new DatabaseCleanupRemoveArtifactConsumer(); - - artifactDAOControl = MockControl.createControl( ArtifactDAO.class ); - - artifactDAOMock = (ArtifactDAO) artifactDAOControl.getMock(); - - repositoryProblemDAOControl = MockControl.createControl( RepositoryProblemDAO.class ); - - repositoryProblemDAOMock = (RepositoryProblemDAO) repositoryProblemDAOControl.getMock(); - - dbCleanupRemoveArtifactConsumer.setArtifactDAO( artifactDAOMock ); - - dbCleanupRemoveArtifactConsumer.setRepositoryProblemDAO( repositoryProblemDAOMock ); - - dbCleanupRemoveArtifactConsumer.setRepositoryFactory( repositoryFactory ); - } - - public void testIfArtifactWasNotDeleted() - throws Exception - { - ArchivaArtifact artifact = createArtifact( TEST_GROUP_ID, "do-not-cleanup-artifact-test", TEST_VERSION, "jar" ); - - artifactDAOControl.replay(); - - repositoryProblemDAOControl.replay(); - - dbCleanupRemoveArtifactConsumer.processArchivaArtifact( artifact ); - - artifactDAOControl.verify(); - - repositoryProblemDAOControl.verify(); - } - - public void testIfArtifactWasDeleted() - throws Exception - { - ArchivaArtifact artifact = createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION, "jar" ); - - artifactDAOMock.deleteArtifact( artifact ); - - artifactDAOControl.replay(); - - dbCleanupRemoveArtifactConsumer.processArchivaArtifact( artifact ); - - artifactDAOControl.verify(); - } - -} diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumerTest.java b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumerTest.java deleted file mode 100644 index e8fe2fff3..000000000 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumerTest.java +++ /dev/null @@ -1,114 +0,0 @@ -package org.apache.maven.archiva.consumers.database; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import org.codehaus.plexus.cache.Cache; -import org.easymock.MockControl; -import org.apache.maven.archiva.database.ProjectModelDAO; -import org.apache.maven.archiva.model.ArchivaArtifact; -import org.apache.maven.archiva.model.ArchivaProjectModel; - -/** - * Test for DatabaseCleanupRemoveProjectConsumer - * - */ -public class DatabaseCleanupRemoveProjectConsumerTest - extends AbstractDatabaseCleanupTest -{ - private MockControl projectModelDAOControl; - - private ProjectModelDAO projectModelDAOMock; - - private DatabaseCleanupRemoveProjectConsumer dbCleanupRemoveProjectConsumer; - - private Cache effectiveProjectCache; - - public void setUp() - throws Exception - { - super.setUp(); - - dbCleanupRemoveProjectConsumer = new DatabaseCleanupRemoveProjectConsumer(); - - projectModelDAOControl = MockControl.createControl( ProjectModelDAO.class ); - - projectModelDAOMock = (ProjectModelDAO) projectModelDAOControl.getMock(); - - effectiveProjectCache = (Cache) lookup( Cache.class, "effective-project-cache" ); - - dbCleanupRemoveProjectConsumer.setProjectModelDAO( projectModelDAOMock ); - - dbCleanupRemoveProjectConsumer.setRepositoryFactory( repositoryFactory ); - - dbCleanupRemoveProjectConsumer.setEffectiveProjectCache( effectiveProjectCache ); - } - - public void testIfArtifactWasNotDeleted() - throws Exception - { - ArchivaArtifact artifact = createArtifact( TEST_GROUP_ID, "do-not-cleanup-artifact-test", TEST_VERSION, "pom" ); - - projectModelDAOControl.replay(); - - dbCleanupRemoveProjectConsumer.processArchivaArtifact( artifact ); - - projectModelDAOControl.verify(); - } - - public void testIfArtifactWasDeleted() - throws Exception - { - ArchivaArtifact artifact = createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION, "pom" ); - - ArchivaProjectModel projectModel = createProjectModel( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ); - - //this should return a value - projectModelDAOControl.expectAndReturn( - projectModelDAOMock.getProjectModel( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ), - (ArchivaProjectModel) projectModel ); - - projectModelDAOMock.deleteProjectModel( projectModel ); - - projectModelDAOControl.replay(); - - dbCleanupRemoveProjectConsumer.processArchivaArtifact( artifact ); - - projectModelDAOControl.verify(); - } - - public void testIfArtifactWasNotAPom() - throws Exception - { - ArchivaArtifact artifact = createArtifact( TEST_GROUP_ID, "do-not-cleanup-artifact-test", TEST_VERSION, "jar" ); - - projectModelDAOControl.replay(); - - dbCleanupRemoveProjectConsumer.processArchivaArtifact( artifact ); - - projectModelDAOControl.verify(); - } - - public void tearDown() - throws Exception - { - super.tearDown(); - } - -} diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumerTest.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumerTest.xml deleted file mode 100644 index 2c0dd53e1..000000000 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumerTest.xml +++ /dev/null @@ -1,65 +0,0 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> -<!-- - ~ Licensed to the Apache Software Foundation (ASF) under one - ~ or more contributor license agreements. See the NOTICE file - ~ distributed with this work for additional information - ~ regarding copyright ownership. The ASF licenses this file - ~ to you under the Apache License, Version 2.0 (the - ~ "License"); you may not use this file except in compliance - ~ with the License. You may obtain a copy of the License at - ~ - ~ http://www.apache.org/licenses/LICENSE-2.0 - ~ - ~ Unless required by applicable law or agreed to in writing, - ~ software distributed under the License is distributed on an - ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - ~ KIND, either express or implied. See the License for the - ~ specific language governing permissions and limitations - ~ under the License. - --> - -<component-set> - <components> - <component> - <role>org.apache.maven.archiva.configuration.ArchivaConfiguration</role> - <role-hint>database-cleanup</role-hint> - <implementation>org.apache.maven.archiva.configuration.DefaultArchivaConfiguration</implementation> - <requirements> - <requirement> - <role>org.codehaus.plexus.registry.Registry</role> - <role-hint>database-cleanup</role-hint> - </requirement> - <requirement> - <role>org.apache.maven.archiva.policies.PreDownloadPolicy</role> - <field-name>prePolicies</field-name> - </requirement> - <requirement> - <role>org.apache.maven.archiva.policies.PostDownloadPolicy</role> - <field-name>postPolicies</field-name> - </requirement> - </requirements> - </component> - <component> - <role>org.codehaus.plexus.registry.Registry</role> - <role-hint>database-cleanup</role-hint> - <implementation>org.codehaus.plexus.registry.commons.CommonsConfigurationRegistry</implementation> - <configuration> - <properties> - <xml fileName="${basedir}/target/test/repository-manager.xml" config-optional="true" config-forceCreate="true" - config-name="org.apache.maven.archiva.base" config-at="org.apache.maven.archiva"/> - </properties> - </configuration> - </component> - - <component> - <role>org.apache.maven.archiva.repository.RepositoryContentFactory</role> - <implementation>org.apache.maven.archiva.repository.RepositoryContentFactory</implementation> - <requirements> - <requirement> - <role>org.apache.maven.archiva.configuration.ArchivaConfiguration</role> - <role-hint>database-cleanup</role-hint> - </requirement> - </requirements> - </component> - </components> -</component-set> diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumerTest.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumerTest.xml deleted file mode 100644 index c34c60962..000000000 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/test/resources/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumerTest.xml +++ /dev/null @@ -1,87 +0,0 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> -<!-- - ~ Licensed to the Apache Software Foundation (ASF) under one - ~ or more contributor license agreements. See the NOTICE file - ~ distributed with this work for additional information - ~ regarding copyright ownership. The ASF licenses this file - ~ to you under the Apache License, Version 2.0 (the - ~ "License"); you may not use this file except in compliance - ~ with the License. You may obtain a copy of the License at - ~ - ~ http://www.apache.org/licenses/LICENSE-2.0 - ~ - ~ Unless required by applicable law or agreed to in writing, - ~ software distributed under the License is distributed on an - ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - ~ KIND, either express or implied. See the License for the - ~ specific language governing permissions and limitations - ~ under the License. - --> - -<component-set> - <components> - <component> - <role>org.apache.maven.archiva.configuration.ArchivaConfiguration</role> - <role-hint>database-cleanup</role-hint> - <implementation>org.apache.maven.archiva.configuration.DefaultArchivaConfiguration</implementation> - <requirements> - <requirement> - <role>org.codehaus.plexus.registry.Registry</role> - <role-hint>database-cleanup</role-hint> - </requirement> - <requirement> - <role>org.apache.maven.archiva.policies.PreDownloadPolicy</role> - <field-name>prePolicies</field-name> - </requirement> - <requirement> - <role>org.apache.maven.archiva.policies.PostDownloadPolicy</role> - <field-name>postPolicies</field-name> - </requirement> - </requirements> - </component> - <component> - <role>org.codehaus.plexus.registry.Registry</role> - <role-hint>database-cleanup</role-hint> - <implementation>org.codehaus.plexus.registry.commons.CommonsConfigurationRegistry</implementation> - <configuration> - <properties> - <xml fileName="${basedir}/target/test/repository-manager.xml" config-optional="true" config-forceCreate="true" - config-name="org.apache.maven.archiva.base" config-at="org.apache.maven.archiva"/> - </properties> - </configuration> - </component> - - <component> - <role>org.apache.maven.archiva.repository.RepositoryContentFactory</role> - <implementation>org.apache.maven.archiva.repository.RepositoryContentFactory</implementation> - <requirements> - <requirement> - <role>org.apache.maven.archiva.configuration.ArchivaConfiguration</role> - <role-hint>database-cleanup</role-hint> - </requirement> - </requirements> - </component> - </components> - - <component> - <role>org.codehaus.plexus.cache.Cache</role> - <role-hint>effective-project-cache</role-hint> - <implementation>org.codehaus.plexus.cache.ehcache.EhcacheCache</implementation> - <description>Effective Project Cache</description> - <configuration> - <disk-expiry-thread-interval-seconds>600</disk-expiry-thread-interval-seconds> - <disk-persistent>true</disk-persistent> - <disk-store-path>${java.io.tmpdir}/archiva/effectiveproject</disk-store-path> - <eternal>true</eternal> - <max-elements-in-memory>1000</max-elements-in-memory> - <memory-eviction-policy>LRU</memory-eviction-policy> - <name>effective-project-cache</name> - <overflow-to-disk>false</overflow-to-disk> - <!-- TODO: Adjust the time to live to be more sane (ie: huge 4+ hours) --> - <!-- 45 minutes = 2700 seconds --> - <time-to-idle-seconds>2700</time-to-idle-seconds> - <!-- 30 minutes = 1800 seconds --> - <time-to-live-seconds>1800</time-to-live-seconds> - </configuration> - </component> -</component-set> diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-dependency-tree-consumer/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-dependency-tree-consumer/pom.xml index fa046893e..12c821016 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-dependency-tree-consumer/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-dependency-tree-consumer/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-consumers</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-dependency-tree-consumer</artifactId> <name>Archiva Consumers :: Dependency Tree Consumer</name> diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/pom.xml index e87fda89c..3d0d77f22 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-consumers</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-lucene-consumers</artifactId> @@ -32,27 +32,47 @@ <dependencies> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-indexer</artifactId> + <artifactId>archiva-configuration</artifactId> </dependency> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-database</artifactId> + <artifactId>archiva-consumer-api</artifactId> </dependency> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-configuration</artifactId> + <artifactId>archiva-repository-layer</artifactId> </dependency> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-consumer-api</artifactId> + <artifactId>archiva-scheduler-api</artifactId> </dependency> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-repository-layer</artifactId> + <artifactId>archiva-scheduler-indexing</artifactId> </dependency> <dependency> - <groupId>org.apache.archiva</groupId> - <artifactId>archiva-scheduled</artifactId> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.registry</groupId> + <artifactId>plexus-registry-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-taskqueue</artifactId> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency> + <dependency> + <groupId>org.sonatype.nexus</groupId> + <artifactId>nexus-indexer</artifactId> </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> @@ -60,11 +80,6 @@ <scope>test</scope> </dependency> <dependency> - <groupId>org.apache.bcel</groupId> - <artifactId>bcel</artifactId> - <version>5.2</version> - </dependency> - <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <scope>test</scope> diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumer.java b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumer.java deleted file mode 100644 index 63b3c4de1..000000000 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumer.java +++ /dev/null @@ -1,153 +0,0 @@ -package org.apache.archiva.consumers.lucene; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import java.io.File; -import java.io.IOException; -import java.util.List; - -import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; -import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; -import org.apache.maven.archiva.consumers.ConsumerException; -import org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer; -import org.apache.maven.archiva.model.ArchivaArtifact; -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.scheduled.ArchivaTaskScheduler; -import org.apache.maven.archiva.scheduled.tasks.ArtifactIndexingTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; -import org.codehaus.plexus.taskqueue.TaskQueueException; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.sonatype.nexus.index.context.IndexingContext; -import org.sonatype.nexus.index.context.UnsupportedExistingLuceneIndexException; - -/** - * LuceneCleanupRemoveIndexedConsumer Clean up the index of artifacts that are no longer existing in the file system - * (managed repositories). - * - * @version $Id$ - */ -public class LuceneCleanupRemoveIndexedConsumer - extends AbstractMonitoredConsumer - implements DatabaseCleanupConsumer -{ - private static final Logger log = LoggerFactory.getLogger( LuceneCleanupRemoveIndexedConsumer.class ); - - private RepositoryContentFactory repoFactory; - - private ArchivaTaskScheduler scheduler; - - public LuceneCleanupRemoveIndexedConsumer( RepositoryContentFactory repoFactory, ArchivaTaskScheduler scheduler ) - { - this.repoFactory = repoFactory; - this.scheduler = scheduler; - } - - public void beginScan() - { - } - - public void completeScan() - { - } - - public List<String> getIncludedTypes() - { - return null; - } - - public void processArchivaArtifact( ArchivaArtifact artifact ) - throws ConsumerException - { - ManagedRepositoryContent repoContent = null; - - try - { - repoContent = repoFactory.getManagedRepositoryContent( artifact.getModel().getRepositoryId() ); - } - catch ( RepositoryException e ) - { - throw new ConsumerException( "Can't run index cleanup consumer: " + e.getMessage() ); - } - - ManagedRepositoryConfiguration repository = repoContent.getRepository(); - - IndexingContext context = null; - try - { - File artifactFile = new File( repoContent.getRepoRoot(), repoContent.toPath( artifact ) ); - - if ( !artifactFile.exists() ) - { - context = TaskCreator.createContext( repository ); - - ArtifactIndexingTask task = - TaskCreator.createIndexingTask( repository, artifactFile, ArtifactIndexingTask.Action.DELETE, - context ); - - log.debug( "Queueing indexing task '" + task + "' to remove the artifact from the index." ); - scheduler.queueIndexingTask( task ); - - // note we finish immediately here since it isn't done repo-by-repo. It might be nice to ensure that is - // the case for optimisation though - task = - TaskCreator.createIndexingTask( repository, artifactFile, ArtifactIndexingTask.Action.FINISH, - context ); - log.debug( "Queueing indexing task + '" + task + "' to finish indexing." ); - scheduler.queueIndexingTask( task ); - } - - } - catch ( TaskQueueException e ) - { - throw new ConsumerException( e.getMessage() ); - } - catch ( IOException e ) - { - throw new ConsumerException( e.getMessage(), e ); - } - catch ( UnsupportedExistingLuceneIndexException e ) - { - throw new ConsumerException( e.getMessage(), e ); - } - } - - public String getDescription() - { - return "Remove indexed content if not present on filesystem."; - } - - public String getId() - { - return "not-present-remove-indexed"; - } - - public boolean isPermanent() - { - return false; - } - - public void setRepositoryContentFactory( RepositoryContentFactory repoFactory ) - { - this.repoFactory = repoFactory; - } -} diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/archiva/consumers/lucene/NexusIndexerConsumer.java b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/archiva/consumers/lucene/NexusIndexerConsumer.java index 2567d13ba..be141b307 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/archiva/consumers/lucene/NexusIndexerConsumer.java +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/archiva/consumers/lucene/NexusIndexerConsumer.java @@ -26,6 +26,8 @@ import java.util.Collections; import java.util.Date; import java.util.List; +import org.apache.archiva.scheduler.ArchivaTaskScheduler; +import org.apache.archiva.scheduler.indexing.ArtifactIndexingTask; import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.ConfigurationNames; import org.apache.maven.archiva.configuration.FileTypes; @@ -34,9 +36,6 @@ import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; import org.apache.maven.archiva.consumers.ConsumerException; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; import org.apache.maven.archiva.repository.content.ManagedDefaultRepositoryContent; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; -import org.apache.maven.archiva.scheduled.tasks.ArtifactIndexingTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException; import org.codehaus.plexus.registry.Registry; @@ -64,13 +63,14 @@ public class NexusIndexerConsumer private File managedRepository; - private ArchivaTaskScheduler scheduler; + private ArchivaTaskScheduler<ArtifactIndexingTask> scheduler; private IndexingContext context; private List<String> includes = new ArrayList<String>(); - public NexusIndexerConsumer( ArchivaTaskScheduler scheduler, ArchivaConfiguration configuration, FileTypes filetypes ) + public NexusIndexerConsumer( ArchivaTaskScheduler<ArtifactIndexingTask> scheduler, + ArchivaConfiguration configuration, FileTypes filetypes ) { this.configuration = configuration; this.filetypes = filetypes; @@ -102,7 +102,7 @@ public class NexusIndexerConsumer try { - context = TaskCreator.createContext( repository ); + context = ArtifactIndexingTask.createContext( repository ); } catch ( IOException e ) { @@ -120,12 +120,12 @@ public class NexusIndexerConsumer File artifactFile = new File( managedRepository, path ); ArtifactIndexingTask task = - TaskCreator.createIndexingTask( repositoryContent.getRepository(), artifactFile, - ArtifactIndexingTask.Action.ADD, context ); + new ArtifactIndexingTask( repositoryContent.getRepository(), artifactFile, ArtifactIndexingTask.Action.ADD, + context ); try { log.debug( "Queueing indexing task + '" + task + "' to add or update the artifact in the index." ); - scheduler.queueIndexingTask( task ); + scheduler.queueTask( task ); } catch ( TaskQueueException e ) { @@ -136,12 +136,12 @@ public class NexusIndexerConsumer public void completeScan() { ArtifactIndexingTask task = - TaskCreator.createIndexingTask( repositoryContent.getRepository(), null, - ArtifactIndexingTask.Action.FINISH, context ); + new ArtifactIndexingTask( repositoryContent.getRepository(), null, ArtifactIndexingTask.Action.FINISH, + context ); try { log.debug( "Queueing indexing task + '" + task + "' to finish indexing." ); - scheduler.queueIndexingTask( task ); + scheduler.queueTask( task ); } catch ( TaskQueueException e ) { @@ -173,7 +173,7 @@ public class NexusIndexerConsumer includes.clear(); includes.addAll( filetypes.getFileTypePatterns( FileTypes.INDEXABLE_CONTENT ) ); - + includes.addAll( filetypes.getFileTypePatterns( FileTypes.ARTIFACTS ) ); } diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/resources/META-INF/spring-context.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/resources/META-INF/spring-context.xml index 4e16b7f7d..36cdd703b 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/resources/META-INF/spring-context.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/resources/META-INF/spring-context.xml @@ -8,9 +8,4 @@ <constructor-arg ref="archivaConfiguration"/> <constructor-arg ref="fileTypes"/> </bean> - - <bean id="indexCleanupConsumer" class="org.apache.archiva.consumers.lucene.LuceneCleanupRemoveIndexedConsumer" lazy-init="true"> - <constructor-arg ref="repositoryContentFactory"/> - <constructor-arg ref="archivaTaskScheduler"/> - </bean> </beans>
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumerTest.java b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumerTest.java deleted file mode 100644 index 1eb7237f9..000000000 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumerTest.java +++ /dev/null @@ -1,148 +0,0 @@ -package org.apache.archiva.consumers.lucene; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import java.io.File; -import java.util.List; - -import org.apache.commons.io.FileUtils; -import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; -import org.apache.maven.archiva.model.ArchivaArtifact; -import org.apache.maven.archiva.repository.ManagedRepositoryContent; -import org.apache.maven.archiva.repository.RepositoryContentFactory; -import org.apache.maven.archiva.repository.content.ManagedDefaultRepositoryContent; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; -import org.apache.maven.archiva.scheduled.tasks.ArtifactIndexingTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; -import org.codehaus.plexus.spring.PlexusInSpringTestCase; -import org.codehaus.plexus.taskqueue.TaskQueue; -import org.easymock.MockControl; -import org.easymock.classextension.MockClassControl; - -/** - * LuceneCleanupRemoveIndexedConsumerTest - */ -public class LuceneCleanupRemoveIndexedConsumerTest - extends PlexusInSpringTestCase -{ - private LuceneCleanupRemoveIndexedConsumer consumer; - - private RepositoryContentFactory repoFactory; - - private MockControl repoFactoryControl; - - private ManagedRepositoryConfiguration repositoryConfig; - - private TaskQueue indexingQueue; - - public void setUp() - throws Exception - { - super.setUp(); - - repoFactoryControl = MockClassControl.createControl( RepositoryContentFactory.class ); - repoFactory = (RepositoryContentFactory) repoFactoryControl.getMock(); - - ArchivaTaskScheduler scheduler = (ArchivaTaskScheduler) lookup( ArchivaTaskScheduler.class ); - - indexingQueue = (TaskQueue) lookup( TaskQueue.ROLE, "indexing" ); - - consumer = new LuceneCleanupRemoveIndexedConsumer( repoFactory, scheduler ); - - repositoryConfig = new ManagedRepositoryConfiguration(); - repositoryConfig.setId( "test-repo" ); - repositoryConfig.setLocation( getBasedir() + "/target/test-classes/test-repo" ); - repositoryConfig.setLayout( "default" ); - repositoryConfig.setName( "Test Repository" ); - repositoryConfig.setScanned( true ); - repositoryConfig.setSnapshots( false ); - repositoryConfig.setReleases( true ); - repositoryConfig.setIndexDir( getBasedir() + "/target/test-classes/test-repo/.cleanup-index" ); - } - - public void tearDown() - throws Exception - { - FileUtils.deleteDirectory( new File( repositoryConfig.getIndexDir() ) ); - - super.tearDown(); - } - - @SuppressWarnings( "unchecked" ) - public void testProcessArtifactArtifactDoesNotExist() - throws Exception - { - assertTrue( indexingQueue.getQueueSnapshot().isEmpty() ); - - ArchivaArtifact artifact = - new ArchivaArtifact( "org.apache.archiva", "archiva-lucene-consumers", "1.2", null, "jar", "test-repo" ); - - ManagedRepositoryContent repoContent = new ManagedDefaultRepositoryContent(); - repoContent.setRepository( repositoryConfig ); - - File artifactFile = new File( repoContent.getRepoRoot(), repoContent.toPath( artifact ) ); - - repoFactoryControl.expectAndReturn( repoFactory.getManagedRepositoryContent( repositoryConfig.getId() ), - repoContent ); - - repoFactoryControl.replay(); - - consumer.processArchivaArtifact( artifact ); - - repoFactoryControl.verify(); - - List<ArtifactIndexingTask> queue = indexingQueue.getQueueSnapshot(); - assertEquals( 2, queue.size() ); - ArtifactIndexingTask task = - TaskCreator.createIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.DELETE, null ); - assertEquals( task, queue.get( 0 ) ); - task = - TaskCreator.createIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.FINISH, null ); - assertEquals( task, queue.get( 1 ) ); - } - - public void testProcessArtifactArtifactExists() - throws Exception - { - assertTrue( indexingQueue.getQueueSnapshot().isEmpty() ); - - ArchivaArtifact artifact = - new ArchivaArtifact( "org.apache.maven.archiva", "archiva-lucene-cleanup", "1.0", null, "jar", "test-repo" ); - ManagedRepositoryContent repoContent = new ManagedDefaultRepositoryContent(); - repoContent.setRepository( repositoryConfig ); - - repoFactoryControl.expectAndReturn( repoFactory.getManagedRepositoryContent( repositoryConfig.getId() ), - repoContent ); - - repoFactoryControl.replay(); - - consumer.processArchivaArtifact( artifact ); - - repoFactoryControl.verify(); - - assertTrue( indexingQueue.getQueueSnapshot().isEmpty() ); - } - - @Override - protected String getPlexusConfigLocation() - { - return "/org/apache/archiva/consumers/lucene/LuceneConsumersTest.xml"; - } -} diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/archiva/consumers/lucene/NexusIndexerConsumerTest.java b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/archiva/consumers/lucene/NexusIndexerConsumerTest.java index fc725f785..7d6953ddd 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/archiva/consumers/lucene/NexusIndexerConsumerTest.java +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/archiva/consumers/lucene/NexusIndexerConsumerTest.java @@ -27,20 +27,16 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import org.apache.archiva.scheduler.ArchivaTaskScheduler; +import org.apache.archiva.scheduler.indexing.ArtifactIndexingTask; import org.apache.commons.io.FileUtils; -import org.apache.maven.archiva.common.ArchivaException; import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.FileTypes; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; -import org.apache.maven.archiva.scheduled.tasks.ArtifactIndexingTask; -import org.apache.maven.archiva.scheduled.tasks.DatabaseTask; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; import org.codehaus.plexus.spring.PlexusInSpringTestCase; import org.codehaus.plexus.taskqueue.TaskQueueException; -import org.codehaus.plexus.taskqueue.execution.TaskExecutionException; /** * NexusIndexerConsumerTest @@ -49,26 +45,11 @@ public class NexusIndexerConsumerTest extends PlexusInSpringTestCase { private final class ArchivaTaskSchedulerStub - implements ArchivaTaskScheduler + implements ArchivaTaskScheduler<ArtifactIndexingTask> { Set<File> indexed = new HashSet<File>(); - public void startup() - throws ArchivaException - { - } - - public void scheduleDatabaseTasks() - throws TaskExecutionException - { - } - - public void queueRepositoryTask( RepositoryTask task ) - throws TaskQueueException - { - } - - public void queueIndexingTask( ArtifactIndexingTask task ) + public void queueTask( ArtifactIndexingTask task ) throws TaskQueueException { switch ( task.getAction() ) @@ -91,21 +72,6 @@ public class NexusIndexerConsumerTest break; } } - - public void queueDatabaseTask( DatabaseTask task ) - throws TaskQueueException - { - } - - public boolean isProcessingRepositoryTask( String repositoryId ) - { - return false; - } - - public boolean isProcessingDatabaseTask() - { - return false; - } } private KnownRepositoryContentConsumer nexusIndexerConsumer; diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/archiva/consumers/lucene/stubs/ArchivaDAOStub.java b/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/archiva/consumers/lucene/stubs/ArchivaDAOStub.java deleted file mode 100644 index 47ebdce62..000000000 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/java/org/apache/archiva/consumers/lucene/stubs/ArchivaDAOStub.java +++ /dev/null @@ -1,74 +0,0 @@ -package org.apache.archiva.consumers.lucene.stubs; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import java.io.Serializable; -import java.util.List; - -import org.apache.maven.archiva.database.ArchivaDAO; -import org.apache.maven.archiva.database.ArtifactDAO; -import org.apache.maven.archiva.database.ProjectModelDAO; -import org.apache.maven.archiva.database.RepositoryContentStatisticsDAO; -import org.apache.maven.archiva.database.RepositoryProblemDAO; -import org.apache.maven.archiva.database.SimpleConstraint; - -/** - * Using a stub for faster tests! Not really used for the unit tests, just for dependency injection. - */ -public class ArchivaDAOStub - implements ArchivaDAO -{ - - public ArtifactDAO getArtifactDAO() - { - // TODO Auto-generated method stub - return null; - } - - public ProjectModelDAO getProjectModelDAO() - { - // TODO Auto-generated method stub - return null; - } - - public RepositoryContentStatisticsDAO getRepositoryContentStatisticsDAO() - { - // TODO Auto-generated method stub - return null; - } - - public RepositoryProblemDAO getRepositoryProblemDAO() - { - // TODO Auto-generated method stub - return null; - } - - public List<?> query( SimpleConstraint constraint ) - { - // TODO Auto-generated method stub - return null; - } - - public Object save( Serializable obj ) - { - // TODO Auto-generated method stub - return null; - } -} diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/pom.xml new file mode 100644 index 000000000..5c9ec1c04 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/pom.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>archiva-consumers</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>archiva-metadata-consumer</artifactId> + <name>Archiva Metadata Consumer</name> + <dependencies> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-consumer-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-model</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-repository-api</artifactId> + </dependency> + <dependency> <!-- FIXME: temporary coupling to file based repo --> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-repository-file</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-repository-layer</artifactId> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java b/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java new file mode 100644 index 000000000..44c03754f --- /dev/null +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java @@ -0,0 +1,197 @@ +package org.apache.archiva.consumers.metadata; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.io.File; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +import org.apache.archiva.metadata.model.ArtifactMetadata; +import org.apache.archiva.metadata.model.ProjectVersionMetadata; +import org.apache.archiva.metadata.model.ProjectMetadata; +import org.apache.archiva.metadata.repository.MetadataRepository; +import org.apache.maven.archiva.configuration.ArchivaConfiguration; +import org.apache.maven.archiva.configuration.ConfigurationNames; +import org.apache.maven.archiva.configuration.FileTypes; +import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; +import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; +import org.apache.maven.archiva.consumers.ConsumerException; +import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; +import org.apache.maven.archiva.model.ArtifactReference; +import org.apache.maven.archiva.repository.ManagedRepositoryContent; +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; +import org.codehaus.plexus.registry.Registry; +import org.codehaus.plexus.registry.RegistryListener; + +/** + * Take an artifact off of disk and put it into the metadata repository. + * + * @version $Id: ArtifactUpdateDatabaseConsumer.java 718864 2008-11-19 06:33:35Z brett $ + * @plexus.component role="org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer" + * role-hint="create-archiva-metadata" instantiation-strategy="per-lookup" + */ +public class ArchivaMetadataCreationConsumer + extends AbstractMonitoredConsumer + implements KnownRepositoryContentConsumer, RegistryListener, Initializable +{ + /** + * @plexus.configuration default-value="create-archiva-metadata" + */ + private String id; + + /** + * @plexus.configuration default-value="Create basic metadata for Archiva to be able to reference the artifact" + */ + private String description; + + /** + * @plexus.requirement + */ + private ArchivaConfiguration configuration; + + /** + * @plexus.requirement + */ + private FileTypes filetypes; + + private Date whenGathered; + + /** + * @plexus.requirement + */ + private ManagedRepositoryContent repository; + + private List<String> includes = new ArrayList<String>(); + + /** + * @plexus.requirement + */ + private MetadataRepository metadataRepository; + + public String getId() + { + return this.id; + } + + public String getDescription() + { + return this.description; + } + + public boolean isPermanent() + { + return true; + } + + public List<String> getExcludes() + { + return getDefaultArtifactExclusions(); + } + + public List<String> getIncludes() + { + return this.includes; + } + + public void beginScan( ManagedRepositoryConfiguration repo, Date whenGathered ) + throws ConsumerException + { + this.repository.setRepository( repo ); + this.whenGathered = whenGathered; + } + + public void processFile( String path ) + throws ConsumerException + { + // note that we do minimal processing including checksums and POM information for performance of + // the initial scan. Any request for this information will be intercepted and populated on-demand + // or picked up by subsequent scans + ArtifactReference artifact; + try + { + artifact = repository.toArtifactReference( path ); + } + catch ( LayoutException e ) + { + throw new ConsumerException( e.getMessage(), e ); + } + + File file = new File( repository.getRepoRoot(), path ); + + ProjectMetadata project = new ProjectMetadata(); + project.setNamespace( artifact.getGroupId() ); + project.setId( artifact.getArtifactId() ); + + ProjectVersionMetadata versionMetadata = new ProjectVersionMetadata(); + versionMetadata.setId( artifact.getVersion() ); // TODO: this should be the version from the POM, not the timestamped version + + ArtifactMetadata artifactMeta = new ArtifactMetadata(); + artifactMeta.setId( file.getName() ); + artifactMeta.setUpdated( file.lastModified() ); + artifactMeta.setSize( file.length() ); + artifactMeta.setVersion( artifact.getVersion() ); + + // TODO: read the POM and fill in the rest of the information + + // TODO: store "whenGathered" + + // TODO: transaction + // read the metadata and update it if it is newer or doesn't exist + metadataRepository.updateArtifact( repository.getId(), project.getNamespace(), project.getId(), versionMetadata.getId(), artifactMeta ); + metadataRepository.updateProjectVersion( repository.getId(), project.getNamespace(), project.getId(), versionMetadata ); + metadataRepository.updateProject( repository.getId(), project ); + } + + public void completeScan() + { + /* do nothing */ + } + + public void afterConfigurationChange( Registry registry, String propertyName, Object propertyValue ) + { + if ( ConfigurationNames.isRepositoryScanning( propertyName ) ) + { + initIncludes(); + } + } + + public void beforeConfigurationChange( Registry registry, String propertyName, Object propertyValue ) + { + /* do nothing */ + } + + private void initIncludes() + { + includes.clear(); + + includes.addAll( filetypes.getFileTypePatterns( FileTypes.ARTIFACTS ) ); + } + + public void initialize() + throws InitializationException + { + configuration.addChangeListener( this ); + + initIncludes(); + } +} diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-signature-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-signature-consumers/pom.xml index 7afdc1636..f9532f446 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-signature-consumers/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-signature-consumers/pom.xml @@ -20,7 +20,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-consumers</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-signature-consumers</artifactId> diff --git a/archiva-modules/archiva-base/archiva-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/pom.xml index b444f0259..aa07bdea6 100644 --- a/archiva-modules/archiva-base/archiva-consumers/pom.xml +++ b/archiva-modules/archiva-base/archiva-consumers/pom.xml @@ -1,18 +1,21 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - ~ Copyright 2005-2006 The Apache Software Foundation. + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at ~ - ~ Licensed under the Apache License, Version 2.0 (the "License"); - ~ you may not use this file except in compliance with the License. - ~ You may obtain a copy of the License at + ~ http://www.apache.org/licenses/LICENSE-2.0 ~ - ~ http://www.apache.org/licenses/LICENSE-2.0 - ~ - ~ Unless required by applicable law or agreed to in writing, software - ~ distributed under the License is distributed on an "AS IS" BASIS, - ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ~ See the License for the specific language governing permissions and - ~ limitations under the License. + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. --> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> @@ -20,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-consumers</artifactId> @@ -34,6 +37,7 @@ <module>archiva-lucene-consumers</module> <module>archiva-signature-consumers</module> <module>archiva-dependency-tree-consumer</module> + <module>archiva-metadata-consumer</module> </modules> <build> diff --git a/archiva-modules/archiva-base/archiva-converter/pom.xml b/archiva-modules/archiva-base/archiva-converter/pom.xml index 75735a78d..fb94cdbde 100644 --- a/archiva-modules/archiva-base/archiva-converter/pom.xml +++ b/archiva-modules/archiva-base/archiva-converter/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-converter</artifactId> @@ -41,6 +41,10 @@ <artifactId>archiva-repository-layer</artifactId> </dependency> <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-repository-scanner</artifactId> + </dependency> + <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-i18n</artifactId> </dependency> diff --git a/archiva-modules/archiva-base/archiva-converter/src/main/java/org/apache/maven/archiva/converter/legacy/DefaultLegacyRepositoryConverter.java b/archiva-modules/archiva-base/archiva-converter/src/main/java/org/apache/maven/archiva/converter/legacy/DefaultLegacyRepositoryConverter.java index 1831fd1ae..b37e0c893 100644 --- a/archiva-modules/archiva-base/archiva-converter/src/main/java/org/apache/maven/archiva/converter/legacy/DefaultLegacyRepositoryConverter.java +++ b/archiva-modules/archiva-base/archiva-converter/src/main/java/org/apache/maven/archiva/converter/legacy/DefaultLegacyRepositoryConverter.java @@ -19,23 +19,23 @@ package org.apache.maven.archiva.converter.legacy; * under the License. */ +import java.io.File; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.apache.archiva.repository.scanner.RepositoryScanner; +import org.apache.archiva.repository.scanner.RepositoryScannerException; import org.apache.maven.archiva.common.utils.PathUtil; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; import org.apache.maven.archiva.converter.RepositoryConversionException; -import org.apache.maven.archiva.repository.RepositoryException; -import org.apache.maven.archiva.repository.scanner.RepositoryScanner; import org.apache.maven.artifact.repository.ArtifactRepository; import org.apache.maven.artifact.repository.ArtifactRepositoryFactory; import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout; -import java.io.File; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - /** * DefaultLegacyRepositoryConverter * @@ -97,7 +97,7 @@ public class DefaultLegacyRepositoryConverter repoScanner.scan( legacyRepository, knownConsumers, invalidConsumers, ignoredContent, RepositoryScanner.FRESH_SCAN ); } - catch ( RepositoryException e ) + catch ( RepositoryScannerException e ) { throw new RepositoryConversionException( "Error convering legacy repository.", e ); } diff --git a/archiva-modules/archiva-base/archiva-dependency-graph/pom.xml b/archiva-modules/archiva-base/archiva-dependency-graph/pom.xml index bf6716d88..7bf65370d 100644 --- a/archiva-modules/archiva-base/archiva-dependency-graph/pom.xml +++ b/archiva-modules/archiva-base/archiva-dependency-graph/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-dependency-graph</artifactId> diff --git a/archiva-modules/archiva-base/archiva-indexer/pom.xml b/archiva-modules/archiva-base/archiva-indexer/pom.xml index adcfdab5b..5eb3c19eb 100644 --- a/archiva-modules/archiva-base/archiva-indexer/pom.xml +++ b/archiva-modules/archiva-base/archiva-indexer/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-indexer</artifactId> @@ -30,13 +30,17 @@ <dependencies> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-repository-layer</artifactId> + <artifactId>archiva-configuration</artifactId> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-model</artifactId> </dependency> <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-repository-layer</artifactId> + </dependency> + <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-core</artifactId> </dependency> diff --git a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/util/SearchUtil.java b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/util/SearchUtil.java index cd15df2de..2048e6002 100644 --- a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/util/SearchUtil.java +++ b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/util/SearchUtil.java @@ -21,8 +21,6 @@ package org.apache.archiva.indexer.util; /** * SearchUtil - utility class for search. - * - * @version */ public class SearchUtil { diff --git a/archiva-modules/archiva-base/archiva-model/pom.xml b/archiva-modules/archiva-base/archiva-model/pom.xml index f686016c9..90249d6b8 100755 --- a/archiva-modules/archiva-base/archiva-model/pom.xml +++ b/archiva-modules/archiva-base/archiva-model/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-model</artifactId> diff --git a/archiva-modules/archiva-base/archiva-policies/pom.xml b/archiva-modules/archiva-base/archiva-policies/pom.xml index cbbe88d5d..22f14c2c0 100644 --- a/archiva-modules/archiva-base/archiva-policies/pom.xml +++ b/archiva-modules/archiva-base/archiva-policies/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-policies</artifactId> diff --git a/archiva-modules/archiva-base/archiva-proxy/pom.xml b/archiva-modules/archiva-base/archiva-proxy/pom.xml index 90a1167ef..334b003ba 100644 --- a/archiva-modules/archiva-base/archiva-proxy/pom.xml +++ b/archiva-modules/archiva-base/archiva-proxy/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-proxy</artifactId> @@ -43,7 +43,11 @@ </dependency> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-scheduled</artifactId> + <artifactId>archiva-repository-scanner</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduler-repository</artifactId> </dependency> <dependency> <groupId>commons-io</groupId> diff --git a/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java b/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java index 06ab597cd..1306eb76e 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java +++ b/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java @@ -27,9 +27,11 @@ import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import java.util.Properties; import java.util.Map.Entry; +import java.util.Properties; +import org.apache.archiva.scheduler.repository.RepositoryArchivaTaskScheduler; +import org.apache.archiva.scheduler.repository.RepositoryTask; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; @@ -55,9 +57,6 @@ import org.apache.maven.archiva.repository.RepositoryException; import org.apache.maven.archiva.repository.RepositoryNotFoundException; import org.apache.maven.archiva.repository.metadata.MetadataTools; import org.apache.maven.archiva.repository.metadata.RepositoryMetadataException; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; import org.apache.maven.wagon.ConnectionException; import org.apache.maven.wagon.ResourceDoesNotExistException; import org.apache.maven.wagon.Wagon; @@ -133,9 +132,9 @@ public class DefaultRepositoryProxyConnectors private WagonFactory wagonFactory; /** - * @plexus.requirement + * @plexus.requirement role="org.apache.archiva.scheduler.ArchivaTaskScheduler" role-hint="repository" */ - private ArchivaTaskScheduler scheduler; + private RepositoryArchivaTaskScheduler scheduler; public File fetchFromProxies( ManagedRepositoryContent repository, ArtifactReference artifact ) throws ProxyDownloadException @@ -581,15 +580,19 @@ public class DefaultRepositoryProxyConnectors } return resource; - } - + } + private void queueRepositoryTask( String repositoryId, File localFile ) { - RepositoryTask task = TaskCreator.createRepositoryTask( repositoryId, localFile, true, true ); - + RepositoryTask task = new RepositoryTask(); + task.setRepositoryId( repositoryId ); + task.setResourceFile( localFile ); + task.setUpdateRelatedArtifacts( true ); + task.setScanAll( true ); + try { - scheduler.queueRepositoryTask( task ); + scheduler.queueTask( task ); } catch ( TaskQueueException e ) { @@ -623,8 +626,9 @@ public class DefaultRepositoryProxyConnectors * @param remoteRepository the remote repository to transfer from. * @param remotePath the remote path to the resource to get. * @param repository the managed repository that will hold the file - * @param localFile the local file that should contain the downloaded contents - * @param type the type of checksum to transfer (example: ".md5" or ".sha1") + * @param resource the local file that should contain the downloaded contents + * @param tmpDirectory the temporary directory to download to + * @param ext the type of checksum to transfer (example: ".md5" or ".sha1") * @throws ProxyException if copying the downloaded file into place did not succeed. */ private File transferChecksum( Wagon wagon, RemoteRepositoryContent remoteRepository, String remotePath, diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/CacheFailuresTransferTest.xml b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/CacheFailuresTransferTest.xml index 0c735768c..80bc628da 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/CacheFailuresTransferTest.xml +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/CacheFailuresTransferTest.xml @@ -78,7 +78,8 @@ <field-name>urlFailureCache</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ChecksumTransferTest.xml b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ChecksumTransferTest.xml index 1c6faa919..d5d032574 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ChecksumTransferTest.xml +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ChecksumTransferTest.xml @@ -76,7 +76,8 @@ <field-name>urlFailureCache</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ErrorHandlingTest.xml b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ErrorHandlingTest.xml index f5795b797..884b9778f 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ErrorHandlingTest.xml +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ErrorHandlingTest.xml @@ -81,7 +81,8 @@ <field-name>urlFailureCache</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/HttpProxyTransferTest.xml b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/HttpProxyTransferTest.xml index 34bd22bf8..620cc84d0 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/HttpProxyTransferTest.xml +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/HttpProxyTransferTest.xml @@ -72,7 +72,8 @@ <role-hint>default</role-hint> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ManagedDefaultTransferTest.xml b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ManagedDefaultTransferTest.xml index 1c6faa919..d5d032574 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ManagedDefaultTransferTest.xml +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ManagedDefaultTransferTest.xml @@ -76,7 +76,8 @@ <field-name>urlFailureCache</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ManagedLegacyTransferTest.xml b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ManagedLegacyTransferTest.xml index 1c6faa919..d5d032574 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ManagedLegacyTransferTest.xml +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/ManagedLegacyTransferTest.xml @@ -76,7 +76,8 @@ <field-name>urlFailureCache</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/MetadataTransferTest.xml b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/MetadataTransferTest.xml index 2a03b3a43..2b14dd8fb 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/MetadataTransferTest.xml +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/MetadataTransferTest.xml @@ -95,7 +95,8 @@ <field-name>urlFailureCache</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/RelocateTransferTest.xml b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/RelocateTransferTest.xml index 1c6faa919..d5d032574 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/RelocateTransferTest.xml +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/RelocateTransferTest.xml @@ -76,7 +76,8 @@ <field-name>urlFailureCache</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/SnapshotTransferTest.xml b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/SnapshotTransferTest.xml index 1c6faa919..d5d032574 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/SnapshotTransferTest.xml +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/resources/org/apache/maven/archiva/proxy/SnapshotTransferTest.xml @@ -76,7 +76,8 @@ <field-name>urlFailureCache</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-base/archiva-repository-layer/pom.xml b/archiva-modules/archiva-base/archiva-repository-layer/pom.xml index 4848285dd..a939999f2 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/pom.xml +++ b/archiva-modules/archiva-base/archiva-repository-layer/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-repository-layer</artifactId> diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumersStub.java b/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumersStub.java deleted file mode 100644 index 73ef2ca1a..000000000 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumersStub.java +++ /dev/null @@ -1,22 +0,0 @@ -package org.apache.maven.archiva.repository.scanner; - -import java.util.Date; -import org.apache.maven.archiva.configuration.ArchivaConfiguration; - -public class RepositoryContentConsumersStub - extends RepositoryContentConsumers -{ - public RepositoryContentConsumersStub(ArchivaConfiguration archivaConfiguration) - { - super(archivaConfiguration); - } - - @Override - public Date getStartTime() - { - Date startTimeForTest = new Date( System.currentTimeMillis() ); - startTimeForTest.setTime( 12345678 ); - - return startTimeForTest; - } -} diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/pom.xml b/archiva-modules/archiva-base/archiva-repository-scanner/pom.xml new file mode 100644 index 000000000..bafad290f --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/pom.xml @@ -0,0 +1,54 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>archiva-base</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>archiva-repository-scanner</artifactId> + <name>Archiva Repository Scanner</name> + <dependencies> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-consumer-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-configuration</artifactId> + </dependency> + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring-context</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-spring</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-simple</artifactId> + <scope>test</scope> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/DefaultRepositoryScanner.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/DefaultRepositoryScanner.java index 37ee25220..f2094dcd7 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/DefaultRepositoryScanner.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/DefaultRepositoryScanner.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner; +package org.apache.archiva.repository.scanner; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -29,14 +29,13 @@ import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; import org.apache.maven.archiva.consumers.RepositoryContentConsumer; -import org.apache.maven.archiva.repository.RepositoryException; import org.codehaus.plexus.util.DirectoryWalker; /** * DefaultRepositoryScanner * * @version $Id$ - * @plexus.component role="org.apache.maven.archiva.repository.scanner.RepositoryScanner" + * @plexus.component role="org.apache.archiva.repository.scanner.RepositoryScanner" */ public class DefaultRepositoryScanner implements RepositoryScanner @@ -52,7 +51,7 @@ public class DefaultRepositoryScanner private RepositoryContentConsumers consumerUtil; public RepositoryScanStatistics scan( ManagedRepositoryConfiguration repository, long changesSince ) - throws RepositoryException + throws RepositoryScannerException { List<KnownRepositoryContentConsumer> knownContentConsumers = consumerUtil.getSelectedKnownConsumers(); List<InvalidRepositoryContentConsumer> invalidContentConsumers = consumerUtil.getSelectedInvalidConsumers(); @@ -65,7 +64,7 @@ public class DefaultRepositoryScanner List<KnownRepositoryContentConsumer> knownContentConsumers, List<InvalidRepositoryContentConsumer> invalidContentConsumers, List<String> ignoredContentPatterns, long changesSince ) - throws RepositoryException + throws RepositoryScannerException { if ( repository == null ) { @@ -73,7 +72,7 @@ public class DefaultRepositoryScanner } File repositoryBase = new File( repository.getLocation() ); - + if ( !repositoryBase.exists() ) { throw new UnsupportedOperationException( "Unable to scan a repository, directory " diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumers.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryContentConsumers.java index ec54b041e..6f22edebe 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumers.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryContentConsumers.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner; +package org.apache.archiva.repository.scanner; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -26,6 +26,8 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import org.apache.archiva.repository.scanner.functors.ConsumerProcessFileClosure; +import org.apache.archiva.repository.scanner.functors.TriggerBeginScanClosure; import org.apache.archiva.repository.scanner.functors.TriggerScanCompletedClosure; import org.apache.commons.collections.Closure; import org.apache.commons.collections.CollectionUtils; @@ -36,35 +38,32 @@ import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; 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.repository.scanner.functors.ConsumerProcessFileClosure; -import org.apache.maven.archiva.repository.scanner.functors.ConsumerWantsFilePredicate; -import org.apache.maven.archiva.repository.scanner.functors.TriggerBeginScanClosure; +import org.apache.maven.archiva.consumers.functors.ConsumerWantsFilePredicate; import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; /** - * RepositoryContentConsumerUtil - * + * RepositoryContentConsumerUtil + * * @version $Id$ */ -public class RepositoryContentConsumers - implements ApplicationContextAware +public class RepositoryContentConsumers implements ApplicationContextAware { private ApplicationContext applicationContext; - + private ArchivaConfiguration archivaConfiguration; private List<KnownRepositoryContentConsumer> selectedKnownConsumers; private List<InvalidRepositoryContentConsumer> selectedInvalidConsumers; - - public RepositoryContentConsumers( ArchivaConfiguration archivaConfiguration ) + + public RepositoryContentConsumers(ArchivaConfiguration archivaConfiguration) { - this.archivaConfiguration = archivaConfiguration; + this.archivaConfiguration = archivaConfiguration; } - public void setApplicationContext( ApplicationContext applicationContext ) + public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { this.applicationContext = applicationContext; @@ -72,12 +71,13 @@ public class RepositoryContentConsumers /** * <p> - * Get the list of Ids associated with those {@link KnownRepositoryContentConsumer} that have been selected in the - * configuration to execute. + * Get the list of Ids associated with those {@link KnownRepositoryContentConsumer} that have + * been selected in the configuration to execute. * </p> + * * <p> - * NOTE: This list can be larger and contain entries that might not exist or be available in the classpath, or as a - * component. + * NOTE: This list can be larger and contain entries that might not exist or be available + * in the classpath, or as a component. * </p> * * @return the list of consumer ids that have been selected by the configuration. @@ -90,12 +90,13 @@ public class RepositoryContentConsumers /** * <p> - * Get the list of Ids associated with those {@link InvalidRepositoryContentConsumer} that have been selected in the - * configuration to execute. + * Get the list of Ids associated with those {@link InvalidRepositoryContentConsumer} that have + * been selected in the configuration to execute. * </p> + * * <p> - * NOTE: This list can be larger and contain entries that might not exist or be available in the classpath, or as a - * component. + * NOTE: This list can be larger and contain entries that might not exist or be available + * in the classpath, or as a component. * </p> * * @return the list of consumer ids that have been selected by the configuration. @@ -107,8 +108,8 @@ public class RepositoryContentConsumers } /** - * Get the map of {@link String} ids to {@link KnownRepositoryContentConsumer} implementations, for those consumers - * that have been selected according to the active configuration. + * Get the map of {@link String} ids to {@link KnownRepositoryContentConsumer} implementations, + * for those consumers that have been selected according to the active configuration. * * @return the map of String ids to {@link KnownRepositoryContentConsumer} objects. */ @@ -125,15 +126,14 @@ public class RepositoryContentConsumers } /** - * Get the map of {@link String} ids to {@link InvalidRepositoryContentConsumer} implementations, for those - * consumers that have been selected according to the active configuration. + * Get the map of {@link String} ids to {@link InvalidRepositoryContentConsumer} implementations, + * for those consumers that have been selected according to the active configuration. * * @return the map of String ids to {@link InvalidRepositoryContentConsumer} objects. */ public Map<String, InvalidRepositoryContentConsumer> getSelectedInvalidConsumersMap() { - Map<String, InvalidRepositoryContentConsumer> consumerMap = - new HashMap<String, InvalidRepositoryContentConsumer>(); + Map<String, InvalidRepositoryContentConsumer> consumerMap = new HashMap<String, InvalidRepositoryContentConsumer>(); for ( InvalidRepositoryContentConsumer consumer : getSelectedInvalidConsumers() ) { @@ -144,10 +144,11 @@ public class RepositoryContentConsumers } /** - * Get the list of {@link KnownRepositoryContentConsumer} objects that are selected according to the active - * configuration. + * Get the list of {@link KnownRepositoryContentConsumer} objects that are + * selected according to the active configuration. * - * @return the list of {@link KnownRepositoryContentConsumer} that have been selected by the active configuration. + * @return the list of {@link KnownRepositoryContentConsumer} that have been selected + * by the active configuration. */ public synchronized List<KnownRepositoryContentConsumer> getSelectedKnownConsumers() { @@ -170,10 +171,11 @@ public class RepositoryContentConsumers } /** - * Get the list of {@link InvalidRepositoryContentConsumer} objects that are selected according to the active - * configuration. + * Get the list of {@link InvalidRepositoryContentConsumer} objects that are + * selected according to the active configuration. * - * @return the list of {@link InvalidRepositoryContentConsumer} that have been selected by the active configuration. + * @return the list of {@link InvalidRepositoryContentConsumer} that have been selected + * by the active configuration. */ public synchronized List<InvalidRepositoryContentConsumer> getSelectedInvalidConsumers() { @@ -196,36 +198,35 @@ public class RepositoryContentConsumers } /** - * Get the list of {@link KnownRepositoryContentConsumer} objects that are available and present in the classpath - * and as components in the IoC. + * Get the list of {@link KnownRepositoryContentConsumer} objects that are + * available and present in the classpath and as components in the IoC. * - * @return the list of all available {@link KnownRepositoryContentConsumer} present in the classpath and as a - * component in the IoC. + * @return the list of all available {@link KnownRepositoryContentConsumer} present in the classpath + * and as a component in the IoC. */ - @SuppressWarnings("unchecked") public List<KnownRepositoryContentConsumer> getAvailableKnownConsumers() { return new ArrayList<KnownRepositoryContentConsumer>( applicationContext.getBeansOfType( KnownRepositoryContentConsumer.class ).values() ); } /** - * Get the list of {@link InvalidRepositoryContentConsumer} objects that are available and present in the classpath - * and as components in the IoC. + * Get the list of {@link InvalidRepositoryContentConsumer} objects that are + * available and present in the classpath and as components in the IoC. * - * @return the list of all available {@link InvalidRepositoryContentConsumer} present in the classpath and as a - * component in the IoC. + * @return the list of all available {@link InvalidRepositoryContentConsumer} present in the classpath + * and as a component in the IoC. */ - @SuppressWarnings("unchecked") public List<InvalidRepositoryContentConsumer> getAvailableInvalidConsumers() { return new ArrayList<InvalidRepositoryContentConsumer>( applicationContext.getBeansOfType( InvalidRepositoryContentConsumer.class ).values() ); } /** - * A convenience method to execute all of the active selected consumers for a particular arbitrary file. + * A convienence method to execute all of the active selected consumers for a + * particular arbitrary file. * NOTE: Make sure that there is no repository scanning task executing before invoking this so as to prevent * the index writer/reader of the current index-content consumer executing from getting closed. For an example, - * see ArchivaDavResource#executeConsumers( File ). + * see ArchivaDavResource#executeConsumers( File ). * * @param repository the repository configuration to use. * @param localFile the local file to execute the consumers against. @@ -235,28 +236,28 @@ public class RepositoryContentConsumers { // Run the repository consumers try - { + { Closure triggerBeginScan = new TriggerBeginScanClosure( repository, getStartTime() ); List<KnownRepositoryContentConsumer> selectedKnownConsumers = getSelectedKnownConsumers(); - + // MRM-1212/MRM-1197 - // - do not create missing/fix invalid checksums and update metadata when deploying from webdav since these are uploaded by maven + // - do not create missing/fix invalid checksums and update metadata when deploying from webdav since these are uploaded by maven if( updateRelatedArtifacts == false ) - { + { List<KnownRepositoryContentConsumer> clone = new ArrayList<KnownRepositoryContentConsumer>(); clone.addAll( selectedKnownConsumers ); - + for( KnownRepositoryContentConsumer consumer : clone ) { - if( consumer.getId().equals( "create-missing-checksums" ) || + if( consumer.getId().equals( "create-missing-checksums" ) || consumer.getId().equals( "metadata-updater" ) ) { selectedKnownConsumers.remove( consumer ); } - } + } } - + List<InvalidRepositoryContentConsumer> selectedInvalidConsumers = getSelectedInvalidConsumers(); CollectionUtils.forAllDo( selectedKnownConsumers, triggerBeginScan ); CollectionUtils.forAllDo( selectedInvalidConsumers, triggerBeginScan ); @@ -275,7 +276,7 @@ public class RepositoryContentConsumers if ( predicate.getWantedFileCount() <= 0 ) { - // Nothing known processed this file. It is invalid! + // Nothing known processed this file. It is invalid! CollectionUtils.forAllDo( selectedInvalidConsumers, closure ); } @@ -285,11 +286,10 @@ public class RepositoryContentConsumers } finally { - /* - * TODO: This is never called by the repository scanner instance, so not calling here either - but it - * probably should be? CollectionUtils.forAllDo( availableKnownConsumers, triggerCompleteScan ); - * CollectionUtils.forAllDo( availableInvalidConsumers, triggerCompleteScan ); - */ + /* TODO: This is never called by the repository scanner instance, so not calling here either - but it probably should be? + CollectionUtils.forAllDo( availableKnownConsumers, triggerCompleteScan ); + CollectionUtils.forAllDo( availableInvalidConsumers, triggerCompleteScan ); + */ } } @@ -302,12 +302,12 @@ public class RepositoryContentConsumers { this.selectedInvalidConsumers = selectedInvalidConsumers; } - + protected Date getStartTime() - { + { return new Date( System.currentTimeMillis() ); } - + public void setArchivaConfiguration( ArchivaConfiguration archivaConfiguration ) { this.archivaConfiguration = archivaConfiguration; diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryScanStatistics.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScanStatistics.java index 5d4fd3f06..62ab2ca7e 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryScanStatistics.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScanStatistics.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner; +package org.apache.archiva.repository.scanner; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,20 +19,18 @@ package org.apache.maven.archiva.repository.scanner; * under the License. */ -import org.apache.commons.collections.CollectionUtils; -import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; -import org.apache.maven.archiva.model.RepositoryContentStatistics; - import java.text.SimpleDateFormat; import java.util.List; +import org.apache.commons.collections.CollectionUtils; +import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; + /** * RepositoryScanStatistics - extension to the RepositoryContentStatistics model. * * @version $Id$ */ public class RepositoryScanStatistics - extends RepositoryContentStatistics { private transient List<String> knownConsumers; @@ -42,28 +40,78 @@ public class RepositoryScanStatistics private SimpleDateFormat df = new SimpleDateFormat(); + /** + * Field repositoryId + */ + private String repositoryId; + + /** + * Field whenGathered + */ + private java.util.Date whenGathered; + + /** + * Field duration + */ + private long duration = 0; + + /** + * Field totalFileCount + */ + private long totalFileCount = 0; + + /** + * Field newFileCount + */ + private long newFileCount = 0; + + /** + * Field totalProjectCount + */ + private long totalProjectCount = 0; + + /** + * Field totalGroupCount + */ + private long totalGroupCount = 0; + + /** + * Field totalArtifactCount + */ + private long totalArtifactCount = 0; + + /** + * Field totalSize + */ + private long totalSize = 0; + public void triggerStart() { startTimestamp = System.currentTimeMillis(); } + public java.util.Date getWhenGathered() + { + return whenGathered; + } + public void triggerFinished() { long finished = System.currentTimeMillis(); - setDuration( finished - startTimestamp ); - setWhenGathered( new java.util.Date( finished ) ); + this.duration = finished - startTimestamp; + this.whenGathered = new java.util.Date( finished ); } public void increaseFileCount() { long count = getTotalFileCount(); - setTotalFileCount( ++count ); + this.totalFileCount = ++count; } public void increaseNewFileCount() { long count = getNewFileCount(); - setNewFileCount( ++count ); + this.newFileCount = ++count; } public void setKnownConsumers( List<String> consumers ) @@ -142,4 +190,49 @@ public class RepositoryScanStatistics return buf.toString(); } + + public void setRepositoryId( String repositoryId ) + { + this.repositoryId = repositoryId; + } + + public String getRepositoryId() + { + return repositoryId; + } + + public long getDuration() + { + return duration; + } + + public long getTotalFileCount() + { + return totalFileCount; + } + + public long getNewFileCount() + { + return newFileCount; + } + + public long getTotalProjectCount() + { + return totalProjectCount; + } + + public long getTotalGroupCount() + { + return totalGroupCount; + } + + public long getTotalArtifactCount() + { + return totalArtifactCount; + } + + public long getTotalSize() + { + return totalSize; + } } diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryScanner.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScanner.java index 1ecd3e811..5a505e9d2 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryScanner.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScanner.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner; +package org.apache.archiva.repository.scanner; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,12 +19,11 @@ package org.apache.maven.archiva.repository.scanner; * under the License. */ +import java.util.List; + import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import org.apache.maven.archiva.repository.RepositoryException; - -import java.util.List; /** * RepositoryScanner @@ -79,10 +78,10 @@ public interface RepositoryScanner * (To have all content be taken into consideration regardless of timestamp, * use the {@link #FRESH_SCAN} constant) * @return the statistics for this scan. - * @throws RepositoryException if there was a fundamental problem with getting the discoverer started. + * @throws RepositoryScannerException if there was a fundamental problem with getting the discoverer started. */ public RepositoryScanStatistics scan( ManagedRepositoryConfiguration repository, long changesSince ) - throws RepositoryException; + throws RepositoryScannerException; /** * Scan the repository for content changes. @@ -99,12 +98,12 @@ public interface RepositoryScanner * (To have all content be taken into consideration regardless of timestamp, * use the {@link #FRESH_SCAN} constant) * @return the statistics for this scan. - * @throws RepositoryException if there was a fundamental problem with getting the discoverer started. + * @throws RepositoryScannerException if there was a fundamental problem with getting the discoverer started. */ public RepositoryScanStatistics scan( ManagedRepositoryConfiguration repository, List<KnownRepositoryContentConsumer> knownContentConsumers, List<InvalidRepositoryContentConsumer> invalidContentConsumers, List<String> ignoredContentPatterns, long changesSince ) - throws RepositoryException; + throws RepositoryScannerException; } diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScannerException.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScannerException.java new file mode 100644 index 000000000..e66c82235 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScannerException.java @@ -0,0 +1,51 @@ +package org.apache.archiva.repository.scanner; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/** + * RepositoryException + * + * @version $Id: RepositoryException.java 718864 2008-11-19 06:33:35Z brett $ + */ +public class RepositoryScannerException + extends Exception +{ + + public RepositoryScannerException() + { + super(); + } + + public RepositoryScannerException( String message, Throwable cause ) + { + super( message, cause ); + } + + public RepositoryScannerException( String message ) + { + super( message ); + } + + public RepositoryScannerException( Throwable cause ) + { + super( cause ); + } + +} diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryScannerInstance.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScannerInstance.java index e8d86d90c..a2a1df75d 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/RepositoryScannerInstance.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScannerInstance.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner; +package org.apache.archiva.repository.scanner; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -23,6 +23,8 @@ import java.io.File; import java.util.Date; import java.util.List; +import org.apache.archiva.repository.scanner.functors.ConsumerProcessFileClosure; +import org.apache.archiva.repository.scanner.functors.TriggerBeginScanClosure; import org.apache.archiva.repository.scanner.functors.TriggerScanCompletedClosure; import org.apache.commons.collections.Closure; import org.apache.commons.collections.CollectionUtils; @@ -32,9 +34,7 @@ import org.apache.maven.archiva.common.utils.BaseFile; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import org.apache.maven.archiva.repository.scanner.functors.ConsumerProcessFileClosure; -import org.apache.maven.archiva.repository.scanner.functors.ConsumerWantsFilePredicate; -import org.apache.maven.archiva.repository.scanner.functors.TriggerBeginScanClosure; +import org.apache.maven.archiva.consumers.functors.ConsumerWantsFilePredicate; import org.codehaus.plexus.util.DirectoryWalkListener; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -145,11 +145,10 @@ public class RepositoryScannerInstance public void directoryWalkFinished() { - TriggerScanCompletedClosure scanCompletedClosure = new TriggerScanCompletedClosure(repository); - + TriggerScanCompletedClosure scanCompletedClosure = new TriggerScanCompletedClosure( repository ); CollectionUtils.forAllDo( knownConsumers, scanCompletedClosure ); CollectionUtils.forAllDo( invalidConsumers, scanCompletedClosure ); - + log.info( "Walk Finished: [" + this.repository.getId() + "] " + this.repository.getLocation() ); stats.triggerFinished(); } diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/functors/ConsumerProcessFileClosure.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/functors/ConsumerProcessFileClosure.java index f8fe3ff70..5fadde292 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/functors/ConsumerProcessFileClosure.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/functors/ConsumerProcessFileClosure.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner.functors; +package org.apache.archiva.repository.scanner.functors; /* * Licensed to the Apache Software Foundation (ASF) under one diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/functors/TriggerBeginScanClosure.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/functors/TriggerBeginScanClosure.java index d0a05cbc5..067ab1641 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/functors/TriggerBeginScanClosure.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/functors/TriggerBeginScanClosure.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner.functors; +package org.apache.archiva.repository.scanner.functors; /* * Licensed to the Apache Software Foundation (ASF) under one diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/archiva/repository/scanner/functors/TriggerScanCompletedClosure.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/functors/TriggerScanCompletedClosure.java index 82875a6ab..82875a6ab 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/archiva/repository/scanner/functors/TriggerScanCompletedClosure.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/functors/TriggerScanCompletedClosure.java diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/main/resources/META-INF/spring-context.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/resources/META-INF/spring-context.xml index 5cc3f6897..f8bce47bc 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/main/resources/META-INF/spring-context.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/resources/META-INF/spring-context.xml @@ -3,7 +3,9 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> - <bean id="repositoryContentConsumers" class="org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers" scope="prototype"> - <constructor-arg ref="archivaConfiguration"/> + <bean id="repositoryContentConsumers" class="org.apache.archiva.repository.scanner.RepositoryContentConsumers" scope="prototype"> + <constructor-arg> + <ref bean="archivaConfiguration"/> + </constructor-arg> </bean> -</beans>
\ No newline at end of file +</beans> diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/InvalidScanConsumer.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/InvalidScanConsumer.java index 29e50a589..6e39db51a 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/InvalidScanConsumer.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/InvalidScanConsumer.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner; +package org.apache.archiva.repository.scanner; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,14 +19,14 @@ package org.apache.maven.archiva.repository.scanner; * under the License. */ +import java.util.Date; +import java.util.List; + import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; import org.apache.maven.archiva.consumers.ConsumerException; import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer; -import java.util.Date; -import java.util.List; - /** * InvalidScanConsumer * diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/KnownScanConsumer.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/KnownScanConsumer.java index 0ab62fe46..8498b4dd8 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/KnownScanConsumer.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/KnownScanConsumer.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner; +package org.apache.archiva.repository.scanner; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,16 +19,16 @@ package org.apache.maven.archiva.repository.scanner; * under the License. */ -import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; -import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; -import org.apache.maven.archiva.consumers.ConsumerException; -import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; - import java.util.ArrayList; import java.util.Arrays; import java.util.Date; import java.util.List; +import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; +import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; +import org.apache.maven.archiva.consumers.ConsumerException; +import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; + /** * ScanConsumer * diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/RepositoryContentConsumersStub.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/RepositoryContentConsumersStub.java new file mode 100644 index 000000000..bd47bce23 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/RepositoryContentConsumersStub.java @@ -0,0 +1,42 @@ +package org.apache.archiva.repository.scanner; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.util.Date; + +import org.apache.maven.archiva.configuration.ArchivaConfiguration; + +public class RepositoryContentConsumersStub + extends RepositoryContentConsumers +{ + public RepositoryContentConsumersStub(ArchivaConfiguration archivaConfiguration) + { + super(archivaConfiguration); + } + + @Override + public Date getStartTime() + { + Date startTimeForTest = new Date( System.currentTimeMillis() ); + startTimeForTest.setTime( 12345678 ); + + return startTimeForTest; + } +} diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumersTest.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/RepositoryContentConsumersTest.java index 86c4b5370..e6a5cc391 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumersTest.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/RepositoryContentConsumersTest.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner; +package org.apache.archiva.repository.scanner; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,23 +19,24 @@ package org.apache.maven.archiva.repository.scanner; * under the License. */ +import java.io.File; import java.io.IOException; +import java.util.Arrays; +import java.util.Collections; +import java.util.Date; +import java.util.HashMap; +import java.util.List; import java.util.Locale; +import java.util.Map; + import org.apache.commons.lang.SystemUtils; import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; +import org.apache.maven.archiva.configuration.RemoteRepositoryConfiguration; import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import org.apache.maven.archiva.repository.AbstractRepositoryLayerTestCase; +import org.codehaus.plexus.spring.PlexusInSpringTestCase; import org.easymock.MockControl; - -import java.io.File; -import java.util.Arrays; -import java.util.Collections; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; import org.springframework.beans.BeansException; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.NoSuchBeanDefinitionException; @@ -52,8 +53,36 @@ import org.springframework.core.io.Resource; * @version $Id$ */ public class RepositoryContentConsumersTest - extends AbstractRepositoryLayerTestCase + extends PlexusInSpringTestCase { + /** + * {@inheritDoc} + * @see org.codehaus.plexus.spring.PlexusInSpringTestCase#getSpringConfigLocation() + */ + @Override + protected String getSpringConfigLocation() + { + return "org/apache/maven/archiva/repository/spring-context.xml"; + } + + protected ManagedRepositoryConfiguration createRepository( String id, String name, File location ) + { + ManagedRepositoryConfiguration repo = new ManagedRepositoryConfiguration(); + repo.setId( id ); + repo.setName( name ); + repo.setLocation( location.getAbsolutePath() ); + return repo; + } + + protected RemoteRepositoryConfiguration createRemoteRepository( String id, String name, String url ) + { + RemoteRepositoryConfiguration repo = new RemoteRepositoryConfiguration(); + repo.setId( id ); + repo.setName( name ); + repo.setUrl( url ); + return repo; + } + private RepositoryContentConsumers lookupRepositoryConsumers() throws Exception { @@ -307,7 +336,7 @@ public class RepositoryContentConsumersTest knownControl.verify(); invalidControl.verify(); } - + /** * Create an OS specific version of the filepath. * Provide path in unix "/" format. @@ -321,19 +350,18 @@ public class RepositoryContentConsumersTest return path; } - @SuppressWarnings("unchecked") - public class MockApplicationContext implements ApplicationContext + private static Map convertToMap(List objects) { - private Map convertToMap(List objects) + HashMap map = new HashMap(); + for (Object o : objects) { - HashMap map = new HashMap(); - for (Object o : objects) - { - map.put(o, o); - } - return map; + map.put(o, o); } + return map; + } + public class MockApplicationContext implements ApplicationContext + { private List<KnownRepositoryContentConsumer> knownRepositoryContentConsumer; private List<InvalidRepositoryContentConsumer> invalidRepositoryContentConsumers; diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryScannerTest.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/RepositoryScannerTest.java index 22cd183b0..2f8c6408e 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryScannerTest.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/RepositoryScannerTest.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner; +package org.apache.archiva.repository.scanner; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,13 +19,6 @@ package org.apache.maven.archiva.repository.scanner; * under the License. */ -import org.apache.commons.io.FileUtils; -import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; -import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer; -import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import org.apache.maven.archiva.model.RepositoryContentStatistics; -import org.apache.maven.archiva.repository.AbstractRepositoryLayerTestCase; - import java.io.File; import java.io.IOException; import java.text.ParseException; @@ -36,14 +29,49 @@ import java.util.List; import java.util.Locale; import java.util.TimeZone; +import org.apache.commons.io.FileUtils; +import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; +import org.apache.maven.archiva.configuration.RemoteRepositoryConfiguration; +import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer; +import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; +import org.codehaus.plexus.spring.PlexusInSpringTestCase; + /** * RepositoryScannerTest * * @version $Id$ */ public class RepositoryScannerTest - extends AbstractRepositoryLayerTestCase + extends PlexusInSpringTestCase { + /** + * {@inheritDoc} + * @see org.codehaus.plexus.spring.PlexusInSpringTestCase#getSpringConfigLocation() + */ + @Override + protected String getSpringConfigLocation() + { + return "org/apache/maven/archiva/repository/spring-context.xml"; + } + + protected ManagedRepositoryConfiguration createRepository( String id, String name, File location ) + { + ManagedRepositoryConfiguration repo = new ManagedRepositoryConfiguration(); + repo.setId( id ); + repo.setName( name ); + repo.setLocation( location.getAbsolutePath() ); + return repo; + } + + protected RemoteRepositoryConfiguration createRemoteRepository( String id, String name, String url ) + { + RemoteRepositoryConfiguration repo = new RemoteRepositoryConfiguration(); + repo.setId( id ); + repo.setName( name ); + repo.setUrl( url ); + return repo; + } + private static final String[] ARTIFACT_PATTERNS = new String[]{"**/*.jar", "**/*.pom", "**/*.rar", "**/*.zip", "**/*.war", "**/*.tar.gz"}; @@ -134,7 +162,7 @@ public class RepositoryScannerTest RepositoryScanner scanner = lookupRepositoryScanner(); - RepositoryContentStatistics stats = scanner.scan( repository, knownConsumers, invalidConsumers, getIgnoreList(), + RepositoryScanStatistics stats = scanner.scan( repository, knownConsumers, invalidConsumers, getIgnoreList(), getTimestampAsMillis( "20061101.000000" ) ); assertNotNull( "Stats should not be null.", stats ); @@ -159,7 +187,7 @@ public class RepositoryScannerTest invalidConsumers.add( badconsumer ); RepositoryScanner scanner = lookupRepositoryScanner(); - RepositoryContentStatistics stats = + RepositoryScanStatistics stats = scanner.scan( repository, knownConsumers, invalidConsumers, getIgnoreList(), RepositoryScanner.FRESH_SCAN ); assertNotNull( "Stats should not be null.", stats ); @@ -185,7 +213,7 @@ public class RepositoryScannerTest invalidConsumers.add( badconsumer ); RepositoryScanner scanner = lookupRepositoryScanner(); - RepositoryContentStatistics stats = scanner.scan( repository, knownConsumers, invalidConsumers, getIgnoreList(), + RepositoryScanStatistics stats = scanner.scan( repository, knownConsumers, invalidConsumers, getIgnoreList(), getTimestampAsMillis( "20061101.000000" ) ); assertNotNull( "Stats should not be null.", stats ); @@ -211,7 +239,7 @@ public class RepositoryScannerTest invalidConsumers.add( badconsumer ); RepositoryScanner scanner = lookupRepositoryScanner(); - RepositoryContentStatistics stats = + RepositoryScanStatistics stats = scanner.scan( repository, knownConsumers, invalidConsumers, getIgnoreList(), RepositoryScanner.FRESH_SCAN ); assertNotNull( "Stats should not be null.", stats ); @@ -269,7 +297,7 @@ public class RepositoryScannerTest invalidConsumers.add( badconsumer ); RepositoryScanner scanner = lookupRepositoryScanner(); - RepositoryContentStatistics stats = + RepositoryScanStatistics stats = scanner.scan( repository, knownConsumers, invalidConsumers, getIgnoreList(), RepositoryScanner.FRESH_SCAN ); assertNotNull( "Stats should not be null.", stats ); @@ -305,7 +333,7 @@ public class RepositoryScannerTest invalidConsumers.add( badconsumer ); RepositoryScanner scanner = lookupRepositoryScanner(); - RepositoryContentStatistics stats = + RepositoryScanStatistics stats = scanner.scan( repository, knownConsumers, invalidConsumers, getIgnoreList(), RepositoryScanner.FRESH_SCAN ); assertNotNull( "Stats should not be null.", stats ); @@ -341,7 +369,7 @@ public class RepositoryScannerTest invalidConsumers.add( badconsumer ); RepositoryScanner scanner = lookupRepositoryScanner(); - RepositoryContentStatistics stats = + RepositoryScanStatistics stats = scanner.scan( repository, knownConsumers, invalidConsumers, getIgnoreList(), RepositoryScanner.FRESH_SCAN ); assertNotNull( "Stats should not be null.", stats ); @@ -381,7 +409,7 @@ public class RepositoryScannerTest invalidConsumers.add( badconsumer ); RepositoryScanner scanner = lookupRepositoryScanner(); - RepositoryContentStatistics stats = + RepositoryScanStatistics stats = scanner.scan( repository, knownConsumers, invalidConsumers, getIgnoreList(), RepositoryScanner.FRESH_SCAN ); assertNotNull( "Stats should not be null.", stats ); diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/SampleKnownConsumer.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/SampleKnownConsumer.java index c2358d702..340be8b2b 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/SampleKnownConsumer.java +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/java/org/apache/archiva/repository/scanner/SampleKnownConsumer.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.repository.scanner; +package org.apache.archiva.repository.scanner; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,14 +19,14 @@ package org.apache.maven.archiva.repository.scanner; * under the License. */ +import java.util.Date; +import java.util.List; + import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; import org.apache.maven.archiva.consumers.ConsumerException; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import java.util.Date; -import java.util.List; - /** * SampleKnownConsumer * diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/CVS/Root b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/CVS/Root new file mode 100644 index 000000000..2e65f24a6 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/CVS/Root @@ -0,0 +1 @@ +not a real CVS root - for testing exclusions diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/KEYS b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/KEYS new file mode 100644 index 000000000..d3b34d5ad --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/KEYS @@ -0,0 +1 @@ +test KEYS file
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid-1.0.jar index e69de29bb..e69de29bb 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid-1.0.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0-20050611.123456-1/invalid-1.0-20050611.123456-1.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0-20050611.123456-1/invalid-1.0-20050611.123456-1.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0-20050611.123456-1/invalid-1.0-20050611.123456-1.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0-SNAPSHOT/invalid-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0-SNAPSHOT/invalid-1.0.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0-SNAPSHOT/invalid-1.0.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0/invalid-1.0b.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0/invalid-1.0b.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0/invalid-1.0b.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0/invalid-2.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0/invalid-2.0.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1.0/invalid-2.0.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1/invalid-1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1/invalid-1 new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/invalid/invalid/1/invalid-1 diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/maven-metadata.xml index b3baf545d..b3baf545d 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/maven-metadata.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/maven-metadata.xml diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/jdbc/2.0/maven-metadata-repository.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/sql/jdbc/2.0/maven-metadata-repository.xml index caf5b6697..caf5b6697 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/jdbc/2.0/maven-metadata-repository.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/sql/jdbc/2.0/maven-metadata-repository.xml diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/jdbc/maven-metadata-repository.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/sql/jdbc/maven-metadata-repository.xml index bb7570891..bb7570891 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/jdbc/maven-metadata-repository.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/sql/jdbc/maven-metadata-repository.xml diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/maven-metadata-repository.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/sql/maven-metadata-repository.xml index caf5b6697..caf5b6697 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/maven-metadata-repository.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/javax/sql/maven-metadata-repository.xml diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.210059-1.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.210059-1.pom new file mode 100644 index 000000000..372560004 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.210059-1.pom @@ -0,0 +1,300 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <configuration> + <xdocDirectory>${basedir}/xdocs</xdocDirectory> + <resourcesDirectory>${basedir}/xdocs/resources</resourcesDirectory> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + <links> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link> + <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link> + <link>http://jakarta.apache.org/commons/httpclient/apidocs/</link> + <link>http://jakarta.apache.org/commons/logging/apidocs/</link> + <link>http://jakarta.apache.org/commons/pool/apidocs/</link> + <link>http://www.junit.org/junit/javadoc/</link> + <link>http://logging.apache.org/log4j/docs/api/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://jakarta.apache.org/velocity/api/</link> + </links> + </configuration> + </plugin> + </plugins> + </reporting> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.210059-1.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.210059-1.pom.md5 new file mode 100644 index 000000000..7e4a5cfdd --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.210059-1.pom.md5 @@ -0,0 +1 @@ +69add9b3e2b7d27ae5c92de61acb2d23
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.210059-1.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.210059-1.pom.sha1 new file mode 100644 index 000000000..b0a35015d --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.210059-1.pom.sha1 @@ -0,0 +1 @@ +e1b45d0a5c28f15e8b235a7b4b350513c790ef39
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.232304-2.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.232304-2.pom new file mode 100644 index 000000000..372560004 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.232304-2.pom @@ -0,0 +1,300 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <configuration> + <xdocDirectory>${basedir}/xdocs</xdocDirectory> + <resourcesDirectory>${basedir}/xdocs/resources</resourcesDirectory> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + <links> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link> + <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link> + <link>http://jakarta.apache.org/commons/httpclient/apidocs/</link> + <link>http://jakarta.apache.org/commons/logging/apidocs/</link> + <link>http://jakarta.apache.org/commons/pool/apidocs/</link> + <link>http://www.junit.org/junit/javadoc/</link> + <link>http://logging.apache.org/log4j/docs/api/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://jakarta.apache.org/velocity/api/</link> + </links> + </configuration> + </plugin> + </plugins> + </reporting> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.232304-2.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.232304-2.pom.md5 new file mode 100644 index 000000000..7e4a5cfdd --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.232304-2.pom.md5 @@ -0,0 +1 @@ +69add9b3e2b7d27ae5c92de61acb2d23
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.232304-2.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.232304-2.pom.sha1 new file mode 100644 index 000000000..b0a35015d --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070725.232304-2.pom.sha1 @@ -0,0 +1 @@ +e1b45d0a5c28f15e8b235a7b4b350513c790ef39
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.053327-3.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.053327-3.pom new file mode 100644 index 000000000..372560004 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.053327-3.pom @@ -0,0 +1,300 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <configuration> + <xdocDirectory>${basedir}/xdocs</xdocDirectory> + <resourcesDirectory>${basedir}/xdocs/resources</resourcesDirectory> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + <links> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link> + <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link> + <link>http://jakarta.apache.org/commons/httpclient/apidocs/</link> + <link>http://jakarta.apache.org/commons/logging/apidocs/</link> + <link>http://jakarta.apache.org/commons/pool/apidocs/</link> + <link>http://www.junit.org/junit/javadoc/</link> + <link>http://logging.apache.org/log4j/docs/api/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://jakarta.apache.org/velocity/api/</link> + </links> + </configuration> + </plugin> + </plugins> + </reporting> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.053327-3.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.053327-3.pom.md5 new file mode 100644 index 000000000..7e4a5cfdd --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.053327-3.pom.md5 @@ -0,0 +1 @@ +69add9b3e2b7d27ae5c92de61acb2d23
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.053327-3.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.053327-3.pom.sha1 new file mode 100644 index 000000000..b0a35015d --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.053327-3.pom.sha1 @@ -0,0 +1 @@ +e1b45d0a5c28f15e8b235a7b4b350513c790ef39
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.173653-5.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.173653-5.pom new file mode 100644 index 000000000..372560004 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.173653-5.pom @@ -0,0 +1,300 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <configuration> + <xdocDirectory>${basedir}/xdocs</xdocDirectory> + <resourcesDirectory>${basedir}/xdocs/resources</resourcesDirectory> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + <links> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link> + <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link> + <link>http://jakarta.apache.org/commons/httpclient/apidocs/</link> + <link>http://jakarta.apache.org/commons/logging/apidocs/</link> + <link>http://jakarta.apache.org/commons/pool/apidocs/</link> + <link>http://www.junit.org/junit/javadoc/</link> + <link>http://logging.apache.org/log4j/docs/api/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://jakarta.apache.org/velocity/api/</link> + </links> + </configuration> + </plugin> + </plugins> + </reporting> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.173653-5.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.173653-5.pom.md5 new file mode 100644 index 000000000..7e4a5cfdd --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.173653-5.pom.md5 @@ -0,0 +1 @@ +69add9b3e2b7d27ae5c92de61acb2d23
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.173653-5.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.173653-5.pom.sha1 new file mode 100644 index 000000000..b0a35015d --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070726.173653-5.pom.sha1 @@ -0,0 +1 @@ +e1b45d0a5c28f15e8b235a7b4b350513c790ef39
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070727.113106-7.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070727.113106-7.pom new file mode 100644 index 000000000..372560004 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070727.113106-7.pom @@ -0,0 +1,300 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <configuration> + <xdocDirectory>${basedir}/xdocs</xdocDirectory> + <resourcesDirectory>${basedir}/xdocs/resources</resourcesDirectory> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + <links> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link> + <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link> + <link>http://jakarta.apache.org/commons/httpclient/apidocs/</link> + <link>http://jakarta.apache.org/commons/logging/apidocs/</link> + <link>http://jakarta.apache.org/commons/pool/apidocs/</link> + <link>http://www.junit.org/junit/javadoc/</link> + <link>http://logging.apache.org/log4j/docs/api/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://jakarta.apache.org/velocity/api/</link> + </links> + </configuration> + </plugin> + </plugins> + </reporting> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070727.113106-7.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070727.113106-7.pom.md5 new file mode 100644 index 000000000..7e4a5cfdd --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070727.113106-7.pom.md5 @@ -0,0 +1 @@ +69add9b3e2b7d27ae5c92de61acb2d23
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070727.113106-7.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070727.113106-7.pom.sha1 new file mode 100644 index 000000000..b0a35015d --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070727.113106-7.pom.sha1 @@ -0,0 +1 @@ +e1b45d0a5c28f15e8b235a7b4b350513c790ef39
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.053229-10.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.053229-10.pom new file mode 100644 index 000000000..372560004 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.053229-10.pom @@ -0,0 +1,300 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <configuration> + <xdocDirectory>${basedir}/xdocs</xdocDirectory> + <resourcesDirectory>${basedir}/xdocs/resources</resourcesDirectory> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + <links> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link> + <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link> + <link>http://jakarta.apache.org/commons/httpclient/apidocs/</link> + <link>http://jakarta.apache.org/commons/logging/apidocs/</link> + <link>http://jakarta.apache.org/commons/pool/apidocs/</link> + <link>http://www.junit.org/junit/javadoc/</link> + <link>http://logging.apache.org/log4j/docs/api/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://jakarta.apache.org/velocity/api/</link> + </links> + </configuration> + </plugin> + </plugins> + </reporting> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.053229-10.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.053229-10.pom.md5 new file mode 100644 index 000000000..7e4a5cfdd --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.053229-10.pom.md5 @@ -0,0 +1 @@ +69add9b3e2b7d27ae5c92de61acb2d23
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.053229-10.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.053229-10.pom.sha1 new file mode 100644 index 000000000..b0a35015d --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.053229-10.pom.sha1 @@ -0,0 +1 @@ +e1b45d0a5c28f15e8b235a7b4b350513c790ef39
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.112043-11.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.112043-11.pom new file mode 100644 index 000000000..372560004 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.112043-11.pom @@ -0,0 +1,300 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <configuration> + <xdocDirectory>${basedir}/xdocs</xdocDirectory> + <resourcesDirectory>${basedir}/xdocs/resources</resourcesDirectory> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + <links> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link> + <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link> + <link>http://jakarta.apache.org/commons/httpclient/apidocs/</link> + <link>http://jakarta.apache.org/commons/logging/apidocs/</link> + <link>http://jakarta.apache.org/commons/pool/apidocs/</link> + <link>http://www.junit.org/junit/javadoc/</link> + <link>http://logging.apache.org/log4j/docs/api/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://jakarta.apache.org/velocity/api/</link> + </links> + </configuration> + </plugin> + </plugins> + </reporting> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.112043-11.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.112043-11.pom.md5 new file mode 100644 index 000000000..7e4a5cfdd --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.112043-11.pom.md5 @@ -0,0 +1 @@ +69add9b3e2b7d27ae5c92de61acb2d23
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.112043-11.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.112043-11.pom.sha1 new file mode 100644 index 000000000..b0a35015d --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070728.112043-11.pom.sha1 @@ -0,0 +1 @@ +e1b45d0a5c28f15e8b235a7b4b350513c790ef39
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070729.171937-16.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070729.171937-16.pom new file mode 100644 index 000000000..372560004 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070729.171937-16.pom @@ -0,0 +1,300 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <configuration> + <xdocDirectory>${basedir}/xdocs</xdocDirectory> + <resourcesDirectory>${basedir}/xdocs/resources</resourcesDirectory> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + <links> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link> + <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link> + <link>http://jakarta.apache.org/commons/httpclient/apidocs/</link> + <link>http://jakarta.apache.org/commons/logging/apidocs/</link> + <link>http://jakarta.apache.org/commons/pool/apidocs/</link> + <link>http://www.junit.org/junit/javadoc/</link> + <link>http://logging.apache.org/log4j/docs/api/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://jakarta.apache.org/velocity/api/</link> + </links> + </configuration> + </plugin> + </plugins> + </reporting> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070729.171937-16.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070729.171937-16.pom.md5 new file mode 100644 index 000000000..7e4a5cfdd --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070729.171937-16.pom.md5 @@ -0,0 +1 @@ +69add9b3e2b7d27ae5c92de61acb2d23
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070729.171937-16.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070729.171937-16.pom.sha1 new file mode 100644 index 000000000..b0a35015d --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070729.171937-16.pom.sha1 @@ -0,0 +1 @@ +e1b45d0a5c28f15e8b235a7b4b350513c790ef39
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070730.232112-20.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070730.232112-20.pom new file mode 100644 index 000000000..372560004 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070730.232112-20.pom @@ -0,0 +1,300 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <configuration> + <xdocDirectory>${basedir}/xdocs</xdocDirectory> + <resourcesDirectory>${basedir}/xdocs/resources</resourcesDirectory> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + <links> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link> + <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link> + <link>http://jakarta.apache.org/commons/httpclient/apidocs/</link> + <link>http://jakarta.apache.org/commons/logging/apidocs/</link> + <link>http://jakarta.apache.org/commons/pool/apidocs/</link> + <link>http://www.junit.org/junit/javadoc/</link> + <link>http://logging.apache.org/log4j/docs/api/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://jakarta.apache.org/velocity/api/</link> + </links> + </configuration> + </plugin> + </plugins> + </reporting> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070730.232112-20.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070730.232112-20.pom.md5 new file mode 100644 index 000000000..7e4a5cfdd --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070730.232112-20.pom.md5 @@ -0,0 +1 @@ +69add9b3e2b7d27ae5c92de61acb2d23
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070730.232112-20.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070730.232112-20.pom.sha1 new file mode 100644 index 000000000..b0a35015d --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070730.232112-20.pom.sha1 @@ -0,0 +1 @@ +e1b45d0a5c28f15e8b235a7b4b350513c790ef39
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.113304-21.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.113304-21.pom new file mode 100644 index 000000000..8d5931c0e --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.113304-21.pom @@ -0,0 +1,268 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/documentation</module> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.113304-21.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.113304-21.pom.md5 new file mode 100644 index 000000000..9cebfeecc --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.113304-21.pom.md5 @@ -0,0 +1 @@ +8530af16aa7f3e5268b96ff88dd703a8
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.113304-21.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.113304-21.pom.sha1 new file mode 100644 index 000000000..45d7111f6 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.113304-21.pom.sha1 @@ -0,0 +1 @@ +d2a036ec537737153980aed1157bad133230f2c8
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.172936-22.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.172936-22.pom new file mode 100644 index 000000000..8d5931c0e --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.172936-22.pom @@ -0,0 +1,268 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/documentation</module> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.172936-22.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.172936-22.pom.md5 new file mode 100644 index 000000000..9cebfeecc --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.172936-22.pom.md5 @@ -0,0 +1 @@ +8530af16aa7f3e5268b96ff88dd703a8
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.172936-22.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.172936-22.pom.sha1 new file mode 100644 index 000000000..45d7111f6 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070731.172936-22.pom.sha1 @@ -0,0 +1 @@ +d2a036ec537737153980aed1157bad133230f2c8
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070802.113139-29.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070802.113139-29.pom new file mode 100644 index 000000000..8d5931c0e --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070802.113139-29.pom @@ -0,0 +1,268 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Axis 2.0 - Root</name> + <modules> + <module>modules/adb</module> + <module>modules/adb-codegen</module> + <module>modules/addressing</module> + <module>modules/codegen</module> + <module>modules/fastinfoset</module> + <module>modules/integration</module> + <module>modules/java2wsdl</module> + <module>modules/jibx</module> + <module>modules/json</module> + <module>modules/kernel</module> + <module>modules/mex</module> + <module>modules/mex-mar</module> + <module>modules/mtompolicy</module> + <module>modules/parent</module> + <module>modules/ping</module> + <module>modules/samples/version</module> + <module>modules/soapmonitor</module> + <module>modules/spring</module> + <module>modules/tool/axis2-aar-maven-plugin</module> + <module>modules/tool/axis2-ant-plugin</module> + <module>modules/tool/axis2-eclipse-codegen-plugin</module> + <module>modules/tool/axis2-eclipse-service-plugin</module> + <module>modules/tool/axis2-idea-plugin</module> + <module>modules/tool/axis2-java2wsdl-maven-plugin</module> + <module>modules/tool/axis2-mar-maven-plugin</module> + <module>modules/tool/axis2-wsdl2code-maven-plugin</module> + <module>modules/webapp</module> + <module>modules/xmlbeans</module> + <module>modules/samples</module> + <module>modules/scripting</module> + </modules> + <profiles> + <profile> + <activation> + <property> + <name>release</name> + </property> + </activation> + <modules> + <module>modules/documentation</module> + <module>modules/distribution</module> + </modules> + </profile> + <profile> + <id>java14</id> + <activation> + <jdk>1.4</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java15</id> + <activation> + <jdk>1.5</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>java16</id> + <activation> + <jdk>1.6</jdk> + </activation> + <modules> + <module>modules/jaxbri</module> + <module>modules/metadata</module> + <module>modules/saaj-api</module> + <module>modules/saaj</module> + <module>modules/jws-api</module> + <module>modules/jaxws-api</module> + <module>modules/jaxws</module> + <module>modules/clustering</module> + </modules> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar</id> + <phase>package</phase> + <configuration> + <tasks> + <mkdir dir="target/lib"/> + <jar destfile="target/lib/axis2-${pom.version}.jar"> + <fileset dir="modules/java2wsdl/target/classes"/> + <fileset dir="modules/kernel/target/classes"/> + <fileset dir="modules/addressing/target/classes"/> + <fileset dir="modules/codegen/target/classes"/> + <fileset dir="modules/adb/target/classes"/> + <fileset dir="modules/adb-codegen/target/classes"/> + <fileset dir="modules/xmlbeans/target/classes"/> + <fileset dir="modules/clustering/target/classes"/> + </jar> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + <notifiers> + <notifier> + <configuration> + <ADDRESS>axis2-cvs@ws.apache.org</ADDRESS> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <scm> + <connection> + scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </connection> + <developerConnection> + scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/ + </developerConnection> + <url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url> + </scm> + <distributionManagement> + <repository> + <id>apache-repo</id> + <name>Maven Central Repository</name> + <url> + scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-snapshots</id> + <name>Apache Development Repository</name> + <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>axis2-jar-package</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>target/lib/axis2-${pom.version}.jar</file> + <type>jar</type> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070802.113139-29.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070802.113139-29.pom.md5 new file mode 100644 index 000000000..9cebfeecc --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070802.113139-29.pom.md5 @@ -0,0 +1 @@ +8530af16aa7f3e5268b96ff88dd703a8
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070802.113139-29.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070802.113139-29.pom.sha1 new file mode 100644 index 000000000..45d7111f6 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/axis2-1.3-20070802.113139-29.pom.sha1 @@ -0,0 +1 @@ +d2a036ec537737153980aed1157bad133230f2c8
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/maven-metadata.xml new file mode 100644 index 000000000..3d2b170fc --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/maven-metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?><metadata> + <groupId>org.apache.axis2</groupId> + <artifactId>axis2</artifactId> + <version>1.3-SNAPSHOT</version> + <versioning> + <snapshot> + <timestamp>20070802.113139</timestamp> + <buildNumber>29</buildNumber> + </snapshot> + <lastUpdated>20070802113139</lastUpdated> + </versioning> +</metadata> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/maven-metadata.xml.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/maven-metadata.xml.md5 new file mode 100644 index 000000000..f39e1f745 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/maven-metadata.xml.md5 @@ -0,0 +1 @@ +f68494b20d262a4974d61e2911f90291
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/maven-metadata.xml.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/maven-metadata.xml.sha1 new file mode 100644 index 000000000..ebf6c8ce2 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/axis2/axis2/1.3-SNAPSHOT/maven-metadata.xml.sha1 @@ -0,0 +1 @@ +6d0399f05e374923a3929683b4176fe67d8ed08f
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/cocoon/cocoon/1/cocoon-1.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/cocoon/cocoon/1/cocoon-1.pom new file mode 100644 index 000000000..31405768a --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/cocoon/cocoon/1/cocoon-1.pom @@ -0,0 +1,379 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright 2005 The Apache Software Foundation + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!--+ + | This is the main Maven file that contains all global settings, management and information. + | @version $Id$ + +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>1</version> + </parent> + + <packaging>pom</packaging> + + <groupId>org.apache.cocoon</groupId> + <artifactId>cocoon</artifactId> + <version>1</version> + + <name>Apache Cocoon</name> + <url>http://cocoon.apache.org</url> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + <!--modules> + <module>blocks</module> + <module>commons</module> + <module>core</module> + <module>tools</module> + </modules--> + <repositories> + <repository> + <id>central</id> + <name>Maven central repository</name> + <url>http://ibiblio.org/maven2</url> + </repository> + <repository> + <id>apache.snapshot</id> + <name>Apache Snapshot Repository</name> + <url>http://svn.apache.org/maven-snapshot-repository</url> + </repository> + <repository> + <id>apache-cvs</id> + <name>Apache Maven Repository</name> + <url>http://svn.apache.org/repository</url> + <layout>legacy</layout> + </repository> + </repositories> + <!-- Activate this element if you want to use snapshot versions of plugins + <pluginRepositories> + <pluginRepository> + <id>snapshots</id> + <url>http://snapshots.maven.codehaus.org/maven2</url> + </pluginRepository> + </pluginRepositories> + --> + <organization> + <name>The Apache Software Foundation</name> + <url>http://www.apache.org/</url> + </organization> + <developers> + <developer> + <id>crossley</id> + <name>David Crossley</name> + <email>crossley@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org/</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+10</timezone> + </developer> + <developer> + <id>bdelacretaz</id> + <name>Bertrand Delacretaz</name> + <email>bdelacretaz@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>danielf</id> + <name>Daniel Fagerstrom</name> + <email>danielf@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>antonio</id> + <name>Antonio Gallardo</name> + <email>antonio@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>-6</timezone> + </developer> + <developer> + <id>lgawron</id> + <name>Leszek Gawron</name> + <email>lgawron@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>joerg</id> + <name>Jorg Heinicke</name> + <email>joerg@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <timezone>+1</timezone> + <roles> + <role>Committer</role> + </roles> + </developer> + <developer> + <id>jheymans</id> + <name>Jorg Heymans</name> + <email>jheymans@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>anathaniel</id> + <name>Alfred Nathaniel</name> + <email>anathaniel@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>giacomo</id> + <name>Giacomo Pati</name> + <email>giacomo@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>reinhard</id> + <name>Reinhard Poetz</name> + <email>reinhard@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>jbq</id> + <name>Jean-Baptiste Quenot</name> + <email>jbq@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>gianugo</id> + <name>Gianugo Rabellino</name> + <email>gianugo@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>cziegeler</id> + <name>Carsten Ziegeler</name> + <email>cziegeler@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>vgritsenko</id> + <name>Vadim Gritsenko</name> + <email>vgritsenko@apache.org</email> + <organization>ASF</organization> + <organizationUrl>http://www.apache.org</organizationUrl> + <roles> + <role>Committer</role> + </roles> + <timezone>-5</timezone> + </developer> + </developers> + <issueManagement> + <system>jira</system> + <url>https://issues.apache.org/jira/browse/COCOON</url> + </issueManagement> + <ciManagement> + <system>continuum</system> + <url>http://cocoon.zones.apache.org:12000/continuum/servlet/continuum</url> + <notifiers> + <notifier> + <type>mail</type> + <configuration> + <address>dev@cocoon.apache.org</address> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <mailingLists> + <mailingList> + <name>Cocoon User List</name> + <subscribe>users-subscribe@cocoon.apache.org</subscribe> + <unsubscribe>users-unsubscribe@cocoon.apache.org</unsubscribe> + <post>users@cocoon.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/cocoon-users</archive> + <otherArchives> + <otherArchive>http://www.mail-archive.com/users@cocoon.apache.org/</otherArchive> + <otherArchive>http://marc.theaimsgroup.com/?l=xml-cocoon-user</otherArchive> + <otherArchive>http://news.gmane.org/gmane.text.xml.cocoon.user</otherArchive> + </otherArchives> + </mailingList> + <mailingList> + <name>Cocoon Developer List</name> + <subscribe>dev-subscribe@cocoon.apache.org</subscribe> + <unsubscribe>dev-unsubscribe@cocoon.apache.org</unsubscribe> + <post>dev@cocoon.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/cocoon-dev</archive> + <otherArchives> + <otherArchive>http://www.mail-archive.com/dev@cocoon.apache.org/</otherArchive> + <otherArchive>http://marc.theaimsgroup.com/?l=xml-cocoon-dev</otherArchive> + <otherArchive>http://news.gmane.org/gmane.text.xml.cocoon.dev</otherArchive> + </otherArchives> + </mailingList> + <mailingList> + <name>Cocoon Documentation List</name> + <subscribe>docs-subscribe@cocoon.apache.org</subscribe> + <unsubscribe>docs-unsubscribe@cocoon.apache.org</unsubscribe> + <post>docs@cocoon.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/cocoon-docs</archive> + <otherArchives> + <otherArchive>http://www.mail-archive.com/dev@cocoon.apache.org/</otherArchive> + <otherArchive>http://marc.theaimsgroup.com/?l=xml-cocoon-docs</otherArchive> + <otherArchive>http://news.gmane.org/gmane.text.xml.cocoon.docs</otherArchive> + </otherArchives> + </mailingList> + <mailingList> + <name>Cocoon Subversion Repository List</name> + <subscribe>cvs-subscribe@cocoon.apache.org</subscribe> + <unsubscribe>cvs-unsubscribe@cocoon.apache.org</unsubscribe> + <archive>http://mail-archives.apache.org/mod_mbox/cocoon-cvs</archive> + <otherArchives> + <otherArchive>http://www.mail-archive.com/cvs@cocoon.apache.org/</otherArchive> + <otherArchive>http://marc.theaimsgroup.com/?l=xml-cocoon-cvs</otherArchive> + <otherArchive>http://news.gmane.org/gmane.text.xml.cocoon.cvs</otherArchive> + </otherArchives> + </mailingList> + </mailingLists> + <scm> + <connection>scm:svn:https://svn.apache.org/repos/asf/cocoon/tags/cocoon-1</connection> + <developerConnection>scm:svn:https://svn.apache.org/repos/asf/cocoon/tags/cocoon-1</developerConnection> + <url>https://svn.apache.org/repos/asf/cocoon/tags/cocoon-1</url> + </scm> + <distributionManagement> + <repository> + <id>apache-maven</id> + <name>release repository</name> + <url>scpexe://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache-maven-snapshot</id> + <name>snapshot repository</name> + <url>scpexe://people.apache.org/www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <build> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.2</version> + </plugin> + </plugins> + </pluginManagement> + <extensions> + <extension> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-ssh-external</artifactId> + <version>1.0-alpha-6</version> + </extension> + </extensions> + <!-- + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <source>1.4</source> + <target>1.4</target> + </configuration> + </plugin> + </plugins> + --> + <plugins> + <plugin> + <artifactId>maven-release-plugin</artifactId> + <configuration> + <tagBase>https://svn.apache.org/repos/asf/cocoon/tags</tagBase> + </configuration> + </plugin> + </plugins> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-project-info-reports-plugin</artifactId> + <reportSets> + <reportSet> + <reports> + <report>dependencies</report> + <report>project-team</report> + <report>mailing-list</report> + <report>cim</report> + <report>issue-tracking</report> + <report>license</report> + <report>scm</report> + </reports> + </reportSet> + </reportSets> + </plugin> + </plugins> + </reporting> +</project>
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom index 202a0a448..202a0a448 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war index 54d190b23..54d190b23 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom index fa5f8f6c8..fa5f8f6c8 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom index c3034e820..c3034e820 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom index ae14cd7eb..ae14cd7eb 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war index 54d190b23..54d190b23 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-applet/1.0-SNAPSHOT/archiva-applet-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-applet/1.0-SNAPSHOT/archiva-applet-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..d48ebf7a8 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-applet/1.0-SNAPSHOT/archiva-applet-1.0-SNAPSHOT.pom @@ -0,0 +1,69 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <artifactId>archiva-applet</artifactId> + <name>Archiva Applet</name> + <description> + Applet for performing local operations on files such as creating a checksum of an artifact + before uploading it. + </description> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jar-plugin</artifactId> + <version>2.1</version> + <configuration> + <keystore>src/keystore/keystore</keystore> + <alias>mykey</alias> + <storepass>password</storepass> + <keypass>password</keypass> + </configuration> + <executions> + <execution> + <goals> + <goal>sign</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + <configuration> + <instrumentation> + <!-- TODO: should this module have tests? --> + <excludes> + <exclude>**/**</exclude> + </excludes> + </instrumentation> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-base/1.0-SNAPSHOT/archiva-base-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-base/1.0-SNAPSHOT/archiva-base-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..cd51f1edc --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-base/1.0-SNAPSHOT/archiva-base-1.0-SNAPSHOT.pom @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Copyright 2005-2006 The Apache Software Foundation. + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-parent</artifactId> + <version>1.0-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <artifactId>archiva-base</artifactId> + <name>Archiva Base</name> + <packaging>pom</packaging> + + <modules> + <module>archiva-common</module> + <module>archiva-configuration</module> + <module>archiva-consumers</module> + <module>archiva-indexer</module> + <module>archiva-model</module> + <!-- <module>archiva-proxy</module> --> + <module>archiva-repository-layer</module> + <module>archiva-xml-tools</module> + </modules> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-cli/1.0-SNAPSHOT/archiva-cli-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-cli/1.0-SNAPSHOT/archiva-cli-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..115bc99ea --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-cli/1.0-SNAPSHOT/archiva-cli-1.0-SNAPSHOT.pom @@ -0,0 +1,68 @@ +<?xml version="1.0"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-parent</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-cli</artifactId> + <name>Archiva Command Line Client</name> + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-converter</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-repository-layer</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-cli</artifactId> + <version>1.0</version> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <artifactId>maven-assembly-plugin</artifactId> + <configuration> + <descriptor>src/main/assembly/archiva-cli-assembly.xml</descriptor> + <archive> + <manifest> + <mainClass>org.apache.maven.archiva.cli.ArchivaCli</mainClass> + </manifest> + </archive> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-common/1.0-SNAPSHOT/archiva-common-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-common/1.0-SNAPSHOT/archiva-common-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..17a20abd5 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-common/1.0-SNAPSHOT/archiva-common-1.0-SNAPSHOT.pom @@ -0,0 +1,98 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-base</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-common</artifactId> + <name>Archiva Base :: Common</name> + <dependencies> + <!-- TO OTHER DEVELOPERS: + This module should depend on NO OTHER ARCHIVA MODULES. + If you feel tempted to add one, discuss it first in the + archiva-dev@maven.apache.org mailing-list. + joakime@apache.org + --> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + </dependency> + <!-- + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact-manager</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-project</artifactId> + </dependency> + --> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </dependency> + </dependencies> + <build> + <plugins> + <!-- + <plugin> + <artifactId>maven-jar-plugin</artifactId> + <executions> + <execution> + <id>test-jar</id> + <goals> + <goal>test-jar</goal> + </goals> + </execution> + </executions> + </plugin> + --> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-maven-plugin</artifactId> + <!-- + <executions> + <execution> + <id>merge</id> + <goals> + <goal>merge-descriptors</goal> + </goals> + <configuration> + <descriptors> + <descriptor>${basedir}/src/main/resources/META-INF/plexus/components.xml</descriptor> + <descriptor>${project.build.directory}/generated-resources/plexus/META-INF/plexus/components.xml</descriptor> + </descriptors> + </configuration> + </execution> + </executions> + --> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-configuration/1.0-SNAPSHOT/archiva-configuration-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-configuration/1.0-SNAPSHOT/archiva-configuration-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..790d0cfa4 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-configuration/1.0-SNAPSHOT/archiva-configuration-1.0-SNAPSHOT.pom @@ -0,0 +1,109 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-base</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-configuration</artifactId> + <name>Archiva Base :: Configuration</name> + <dependencies> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.registry</groupId> + <artifactId>plexus-registry-api</artifactId> + <version>1.0-alpha-2-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.registry</groupId> + <artifactId>plexus-registry-commons</artifactId> + <version>1.0-alpha-2-SNAPSHOT</version> + <scope>test</scope> + </dependency> + <!-- Test Deps --> + <dependency> + <groupId>easymock</groupId> + <artifactId>easymock</artifactId> + <version>1.2_Java1.3</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + <scope>test</scope> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.modello</groupId> + <artifactId>modello-maven-plugin</artifactId> + <version>1.0-alpha-15-SNAPSHOT</version> + <executions> + <execution> + <goals> + <goal>java</goal> + <goal>registry-reader</goal> + <goal>registry-writer</goal> + </goals> + </execution> + </executions> + <configuration> + <version>1.0.0</version> + <model>src/main/mdo/configuration.mdo</model> + </configuration> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + <configuration> + <instrumentation> + <!-- exclude generated --> + <excludes> + <exclude>org/apache/maven/archiva/configuration/io/**</exclude> + <exclude>org/apache/maven/archiva/configuration/*RepositoryConfiguration.*</exclude> + <exclude>org/apache/maven/archiva/configuration/Configuration.*</exclude> + <exclude>org/apache/maven/archiva/configuration/Proxy.*</exclude> + </excludes> + </instrumentation> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-consumer-api/1.0-SNAPSHOT/archiva-consumer-api-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-consumer-api/1.0-SNAPSHOT/archiva-consumer-api-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..f331ed074 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-consumer-api/1.0-SNAPSHOT/archiva-consumer-api-1.0-SNAPSHOT.pom @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Copyright 2005-2006 The Apache Software Foundation. + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-consumers</artifactId> + <version>1.0-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <artifactId>archiva-consumer-api</artifactId> + <name>Archiva Consumer API</name> + <packaging>jar</packaging> + + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-model</artifactId> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-consumers/1.0-SNAPSHOT/archiva-consumers-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-consumers/1.0-SNAPSHOT/archiva-consumers-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..8969b9ed3 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-consumers/1.0-SNAPSHOT/archiva-consumers-1.0-SNAPSHOT.pom @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Copyright 2005-2006 The Apache Software Foundation. + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-base</artifactId> + <version>1.0-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <artifactId>archiva-consumers</artifactId> + <name>Archiva Consumers</name> + <packaging>pom</packaging> + + <modules> + <module>archiva-consumer-api</module> + <module>archiva-core-consumers</module> + <!-- + <module>archiva-database-consumers</module> + <module>archiva-lucene-consumers</module> + <module>archiva-signature-consumers</module> + --> + </modules> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-converter/1.0-SNAPSHOT/archiva-converter-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-converter/1.0-SNAPSHOT/archiva-converter-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..49bde7bd2 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-converter/1.0-SNAPSHOT/archiva-converter-1.0-SNAPSHOT.pom @@ -0,0 +1,79 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-converter</artifactId> + <name>Archiva Repository Converter</name> + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-discoverer</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-model-converter</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-digest</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-i18n</artifactId> + <version>1.0-beta-6</version> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency> + <!-- TEST DEPS --> + <dependency> + <groupId>hsqldb</groupId> + <artifactId>hsqldb</artifactId> + <version>1.7.3.3</version> + <scope>test</scope> + </dependency> + <!-- Needed for PlexusTestCase --> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + <scope>test</scope> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-core-consumers/1.0-SNAPSHOT/archiva-core-consumers-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-core-consumers/1.0-SNAPSHOT/archiva-core-consumers-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..182578f57 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-core-consumers/1.0-SNAPSHOT/archiva-core-consumers-1.0-SNAPSHOT.pom @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Copyright 2005-2006 The Apache Software Foundation. + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-consumers</artifactId> + <version>1.0-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <artifactId>archiva-core-consumers</artifactId> + <name>Archiva Consumers :: Core Consumers</name> + <packaging>jar</packaging> + + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-configuration</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-consumer-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-repository-layer</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-digest</artifactId> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/archiva-scheduled/pom.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-core/1.0-SNAPSHOT/archiva-core-1.0-SNAPSHOT.pom index 0c947db53..18b98fc7b 100644 --- a/archiva-modules/archiva-scheduled/pom.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-core/1.0-SNAPSHOT/archiva-core-1.0-SNAPSHOT.pom @@ -18,76 +18,73 @@ ~ under the License. --> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <parent> - <groupId>org.apache.archiva</groupId> - <artifactId>archiva-modules</artifactId> - <version>1.2.3-SNAPSHOT</version> + <artifactId>archiva</artifactId> + <groupId>org.apache.maven.archiva</groupId> + <version>1.0-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> - <artifactId>archiva-scheduled</artifactId> - <name>Archiva Base :: Scheduled Tasks</name> + <artifactId>archiva-core</artifactId> + <name>Archiva Core</name> <dependencies> <dependency> - <groupId>org.apache.archiva</groupId> + <groupId>org.apache.maven.archiva</groupId> <artifactId>archiva-configuration</artifactId> </dependency> <dependency> - <groupId>org.apache.archiva</groupId> - <artifactId>archiva-database</artifactId> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-discoverer</artifactId> </dependency> <dependency> - <groupId>org.apache.archiva</groupId> - <artifactId>archiva-repository-layer</artifactId> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-proxy</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-reports-standard</artifactId> </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-taskqueue</artifactId> + <artifactId>plexus-component-api</artifactId> </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-quartz</artifactId> + <version>1.0-alpha-3</version> </dependency> <dependency> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-spring</artifactId> - <scope>test</scope> + <groupId>org.codehaus.plexus.cache</groupId> + <artifactId>plexus-cache-ehcache</artifactId> + <version>1.0-alpha-1-SNAPSHOT</version> </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-api</artifactId> + <artifactId>plexus-taskqueue</artifactId> + <version>1.0-alpha-6</version> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> </dependency> - <dependency> + <dependency> <groupId>org.codehaus.plexus.registry</groupId> - <artifactId>plexus-registry-api</artifactId> - </dependency> - <dependency> - <groupId>org.sonatype.nexus</groupId> - <artifactId>nexus-indexer</artifactId> - </dependency> - <!-- Test Dependencies --> - <dependency> - <groupId>org.apache.archiva</groupId> - <artifactId>archiva-database-consumers</artifactId> + <artifactId>plexus-registry-commons</artifactId> + <version>1.0-SNAPSHOT</version> <scope>test</scope> - </dependency> + </dependency> + <!-- TEST DEPS --> <dependency> <groupId>hsqldb</groupId> <artifactId>hsqldb</artifactId> + <version>1.7.3.3</version> <scope>test</scope> </dependency> + <!-- needed for PlexusTestCase --> <dependency> - <groupId>org.codehaus.plexus.registry</groupId> - <artifactId>plexus-registry-commons</artifactId> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.slf4j</groupId> - <artifactId>slf4j-simple</artifactId> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> <scope>test</scope> </dependency> </dependencies> @@ -95,17 +92,17 @@ <plugins> <plugin> <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> + <artifactId>plexus-maven-plugin</artifactId> <executions> <execution> <id>merge</id> <goals> - <goal>merge-metadata</goal> + <goal>merge-descriptors</goal> </goals> <configuration> <descriptors> <descriptor>${basedir}/src/main/resources/META-INF/plexus/components.xml</descriptor> - <descriptor>${project.build.outputDirectory}/META-INF/plexus/components.xml</descriptor> + <descriptor>${project.build.directory}/generated-resources/plexus/META-INF/plexus/components.xml</descriptor> </descriptors> </configuration> </execution> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-discoverer/1.0-SNAPSHOT/archiva-discoverer-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-discoverer/1.0-SNAPSHOT/archiva-discoverer-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..8a96e39c5 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-discoverer/1.0-SNAPSHOT/archiva-discoverer-1.0-SNAPSHOT.pom @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-discoverer</artifactId> + <name>Archiva Discoverer</name> + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-common</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-repository-metadata</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact-manager</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-model</artifactId> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-indexer/1.0-SNAPSHOT/archiva-indexer-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-indexer/1.0-SNAPSHOT/archiva-indexer-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..7d77d445f --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-indexer/1.0-SNAPSHOT/archiva-indexer-1.0-SNAPSHOT.pom @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-base</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-indexer</artifactId> + <name>Archiva Base :: Indexer</name> + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-configuration</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-model</artifactId> + </dependency> + <dependency> + <groupId>org.apache.lucene</groupId> + <artifactId>lucene-core</artifactId> + <version>2.0.0</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-digest</artifactId> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + <configuration> + <check> + <!-- TODO: increase coverage --> + <totalLineRate>80</totalLineRate> + <totalBranchRate>80</totalBranchRate> + </check> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-model/1.0-SNAPSHOT/archiva-model-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-model/1.0-SNAPSHOT/archiva-model-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..9c9053a3c --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-model/1.0-SNAPSHOT/archiva-model-1.0-SNAPSHOT.pom @@ -0,0 +1,169 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-base</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-model</artifactId> + <name>Archiva Base :: Model</name> + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-common</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-test-A</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-test-B</artifactId> + <version>${parent.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <dependency> + <groupId>javax.jdo</groupId> + <artifactId>jdo2-api</artifactId> + <version>2.0</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.modello</groupId> + <artifactId>modello-maven-plugin</artifactId> + <version>1.0-alpha-15-SNAPSHOT</version> + <configuration> + <version>1.0.0</version> + <packageWithVersion>false</packageWithVersion> + <model>src/main/mdo/archiva-base.xml</model> + </configuration> + <executions> + <execution> + <id>archiva-base</id> + <goals> + <goal>java</goal> + <goal>xsd</goal> + <goal>jpox-jdo-mapping</goal> + <goal>jpox-metadata-class</goal> + <!-- + <goal>xpp3-writer</goal> + <goal>xpp3-reader</goal> + --> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>jpox-maven-plugin</artifactId> + <version>1.1.6</version> + <dependencies> + <dependency> + <groupId>org.apache.derby</groupId> + <artifactId>derby</artifactId> + <version>10.2.1.6</version> + </dependency> + </dependencies> + <executions> + <execution> + <id>create-ddl</id> + <phase>generate-test-resources</phase> + <goals> + <goal>schema-create</goal> + </goals> + <configuration> + <outputFile>${basedir}/target/classes/org/apache/maven/archiva/model/schema.ddl</outputFile> + <toolProperties> + <property> + <name>javax.jdo.option.ConnectionDriverName</name> + <value>org.apache.derby.jdbc.EmbeddedDriver</value> + </property> + <property> + <name>javax.jdo.option.ConnectionURL</name> + <value>jdbc:derby:target/jdo-schema-create;create=true</value> + </property> + <property> + <name>javax.jdo.option.ConnectionUserName</name> + <value>sa</value> + </property> + <property> + <name>javax.jdo.option.ConnectionPassword</name> + <value></value> + </property> + <property> + <name>log4j.configuration</name> + <value>${basedir}/src/test/resources/log4j.xml</value> + </property> + <property> + <name>org.jpox.autoCreateTables</name> + <value>true</value> + </property> + </toolProperties> + </configuration> + </execution> + <execution> + <id>enhance</id> + <goals> + <goal>enhance</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + <configuration> + <instrumentation> + <!-- exclude generated --> + <excludes> + <exclude>org/apache/maven/archiva/reporting/model/**</exclude> + </excludes> + </instrumentation> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-parent/1.0-SNAPSHOT/archiva-parent-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-parent/1.0-SNAPSHOT/archiva-parent-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..970098384 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-parent/1.0-SNAPSHOT/archiva-parent-1.0-SNAPSHOT.pom @@ -0,0 +1,566 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Copyright 2005-2006 The Apache Software Foundation. + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.maven</groupId> + <artifactId>maven-parent</artifactId> + <version>4</version> + <relativePath>../pom/maven/pom.xml</relativePath> + </parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-parent</artifactId> + <packaging>pom</packaging> + <name>Archiva</name> + <version>1.0-SNAPSHOT</version> + <description> + Archiva is an application for managing one or more remote repositories, including + administration, artifact handling, + browsing and searching. + </description> + <url>http://maven.apache.org/archiva</url> + <issueManagement> + <system>jira</system> + <url>http://jira.codehaus.org/browse/MRM</url> + </issueManagement> + <mailingLists> + <mailingList> + <name>Maven Archiva User List</name> + <subscribe>archiva-users-subscribe@maven.apache.org</subscribe> + <unsubscribe>archiva-users-unsubscribe@maven.apache.org</unsubscribe> + <post>archiva-users@maven.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/maven-archiva-users</archive> + </mailingList> + <mailingList> + <name>Maven Archiva Developer List</name> + <subscribe>archiva-dev-subscribe@maven.apache.org</subscribe> + <unsubscribe>archiva-dev-unsubscribe@maven.apache.org</unsubscribe> + <post>archiva-dev@maven.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/maven-archiva-dev</archive> + </mailingList> + <mailingList> + <name>Maven Archiva Commits List</name> + <subscribe>archiva-commits-subscribe@maven.apache.org</subscribe> + <unsubscribe>archiva-commits-unsubscribe@maven.apache.org</unsubscribe> + <post>archiva-commits@maven.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/maven-archiva-commits</archive> + </mailingList> + </mailingLists> + <scm> + <connection>scm:svn:http://svn.apache.org/repos/asf/maven/archiva/trunk</connection> + <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/archiva/trunk</developerConnection> + <url>http://svn.apache.org/viewcvs.cgi/maven/archiva/trunk</url> + </scm> + <distributionManagement> + <site> + <id>apache.website</id> + <url>scpexe://people.apache.org/www/maven.apache.org/archiva/</url> + </site> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-maven-plugin</artifactId> + <version>1.3.3</version> + <executions> + <execution> + <id>generate</id> + <goals> + <goal>descriptor</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <source>1.4</source> + <target>1.4</target> + </configuration> + </plugin> + <plugin> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.2</version> + </plugin> + </plugins> + <pluginManagement> + <plugins> + <plugin> + <artifactId>maven-idea-plugin</artifactId> + <configuration> + <jdkLevel>1.4</jdkLevel> + </configuration> + </plugin> + <plugin> + <artifactId>maven-release-plugin</artifactId> + <configuration> + <tagBase>https://svn.apache.org/repos/asf/maven/archiva/tags</tagBase> + </configuration> + </plugin> + </plugins> + </pluginManagement> + </build> + <modules> + <module>archiva-api</module> + <module>archiva-base</module> + <module>archiva-database</module> + <module>archiva-reporting</module> + <module>archiva-web</module> + <module>archiva-cli</module> + <module>maven-meeper</module> + </modules> + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + </dependencies> + <dependencyManagement> + <dependencies> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-app-configuration-model</artifactId> + <version>1.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-app-configuration-web</artifactId> + <version>1.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + <version>1.0-alpha-18</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + <version>1.0-alpha-18</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + <version>1.4</version> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-log4j12</artifactId> + <version>1.2</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-repository-metadata</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-model</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact-manager</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-project</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-model-converter</artifactId> + <version>2.0.5-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-provider-api</artifactId> + <version>${wagon.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-ssh</artifactId> + <version>${wagon.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-file</artifactId> + <version>${wagon.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-http-lightweight</artifactId> + <version>${wagon.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-common</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-core</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-reports-standard</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-model</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-database</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-consumer-api</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-model</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-database</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-discoverer</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-repository-layer</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-indexer</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-proxy</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-applet</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-security</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-configuration</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-converter</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-utils</artifactId> + <version>${archiva.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-webapp</artifactId> + <version>${archiva.version}</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-digest</artifactId> + <version>1.1-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-rbac-profile</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-system</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-system</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-ui-web</artifactId> + <version>${plexus-security.version}</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-ui-web-integration</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-ui-web-taglib</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authentication-provider-user-manager</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authentication-provider-keystore</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-user-management-api</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-user-management-provider-jdo</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authorization-rbac-store-cached</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authorization-rbac-store-jdo</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authorization-api</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authorization-rbac-authorizer</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-keys-jdo</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + <version>2.2</version> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + <version>1.2</version> + </dependency> + <dependency> + <groupId>org.apache.derby</groupId> + <artifactId>derby</artifactId> + <version>10.1.3.1</version> + </dependency> + </dependencies> + </dependencyManagement> + <reporting> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-checkstyle-plugin</artifactId> + <configuration> + <configLocation>config/maven_checks.xml</configLocation> + </configuration> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>changelog-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>taglist-maven-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-jxr-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + </configuration> + </plugin> + <plugin> + <artifactId>maven-surefire-report-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <source>1.4</source> + <aggregate>true</aggregate> + </configuration> + </plugin> + <plugin> + <artifactId>maven-pmd-plugin</artifactId> + <!-- TODO: choose appropriate rulesets --> + </plugin> + </plugins> + </reporting> + <profiles> + <profile> + <id>ci</id> + <activation> + <property> + <name>enableCiProfile</name> + <value>true</value> + </property> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + <executions> + <execution> + <phase>process-sources</phase> + <goals> + <!-- TODO: after rules are set + <goal>check</goal> + --> + <goal>cpd-check</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <executions> + <execution> + <phase>process-sources</phase> + <goals> + <!-- TODO: reformat first, and correct the checks (some are not consistent with the Maven style) + <goal>check</goal> + --> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + <configuration> + <check> + <totalLineRate>77</totalLineRate> + <totalBranchRate>95</totalBranchRate> + </check> + + <instrumentation> + <excludes> + <exclude>**/*$*</exclude> + </excludes> + </instrumentation> + </configuration> + <executions> + <execution> + <id>clean</id> + <goals> + <goal>clean</goal> + </goals> + </execution> + <execution> + <id>check</id> + <goals> + <goal>check</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <repositories> + <repository> + <id>codehaus.org</id> + <url>http://repository.codehaus.org</url> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + <!-- TODO: remove once ehcache, p-sec, registry, webdav, xwork, naming released --> + <repository> + <id>snapshots.codehaus.org</id> + <url>http://snapshots.repository.codehaus.org</url> + <releases> + <enabled>false</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + </snapshots> + </repository> + </repositories> + <!-- TODO: remove once modello is released --> + <pluginRepositories> + <pluginRepository> + <id>snapshots.codehaus.org</id> + <url>http://snapshots.repository.codehaus.org</url> + <releases> + <enabled>false</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + </snapshots> + </pluginRepository> + </pluginRepositories> + <properties> + <archiva.version>1.0-SNAPSHOT</archiva.version> + <maven.version>2.0.5</maven.version> + <wagon.version>1.0-beta-2</wagon.version> + <plexus-security.version>1.0-alpha-11-SNAPSHOT</plexus-security.version> + </properties> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-plexus-application/1.0-SNAPSHOT/archiva-plexus-application-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-plexus-application/1.0-SNAPSHOT/archiva-plexus-application-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..21edbff05 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-plexus-application/1.0-SNAPSHOT/archiva-plexus-application-1.0-SNAPSHOT.pom @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <artifactId>archiva</artifactId> + <groupId>org.apache.maven.archiva</groupId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-plexus-application</artifactId> + <packaging>plexus-application</packaging> + <name>Archiva Plexus Application</name> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-appserver-maven-plugin</artifactId> + <version>2.0-alpha-7</version> + <extensions>true</extensions> + <configuration> + <applicationConfiguration>src/conf/application.xml</applicationConfiguration> + <configurationsDirectory>src/conf</configurationsDirectory> + <configurationProperties>src/plexus.properties</configurationProperties> + <applicationName>archiva</applicationName> + <runtimeConfiguration>src/conf/plexus.xml</runtimeConfiguration> + <runtimeConfigurationProperties>src/plexus.properties</runtimeConfigurationProperties> + <runtimePath>target/plexus-archiva-runtime</runtimePath> + </configuration> + </plugin> + </plugins> + </build> + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-webapp</artifactId> + <type>war</type> + </dependency> + </dependencies> + <!-- For filtering --> + <properties> + <archivaVersion>${project.version}</archivaVersion> + </properties> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-plexus-runtime/1.0-SNAPSHOT/archiva-plexus-runtime-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-plexus-runtime/1.0-SNAPSHOT/archiva-plexus-runtime-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..1c675dc62 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-plexus-runtime/1.0-SNAPSHOT/archiva-plexus-runtime-1.0-SNAPSHOT.pom @@ -0,0 +1,145 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-plexus-runtime</artifactId> + <name>Archiva Runtime Generator</name> + <dependencies> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-appserver-host</artifactId> + <version>2.0-alpha-7</version> + </dependency> + <!-- Services --> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-appserver-service-jetty</artifactId> + <version>2.0-alpha-7</version> + <type>plexus-service</type> + </dependency> + <!-- Plexus applications --> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-plexus-application</artifactId> + <version>${project.version}</version> + <type>plexus-application</type> + </dependency> + + <!-- Additional Core Artifacts --> + <dependency> + <groupId>log4j</groupId> + <artifactId>log4j</artifactId> + <version>1.2.8</version> + </dependency> + <dependency> + <groupId>commons-logging</groupId> + <artifactId>commons-logging-api</artifactId> + <version>1.0.4</version> + </dependency> + <dependency> + <groupId>org.apache.derby</groupId> + <artifactId>derby</artifactId> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-naming</artifactId> + <version>1.0-alpha-3-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>javax.mail</groupId> + <artifactId>mail</artifactId> + <version>1.4</version> + <scope>runtime</scope> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-appserver-maven-plugin</artifactId> + <version>2.0-alpha-7</version> + <extensions>true</extensions> + <executions> + <execution> + <phase>process-resources</phase> + <goals> + <goal>assemble-runtime</goal> + <goal>add-services</goal> + <goal>add-apps</goal> + </goals> + </execution> + </executions> + <configuration> + <runtimeConfiguration>src/conf/plexus.xml</runtimeConfiguration> + <runtimeConfigurationProperties>src/plexus.properties</runtimeConfigurationProperties> + <runtimePath>target/plexus-archiva-runtime</runtimePath> + <additionalCoreArtifacts> + <additionalCoreArtifact>commons-logging:commons-logging-api</additionalCoreArtifact> + <additionalCoreArtifact>log4j:log4j</additionalCoreArtifact> + <additionalCoreArtifact>org.apache.derby:derby</additionalCoreArtifact> + <additionalCoreArtifact>org.codehaus.plexus:plexus-naming</additionalCoreArtifact> + <additionalCoreArtifact>commons-pool:commons-pool</additionalCoreArtifact> + <additionalCoreArtifact>commons-dbcp:commons-dbcp</additionalCoreArtifact> + <additionalCoreArtifact>commons-collections:commons-collections</additionalCoreArtifact> + <additionalCoreArtifact>directory-naming:naming-core</additionalCoreArtifact> + <additionalCoreArtifact>directory-naming:naming-factory</additionalCoreArtifact> + <additionalCoreArtifact>directory-naming:naming-java</additionalCoreArtifact> + <additionalCoreArtifact>directory-naming:naming-config</additionalCoreArtifact> + <additionalCoreArtifact>javax.mail:mail</additionalCoreArtifact> + <additionalCoreArtifact>javax.activation:activation</additionalCoreArtifact> + </additionalCoreArtifacts> + </configuration> + </plugin> + <plugin> + <artifactId>maven-assembly-plugin</artifactId> + <version>2.1</version> + <executions> + <execution> + <phase>package</phase> + <goals> + <goal>single</goal> + </goals> + </execution> + </executions> + <configuration> + <descriptor>src/main/assembly/bin.xml</descriptor> + <finalName>archiva</finalName> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-proxy/1.0-SNAPSHOT/archiva-proxy-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-proxy/1.0-SNAPSHOT/archiva-proxy-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..23488ee0a --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-proxy/1.0-SNAPSHOT/archiva-proxy-1.0-SNAPSHOT.pom @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-proxy</artifactId> + <name>Archiva Proxy</name> + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-common</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-file</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-provider-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-digest</artifactId> + </dependency> + <dependency> + <groupId>easymock</groupId> + <artifactId>easymock</artifactId> + <version>1.2_Java1.3</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-reports-standard/1.0-SNAPSHOT/archiva-reports-standard-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-reports-standard/1.0-SNAPSHOT/archiva-reports-standard-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..24eb19954 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-reports-standard/1.0-SNAPSHOT/archiva-reports-standard-1.0-SNAPSHOT.pom @@ -0,0 +1,176 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-reports-standard</artifactId> + <name>Archiva Standard Reports</name> + <dependencies> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact-manager</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-model</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-repository-metadata</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-provider-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-repository-layer</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-indexer</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-discoverer</artifactId> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-jdo2</artifactId> + <version>1.0-alpha-8</version> + <exclusions> + <exclusion> + <groupId>xerces</groupId> + <artifactId>xercesImpl</artifactId> + </exclusion> + <exclusion> + <groupId>xerces</groupId> + <artifactId>xmlParserAPIs</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>jpox</groupId> + <artifactId>jpox</artifactId> + <version>1.1.6</version> + <scope>compile</scope> + <exclusions> + <!-- targeting JDK 1.4 we don't need this --> + <exclusion> + <groupId>javax.sql</groupId> + <artifactId>jdbc-stdext</artifactId> + </exclusion> + </exclusions> + </dependency> + <!-- TEST DEPS --> + <dependency> + <groupId>hsqldb</groupId> + <artifactId>hsqldb</artifactId> + <version>1.7.3.3</version> + <scope>test</scope> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.modello</groupId> + <artifactId>modello-maven-plugin</artifactId> + <version>1.0-alpha-14-SNAPSHOT</version> + <configuration> + <version>1.0.0</version> + <packageWithVersion>false</packageWithVersion> + <model>src/main/mdo/reporting.mdo</model> + </configuration> + <executions> + <execution> + <id>modello-java</id> + <goals> + <goal>java</goal> + <goal>jpox-metadata-class</goal> + <!-- + <goal>xpp3-writer</goal> + <goal>xpp3-reader</goal> + --> + </goals> + </execution> + <execution> + <id>jpox-jdo-mapping</id> + <goals> + <goal>jpox-jdo-mapping</goal> + </goals> + <configuration> + <outputDirectory>${basedir}/target/classes/org/apache/maven/archiva/reporting/model/</outputDirectory> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>jpox-maven-plugin</artifactId> + <version>1.1.6-SNAPSHOT</version> + <executions> + <execution> + <goals> + <goal>enhance</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + <configuration> + <instrumentation> + <!-- exclude generated --> + <excludes> + <exclude>org/apache/maven/archiva/reporting/model/**</exclude> + </excludes> + </instrumentation> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-repository-layer/1.0-SNAPSHOT/archiva-repository-layer-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-repository-layer/1.0-SNAPSHOT/archiva-repository-layer-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..6ec87f431 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-repository-layer/1.0-SNAPSHOT/archiva-repository-layer-1.0-SNAPSHOT.pom @@ -0,0 +1,103 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-base</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-repository-layer</artifactId> + <name>Archiva Repository Interface Layer</name> + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-consumer-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-model</artifactId> + <version>1.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-xml-tools</artifactId> + <version>1.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.cache</groupId> + <artifactId>plexus-cache-api</artifactId> + <version>1.0-alpha-2-SNAPSHOT</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.cache</groupId> + <artifactId>plexus-cache-ehcache</artifactId> + <version>1.0-alpha-2-SNAPSHOT</version> + <scope>compile</scope> + </dependency> + <!-- + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact-manager</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-repository-metadata</artifactId> + </dependency> + --> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-log4j12</artifactId> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-maven-plugin</artifactId> + <executions> + <execution> + <id>merge</id> + <goals> + <goal>merge-descriptors</goal> + </goals> + <configuration> + <descriptors> + <descriptor>${basedir}/src/main/resources/META-INF/plexus/components.xml</descriptor> + <descriptor>${project.build.directory}/generated-resources/plexus/META-INF/plexus/components.xml</descriptor> + </descriptors> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-security/1.0-SNAPSHOT/archiva-security-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-security/1.0-SNAPSHOT/archiva-security-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..78cbd1282 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-security/1.0-SNAPSHOT/archiva-security-1.0-SNAPSHOT.pom @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <artifactId>archiva</artifactId> + <groupId>org.apache.maven.archiva</groupId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-security</artifactId> + <name>Archiva Security Configuration</name> + <dependencies> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-rbac-profile</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-system</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-webapp/1.0-SNAPSHOT/archiva-webapp-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-webapp/1.0-SNAPSHOT/archiva-webapp-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..8304d2dd0 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-webapp/1.0-SNAPSHOT/archiva-webapp-1.0-SNAPSHOT.pom @@ -0,0 +1,334 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <artifactId>archiva-webapp</artifactId> + <packaging>war</packaging> + <name>Archiva Web Application</name> + <dependencies> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + <version>2.4</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>jsp-api</artifactId> + <version>2.0</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>opensymphony</groupId> + <artifactId>sitemesh</artifactId> + <version>2.2.1</version> + </dependency> + <dependency> + <groupId>taglibs</groupId> + <artifactId>standard</artifactId> + <version>1.1.2</version> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>jstl</artifactId> + <version>1.1.2</version> + </dependency> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-app-configuration-model</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-app-configuration-web</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-log4j-logging</artifactId> + <version>1.1-alpha-2</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + <version>1.0.4</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + <version>2.2</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-http-lightweight</artifactId> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-file</artifactId> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>opensymphony</groupId> + <artifactId>webwork</artifactId> + <version>2.2.4</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.registry</groupId> + <artifactId>plexus-registry-commons</artifactId> + <version>1.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-proxy</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-core</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-common</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-security</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-applet</artifactId> + <!-- TODO: actually, just exclude from WAR plugin --> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-project</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-dependency-tree</artifactId> + <version>1.0-alpha-2</version> + </dependency> + <!-- Plexus Security Dependencies --> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-ui-web</artifactId> + <type>war</type> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-ui-web-taglib</artifactId> + </dependency> + <!-- Other dependencies --> + <dependency> + <groupId>org.codehaus.plexus.webdav</groupId> + <artifactId>plexus-webdav-simple</artifactId> + <version>1.0-alpha-1-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-xwork-integration</artifactId> + <version>1.0-alpha-5</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <dependency> + <groupId>org.apache.derby</groupId> + <artifactId>derby</artifactId> + <version>10.1.3.1</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>javax.mail</groupId> + <artifactId>mail</artifactId> + <version>1.4</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>javax.activation</groupId> + <artifactId>activation</artifactId> + <version>1.1</version> + <scope>provided</scope> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-clean-plugin</artifactId> + <version>2.1.1</version> + <!-- This configuration is added to cleanup from war:inplace --> + <configuration> + <filesets> + <fileset> + <directory>${basedir}/src/main/webapp</directory> + <includes> + <!-- TODO: META-INF shouldn't be required, seems to be an issue with the current war plugin --> + <include>META-INF</include> + <include>images/pss</include> + <!-- Images from other wars --> + <include>template/pss</include> + <!-- Templates from other wars --> + <include>WEB-INF/classes</include> + <!-- Classes and Resources from other wars --> + <include>WEB-INF/lib</include> + <!-- Dependencies from other wars --> + <include>WEB-INF/database</include> + <!-- Database location configured in application.xml --> + <include>WEB-INF/logs</include> + <!-- Log file location specified in application.xml --> + <include>pss</include> + <!-- plexus-security css and javascript --> + <include>css/pss</include> + <include>WEB-INF/jsp/pss</include> + <!-- plexus-security jsps --> + <include>WEB-INF/template/pss</include> + <!-- plexus-security xwork templates --> + <include>WEB-INF/logs</include> + <!-- Directory created by jetty:run --> + <include>WEB-INF/temp</include> + <!-- Directory created by jetty:run --> + </includes> + </fileset> + </filesets> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-war-plugin</artifactId> + <version>2.0.1</version> + <configuration> + <!-- Some versions of maven-war-plugin (snapshots) have this incorrectly defaulted to true. + Specifically setting this to false to avoid accidental jar file creation. --> + <archiveClasses>false</archiveClasses> + <dependentWarExcludes>META-INF/**,WEB-INF/web.xml,WEB-INF/classes/xwork.xml</dependentWarExcludes> + </configuration> + <!-- TODO: would be good to make the jetty plugin aware of these and remove the below --> + <executions> + <execution> + <phase>compile</phase> + <goals> + <!-- Needed to get the plexus-security war overlay to do its thing before jetty:run --> + <goal>inplace</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.mortbay.jetty</groupId> + <artifactId>maven-jetty-plugin</artifactId> + <version>6.1.1</version> + <configuration> + <scanIntervalSeconds>10</scanIntervalSeconds> + <contextPath>/</contextPath> + <jettyEnvXml>src/jetty-env.xml</jettyEnvXml> + <connectors> + <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector"> + <port>9091</port> + <maxIdleTime>60000</maxIdleTime> + </connector> + </connectors> + <systemProperties> + <systemProperty> + <name>appserver.base</name> + <value>${project.build.directory}/appserver-base</value> + </systemProperty> + <systemProperty> + <name>derby.system.home</name> + <value>${project.build.directory}/appserver-base/logs</value> + </systemProperty> + </systemProperties> + </configuration> + <dependencies> + <dependency> + <groupId>org.apache.derby</groupId> + <artifactId>derby</artifactId> + <version>10.1.3.1</version> + </dependency> + </dependencies> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>dependency-maven-plugin</artifactId> + <executions> + <execution> + <id>copy</id> + <phase>process-resources</phase> + <goals> + <goal>copy</goal> + </goals> + <configuration> + <artifactItems> + <artifactItem> + <groupId>${project.groupId}</groupId> + <artifactId>archiva-applet</artifactId> + <version>${project.version}</version> + <outputDirectory>src/main/webapp</outputDirectory> + <destFileName>archiva-applet.jar</destFileName> + </artifactItem> + </artifactItems> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-maven-plugin</artifactId> + <configuration> + <roleDefaults> + <roleDefault> + <role>com.opensymphony.xwork.Action</role> + <instantiation-strategy>per-lookup</instantiation-strategy> + </roleDefault> + </roleDefaults> + </configuration> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + <configuration> + <instrumentation> + <excludes> + <exclude>**/**</exclude> + </excludes> + </instrumentation> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-xml-tools/1.0-SNAPSHOT/archiva-xml-tools-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-xml-tools/1.0-SNAPSHOT/archiva-xml-tools-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..efa42d3f0 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva-xml-tools/1.0-SNAPSHOT/archiva-xml-tools-1.0-SNAPSHOT.pom @@ -0,0 +1,79 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-base</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-xml-tools</artifactId> + <name>Archiva Base :: XML Tools</name> + <dependencies> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-common</artifactId> + </dependency> + <dependency> + <groupId>dom4j</groupId> + <artifactId>dom4j</artifactId> + <version>1.6.1</version> + </dependency> + <dependency> + <groupId>jaxen</groupId> + <artifactId>jaxen</artifactId> + <version>1.1</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-log4j12</artifactId> + </dependency> + </dependencies> + <!-- + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-maven-plugin</artifactId> + <executions> + <execution> + <id>merge</id> + <goals> + <goal>merge-descriptors</goal> + </goals> + <configuration> + <descriptors> + <descriptor>${basedir}/src/main/resources/META-INF/plexus/components.xml</descriptor> + <descriptor>${project.build.directory}/generated-resources/plexus/META-INF/plexus/components.xml</descriptor> + </descriptors> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + --> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva/1.0-SNAPSHOT/archiva-1.0-20061126.005254-2.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva/1.0-SNAPSHOT/archiva-1.0-20061126.005254-2.pom new file mode 100644 index 000000000..cf8e32963 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva/1.0-SNAPSHOT/archiva-1.0-20061126.005254-2.pom @@ -0,0 +1,505 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Copyright 2005-2006 The Apache Software Foundation.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-parent</artifactId>
+ <version>4</version>
+ <relativePath>../pom/maven/pom.xml</relativePath>
+ </parent>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva</artifactId>
+ <packaging>pom</packaging>
+ <name>Archiva</name>
+ <version>1.0-SNAPSHOT</version>
+ <description>
+ Archiva is an application for managing one or more remote repositories, including
+ administration, artifact handling,
+ browsing and searching.
+ </description>
+ <url>http://maven.apache.org/archiva</url>
+ <issueManagement>
+ <system>jira</system>
+ <url>http://jira.codehaus.org/browse/MRM</url>
+ </issueManagement>
+ <mailingLists>
+ <mailingList>
+ <name>Maven Archiva User List</name>
+ <subscribe>archiva-users-subscribe@maven.apache.org</subscribe>
+ <unsubscribe>archiva-users-unsubscribe@maven.apache.org</unsubscribe>
+ <post>archiva-users@maven.apache.org</post>
+ <archive>http://mail-archives.apache.org/mod_mbox/maven-archiva-users</archive>
+ </mailingList>
+ <mailingList>
+ <name>Maven Archiva Developer List</name>
+ <subscribe>archiva-dev-subscribe@maven.apache.org</subscribe>
+ <unsubscribe>archiva-dev-unsubscribe@maven.apache.org</unsubscribe>
+ <post>archiva-dev@maven.apache.org</post>
+ <archive>http://mail-archives.apache.org/mod_mbox/maven-archiva-dev</archive>
+ </mailingList>
+ <mailingList>
+ <name>Maven Archiva Commits List</name>
+ <subscribe>archiva-commits-subscribe@maven.apache.org</subscribe>
+ <unsubscribe>archiva-commits-unsubscribe@maven.apache.org</unsubscribe>
+ <post>archiva-commits@maven.apache.org</post>
+ <archive>http://mail-archives.apache.org/mod_mbox/maven-archiva-commits</archive>
+ </mailingList>
+ </mailingLists>
+ <scm>
+ <connection>scm:svn:http://svn.apache.org/repos/asf/maven/archiva/trunk</connection>
+ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/archiva/trunk</developerConnection>
+ <url>http://svn.apache.org/viewcvs.cgi/maven/archiva/trunk</url>
+ </scm>
+ <distributionManagement>
+ <site>
+ <id>apache.website</id>
+ <url>scpexe://people.apache.org/www/maven.apache.org/archiva/</url>
+ </site>
+ </distributionManagement>
+ <build>
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.wagon</groupId>
+ <artifactId>wagon-ssh-external</artifactId>
+ <version>1.0-alpha-5</version>
+ </extension>
+ </extensions>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-maven-plugin</artifactId>
+ <version>1.3</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>descriptor</goal>
+ <goal>merge-descriptors</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.4</source>
+ <target>1.4</target>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.2</version>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-idea-plugin</artifactId>
+ <configuration>
+ <jdkLevel>1.4</jdkLevel>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-release-plugin</artifactId>
+ <configuration>
+ <tagBase>https://svn.apache.org/repos/asf/maven/archiva/tags</tagBase>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+ <modules>
+ <module>archiva-applet</module>
+ <module>archiva-converter</module>
+ <module>archiva-discoverer</module>
+ <module>archiva-reports-standard</module>
+ <module>archiva-indexer</module>
+ <module>archiva-webapp</module>
+ <module>archiva-proxy</module>
+ <module>archiva-core</module>
+ <module>archiva-configuration</module>
+ <module>maven-meeper</module>
+ <module>archiva-repository-layer</module>
+ <module>archiva-plexus-application</module>
+ <module>archiva-plexus-runtime</module>
+ <module>archiva-security</module>
+ <module>archiva-cli</module>
+ </modules>
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8.1</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-container-default</artifactId>
+ <version>1.0-alpha-10</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-utils</artifactId>
+ <version>1.3</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-repository-metadata</artifactId>
+ <version>${maven.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-model</artifactId>
+ <version>${maven.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-artifact</artifactId>
+ <version>${maven.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-artifact-manager</artifactId>
+ <version>${maven.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-project</artifactId>
+ <version>${maven.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-model-converter</artifactId>
+ <version>2.0.4</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.wagon</groupId>
+ <artifactId>wagon-provider-api</artifactId>
+ <version>${wagon.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.wagon</groupId>
+ <artifactId>wagon-ssh</artifactId>
+ <version>${wagon.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.wagon</groupId>
+ <artifactId>wagon-file</artifactId>
+ <version>${wagon.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.wagon</groupId>
+ <artifactId>wagon-http-lightweight</artifactId>
+ <version>${wagon.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-core</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-reports-standard</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-discoverer</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-repository-layer</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-indexer</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-proxy</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-applet</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-security</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-configuration</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-converter</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-webapp</artifactId>
+ <version>${pom.version}</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-digest</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-rbac-profile</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-system</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-system</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-ui-web</artifactId>
+ <version>${plexus-security.version}</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-ui-web-integration</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-ui-web-taglib</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-authentication-provider-user-manager</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-authentication-provider-keystore</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-user-management-api</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-user-management-provider-jdo</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-authorization-rbac-store-jdo</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-authorization-api</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-authorization-rbac-authorizer</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus.security</groupId>
+ <artifactId>plexus-security-keys-jdo</artifactId>
+ <version>${plexus-security.version}</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>cobertura-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-checkstyle-plugin</artifactId>
+ <configuration>
+ <configLocation>config/maven_checks.xml</configLocation>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>changelog-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>taglist-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-jxr-plugin</artifactId>
+ <configuration>
+ <aggregate>true</aggregate>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-report-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <aggregate>true</aggregate>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-pmd-plugin</artifactId>
+ <!-- TODO: choose appropriate rulesets -->
+ </plugin>
+ </plugins>
+ </reporting>
+ <profiles>
+ <profile>
+ <id>ci</id>
+ <activation>
+ <property>
+ <name>enableCiProfile</name>
+ <value>true</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-pmd-plugin</artifactId>
+ <executions>
+ <execution>
+ <phase>process-sources</phase>
+ <goals>
+ <!-- TODO: after rules are set
+ <goal>check</goal>
+ -->
+ <goal>cpd-check</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-checkstyle-plugin</artifactId>
+ <executions>
+ <execution>
+ <phase>process-sources</phase>
+ <goals>
+ <!-- TODO: reformat first, and correct the checks (some are not consistent with the Maven style)
+ <goal>check</goal>
+ -->
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>cobertura-maven-plugin</artifactId>
+ <configuration>
+ <check>
+ <totalLineRate>77</totalLineRate>
+ <totalBranchRate>95</totalBranchRate>
+ </check>
+
+ <instrumentation>
+ <excludes>
+ <exclude>**/*$*</exclude>
+ </excludes>
+ </instrumentation>
+ </configuration>
+ <executions>
+ <execution>
+ <id>clean</id>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>check</id>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+ <!-- TODO: remove once xwork integration, plexus container is released -->
+ <repositories>
+ <repository>
+ <id>codehaus.org</id>
+ <url>http://snapshots.repository.codehaus.org</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>codehaus.org</id>
+ <url>http://snapshots.repository.codehaus.org</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+
+ <!-- See: http://www.nabble.com/NoClassDefFoundError-from-shared-in-project-info-reports-tf2678299s177.html#a7489595 -->
+ <pluginRepository>
+ <id>apache.org</id>
+ <url>http://people.apache.org/repo/m2-snapshot-repository</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ <properties>
+ <maven.version>2.0.4</maven.version>
+ <wagon.version>1.0-beta-1</wagon.version>
+ <plexus-security.version>1.0-alpha-6-SNAPSHOT</plexus-security.version>
+ </properties>
+</project>
diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva/1.0-SNAPSHOT/archiva-1.0-SNAPSHOT-site.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva/1.0-SNAPSHOT/archiva-1.0-SNAPSHOT-site.xml new file mode 100644 index 000000000..ac3c2e716 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva/1.0-SNAPSHOT/archiva-1.0-SNAPSHOT-site.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="ISO-8859-1"?><project> + <bannerLeft> + <name>Maven</name> + <src>http://maven.apache.org/images/apache-maven-project-2.png</src> + <href>http://maven.apache.org/</href> + </bannerLeft> + <bannerRight> + <src>images/archiva-logo-banner.jpg</src> + </bannerRight> + <publishDate format="dd MMM yyyy" /> + <skin> + <groupId>org.apache.maven.skins</groupId> + <artifactId>maven-stylus-skin</artifactId> + </skin> + <body> + <links> + <item name="Maven" href="http://maven.apache.org/" /> + </links> + <menu name="Documentation"> + <item name="Welcome" href="/index.html" /> + <item name="Getting Started" href="/guides/getting-started/index.html" /> + <item name="FAQ" href="http://docs.codehaus.org/display/MAVENUSER/Archiva+FAQ" /> + <item name="Maven Configuration" href="/guides/getting-started/maven-configuration.html" /> + <item name="Developing" href="/guides/developing/index.html" /> + </menu> + <menu inherit="bottom" ref="reports" /> + </body> +</project>
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva/1.0-SNAPSHOT/archiva-1.0-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva/1.0-SNAPSHOT/archiva-1.0-SNAPSHOT.pom new file mode 100644 index 000000000..31df31eda --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/archiva/archiva/1.0-SNAPSHOT/archiva-1.0-SNAPSHOT.pom @@ -0,0 +1,556 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Copyright 2005-2006 The Apache Software Foundation. + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.maven</groupId> + <artifactId>maven-parent</artifactId> + <version>4</version> + <relativePath>../pom/maven/pom.xml</relativePath> + </parent> + <prerequisites> + <maven>2.0.5</maven> + </prerequisites> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva</artifactId> + <packaging>pom</packaging> + <name>Archiva</name> + <version>1.0-SNAPSHOT</version> + <description> + Archiva is an application for managing one or more remote repositories, including + administration, artifact handling, + browsing and searching. + </description> + <url>http://maven.apache.org/archiva</url> + <issueManagement> + <system>jira</system> + <url>http://jira.codehaus.org/browse/MRM</url> + </issueManagement> + <mailingLists> + <mailingList> + <name>Maven Archiva User List</name> + <subscribe>archiva-users-subscribe@maven.apache.org</subscribe> + <unsubscribe>archiva-users-unsubscribe@maven.apache.org</unsubscribe> + <post>archiva-users@maven.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/maven-archiva-users</archive> + </mailingList> + <mailingList> + <name>Maven Archiva Developer List</name> + <subscribe>archiva-dev-subscribe@maven.apache.org</subscribe> + <unsubscribe>archiva-dev-unsubscribe@maven.apache.org</unsubscribe> + <post>archiva-dev@maven.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/maven-archiva-dev</archive> + </mailingList> + <mailingList> + <name>Maven Archiva Commits List</name> + <subscribe>archiva-commits-subscribe@maven.apache.org</subscribe> + <unsubscribe>archiva-commits-unsubscribe@maven.apache.org</unsubscribe> + <post>archiva-commits@maven.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/maven-archiva-commits</archive> + </mailingList> + </mailingLists> + <scm> + <connection>scm:svn:http://svn.apache.org/repos/asf/maven/archiva/trunk</connection> + <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/archiva/trunk</developerConnection> + <url>http://svn.apache.org/viewcvs.cgi/maven/archiva/trunk</url> + </scm> + <distributionManagement> + <site> + <id>apache.website</id> + <url>scpexe://people.apache.org/www/maven.apache.org/archiva/</url> + </site> + </distributionManagement> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-maven-plugin</artifactId> + <version>1.3.3</version> + <executions> + <execution> + <id>generate</id> + <goals> + <goal>descriptor</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <source>1.4</source> + <target>1.4</target> + </configuration> + </plugin> + <plugin> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.2</version> + </plugin> + </plugins> + <pluginManagement> + <plugins> + <plugin> + <artifactId>maven-idea-plugin</artifactId> + <configuration> + <jdkLevel>1.4</jdkLevel> + </configuration> + </plugin> + <plugin> + <artifactId>maven-release-plugin</artifactId> + <configuration> + <tagBase>https://svn.apache.org/repos/asf/maven/archiva/tags</tagBase> + </configuration> + </plugin> + </plugins> + </pluginManagement> + </build> + <modules> + <module>archiva-applet</module> + <module>archiva-converter</module> + <module>archiva-common</module> + <module>archiva-discoverer</module> + <module>archiva-reports-standard</module> + <module>archiva-indexer</module> + <module>archiva-webapp</module> + <module>archiva-proxy</module> + <module>archiva-core</module> + <module>archiva-configuration</module> + <module>maven-meeper</module> + <module>archiva-repository-layer</module> + <module>archiva-plexus-application</module> + <module>archiva-plexus-runtime</module> + <module>archiva-security</module> + <module>archiva-cli</module> + </modules> + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + </dependencies> + <dependencyManagement> + <dependencies> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-app-configuration-model</artifactId> + <version>1.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-app-configuration-web</artifactId> + <version>1.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + <version>1.0-alpha-17</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + <version>1.0-alpha-17</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + <version>1.4</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-repository-metadata</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-model</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact-manager</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-project</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-model-converter</artifactId> + <version>2.0.5-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-provider-api</artifactId> + <version>${wagon.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-ssh</artifactId> + <version>${wagon.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-file</artifactId> + <version>${wagon.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-http-lightweight</artifactId> + <version>${wagon.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-common</artifactId> + <version>${pom.version}</version> + </dependency> + <!-- + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-common</artifactId> + <version>${pom.version}</version> + <classifier>tests</classifier> + <scope>test</scope> + </dependency> + --> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-core</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-reports-standard</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-discoverer</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-repository-layer</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-indexer</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-proxy</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-applet</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-security</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-configuration</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-converter</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-utils</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.archiva</groupId> + <artifactId>archiva-webapp</artifactId> + <version>${pom.version}</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-digest</artifactId> + <version>1.0</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-rbac-profile</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-system</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-system</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-ui-web</artifactId> + <version>${plexus-security.version}</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-ui-web-integration</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-ui-web-taglib</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authentication-provider-user-manager</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authentication-provider-keystore</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-user-management-api</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-user-management-provider-jdo</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authorization-rbac-store-cached</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authorization-rbac-store-jdo</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authorization-api</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-authorization-rbac-authorizer</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.security</groupId> + <artifactId>plexus-security-keys-jdo</artifactId> + <version>${plexus-security.version}</version> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + <version>2.2</version> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + <version>1.2</version> + </dependency> + <dependency> + <groupId>org.apache.derby</groupId> + <artifactId>derby</artifactId> + <version>10.1.3.1</version> + </dependency> + </dependencies> + </dependencyManagement> + <reporting> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-checkstyle-plugin</artifactId> + <configuration> + <configLocation>config/maven_checks.xml</configLocation> + </configuration> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>changelog-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>taglist-maven-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-jxr-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + </configuration> + </plugin> + <plugin> + <artifactId>maven-surefire-report-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <source>1.4</source> + <aggregate>true</aggregate> + </configuration> + </plugin> + <plugin> + <artifactId>maven-pmd-plugin</artifactId> + <!-- TODO: choose appropriate rulesets --> + </plugin> + </plugins> + </reporting> + <profiles> + <profile> + <id>ci</id> + <activation> + <property> + <name>enableCiProfile</name> + <value>true</value> + </property> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + <executions> + <execution> + <phase>process-sources</phase> + <goals> + <!-- TODO: after rules are set + <goal>check</goal> + --> + <goal>cpd-check</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <executions> + <execution> + <phase>process-sources</phase> + <goals> + <!-- TODO: reformat first, and correct the checks (some are not consistent with the Maven style) + <goal>check</goal> + --> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + <configuration> + <check> + <totalLineRate>77</totalLineRate> + <totalBranchRate>95</totalBranchRate> + </check> + + <instrumentation> + <excludes> + <exclude>**/*$*</exclude> + </excludes> + </instrumentation> + </configuration> + <executions> + <execution> + <id>clean</id> + <goals> + <goal>clean</goal> + </goals> + </execution> + <execution> + <id>check</id> + <goals> + <goal>check</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <repositories> + <repository> + <id>codehaus.org</id> + <url>http://repository.codehaus.org</url> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + <!-- TODO: remove once ehcache, p-sec, registry, webdav, xwork, naming released --> + <repository> + <id>codehaus.org</id> + <url>http://snapshots.repository.codehaus.org</url> + <releases> + <enabled>false</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + </snapshots> + </repository> + </repositories> + <!-- TODO: remove once modello is released --> + <pluginRepositories> + <pluginRepository> + <id>codehaus.org</id> + <url>http://snapshots.repository.codehaus.org</url> + <releases> + <enabled>false</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + </snapshots> + </pluginRepository> + </pluginRepositories> + <properties> + <maven.version>2.0.5</maven.version> + <wagon.version>1.0-beta-2</wagon.version> + <plexus-security.version>1.0-alpha-10-SNAPSHOT</plexus-security.version> + </properties> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/discovery/1.0/discovery-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/discovery/1.0/discovery-1.0.pom new file mode 100644 index 000000000..5a29f6117 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/discovery/1.0/discovery-1.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>discovery</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>pom</packaging> +</project> diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-metadata.xml index 8ce7fc7bb..8ce7fc7bb 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/maven-metadata.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-metadata.xml diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4-site.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4-site.xml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4-site.xml diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4-site_en.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4-site_en.xml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4-site_en.xml diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4.pom new file mode 100644 index 000000000..132d9d736 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4.pom @@ -0,0 +1,304 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + ~ Copyright 2005-2006 The Apache Software Foundation. + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>3</version> + <relativePath>../asf/pom.xml</relativePath> + </parent> + <groupId>org.apache.maven</groupId> + <artifactId>maven-parent</artifactId> + <version>4</version> + <packaging>pom</packaging> + <name>Apache Maven</name> + <description> + Maven is a software project management and comprehension tool. Based on the concept of a project object model + (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. + </description> + <url>http://maven.apache.org/</url> + <issueManagement> + <system>jira</system> + <url>http://jira.codehaus.org/browse/MPA</url> + </issueManagement> + <ciManagement> + <system>continuum</system> + <url>http://maven.zones.apache.org:8080/continuum</url> + <notifiers> + <notifier> + <type>mail</type> + <configuration> + <address>notifications@maven.apache.org</address> + </configuration> + </notifier> + </notifiers> + </ciManagement> + <inceptionYear>2002</inceptionYear> + <mailingLists> + <mailingList> + <name>Maven Announcements List</name> + <post>announce@maven.apache.org</post> + <subscribe>announce-subscribe@maven.apache.org</subscribe> + <unsubscribe>announce-unsubscribe@maven.apache.org</unsubscribe> + <archive>http://mail-archives.apache.org/mod_mbox/maven-announce/</archive> + </mailingList> + <mailingList> + <name>Maven Issues List</name> + <post>issues@maven.apache.org</post> + <subscribe>issues-subscribe@maven.apache.org</subscribe> + <unsubscribe>issues-unsubscribe@maven.apache.org</unsubscribe> + <archive>http://mail-archives.apache.org/mod_mbox/maven-issues/</archive> + </mailingList> + <mailingList> + <name>Maven Notifications List</name> + <post>notifications@maven.apache.org</post> + <subscribe>notifications-subscribe@maven.apache.org</subscribe> + <unsubscribe>notifications-unsubscribe@maven.apache.org</unsubscribe> + <archive>http://mail-archives.apache.org/mod_mbox/maven-notifications/</archive> + </mailingList> + </mailingLists> + + <developers> + <developer> + <id>jvanzyl</id> + <name>Jason van Zyl</name> + <email>jason@maven.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Chair</role> + </roles> + <timezone>-5</timezone> + </developer> + <developer> + <id>brett</id> + <name>Brett Porter</name> + <email>brett@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+10</timezone> + </developer> + <developer> + <id>evenisse</id> + <name>Emmanuel Venisse</name> + <email>evenisse@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>kenney</id> + <name>Kenney Westerhof</name> + <email>kenney@apache.org</email> + <organization>Neonics</organization> + <roles> + <role>PMC Member</role> + </roles> + </developer> + <developer> + <id>snicoll</id> + <name>Stephane Nicoll</name> + <email>snicoll@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>vmassol</id> + <name>Vincent Massol</name> + <email>vmassol@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>fgiust</id> + <name>Fabrizio Giustina</name> + <email>fgiust@apache.org</email> + <organization>openmind</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>epunzalan</id> + <name>Edwin Punzalan</name> + <email>epunzalan@mergere.com</email> + <organization>Mergere</organization> + <roles> + <role>Committer</role> + </roles> + <timezone>+8</timezone> + </developer> + <developer> + <id>mperham</id> + <name>Mike Perham</name> + <email>mperham@gmail.com</email> + <organization>IBM</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>-6</timezone> + </developer> + <developer> + <id>jdcasey</id> + <name>John Casey</name> + <email>jdcasey@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>-5</timezone> + </developer> + <developer> + <id>trygvis</id> + <name>Trygve Laugstol</name> + <email>trygvis@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>vsiveton</id> + <name>Vincent Siveton</name> + <email>vsiveton@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>-5</timezone> + </developer> + <developer> + <id>carlos</id> + <name>Carlos Sanchez</name> + <email>carlos@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>dennisl</id> + <name>Dennis Lundberg</name> + <email>dennisl@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + </developers> + + <distributionManagement> + <site> + <id>apache.website</id> + <url>scp://people.apache.org/www/maven.apache.org</url> + </site> + </distributionManagement> + +<!-- Disabled until projects have been made to comply + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + <executions> + <execution> + <goals> + <goal>cpd-check</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +--> + + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-report-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <configuration> + <configLocation>http://svn.apache.org/repos/asf/maven/plugins/trunk/maven-checkstyle-plugin/src/main/resources/config/maven_checks.xml</configLocation> + <headerLocation>http://svn.apache.org/repos/asf/maven/plugins/trunk/maven-checkstyle-plugin/src/main/resources/config/maven-header.txt</headerLocation> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>taglist-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jxr-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <configuration> + <links> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://jakarta.apache.org/commons/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://jakarta.apache.org/commons/dbcp/apidocs/</link> + <link>http://jakarta.apache.org/commons/fileupload/apidocs/</link> + <link>http://jakarta.apache.org/commons/httpclient/apidocs/</link> + <link>http://jakarta.apache.org/commons/logging/apidocs/</link> + <link>http://jakarta.apache.org/commons/pool/apidocs/</link> + <link>http://www.junit.org/junit/javadoc/</link> + <link>http://logging.apache.org/log4j/docs/api/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://jakarta.apache.org/velocity/api/</link> + </links> + </configuration> + </plugin> + </plugins> + </reporting> + + <scm> + <connection>scm:svn:http://svn.apache.org/repos/asf/maven/pom/maven/tags/maven-parent-4</connection> + <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/pom/maven/tags/maven-parent-4</developerConnection> + <url>http://svn.apache.org/viewvc/maven/pom/maven/tags/maven-parent-4</url> + </scm> +</project> + diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4.pom.sha1 new file mode 100644 index 000000000..b6caacf5e --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/maven-parent/4/maven-parent-4.pom.sha1 @@ -0,0 +1 @@ +0fc039b0bd4d17d7c147a30e1d83994629c5297c
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/1.0/samplejar-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/1.0/samplejar-1.0.jar new file mode 100644 index 000000000..54d190b23 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/1.0/samplejar-1.0.jar @@ -0,0 +1 @@ +dummy content. sample file only.
diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/1.0/samplejar-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/1.0/samplejar-1.0.pom new file mode 100644 index 000000000..6ab57d162 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/1.0/samplejar-1.0.pom @@ -0,0 +1,29 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>C</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <!-- default packaging is jar --> + <!--packaging>jar</packaging--> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/2.0/samplejar-2.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/2.0/samplejar-2.0.jar new file mode 100644 index 000000000..54d190b23 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/2.0/samplejar-2.0.jar @@ -0,0 +1 @@ +dummy content. sample file only.
diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/2.0/samplejar-2.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/2.0/samplejar-2.0.pom new file mode 100644 index 000000000..a959980df --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/2.0/samplejar-2.0.pom @@ -0,0 +1,29 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>C</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <!-- specified packaging --> + <packaging>jar</packaging> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/maven-metadata.xml new file mode 100644 index 000000000..89de35f4e --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/samplejar/maven-metadata.xml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<metadata> + <groupId>org.apache.maven</groupId> + <artifactId>samplejar</artifactId> + <version>6.0-SNAPSHOT</version> + <versioning> + <release>2.0</release> + <latest>6.0-SNAPSHOT</latest> + <snapshot> + <buildNumber>26</buildNumber> + </snapshot> + <versions> + <version>6.0-SNAPSHOT</version> + <version>6.0-20060311.093250-41</version> + <version>6.0-20060311.183228-42</version> + <version>6.0-20060311.183228-40</version> + <version>6.0-20060311.183228-37</version> + <version>6.0-20060311.183228-30</version> + <version>6.0-20060311.183228-29</version> + <version>6.0-20060311.183228-6</version> + <version>6.0-20060311.183228-9</version> + <version>6.0-20060311.183228-10</version> + <version>6.0-20060313.001659-43</version> + <version>6.0-20060313.001659-41</version> + <version>6.0-20060313.001659-38</version> + <version>6.0-20060313.001659-31</version> + <version>6.0-20060313.001659-30</version> + <version>6.0-20060313.001659-7</version> + <version>6.0-20060313.001659-10</version> + <version>6.0-20060313.001659-11</version> + </versions> + <lastUpdated>20060313010719</lastUpdated> + </versioning> +</metadata> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-javadoc.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-javadoc.jar Binary files differnew file mode 100644 index 000000000..ae0cb2e32 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-javadoc.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-javadoc.jar.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-javadoc.jar.md5 new file mode 100644 index 000000000..15a0630f6 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-javadoc.jar.md5 @@ -0,0 +1 @@ +69af4ffaf5e65d02b6ca50467e79b42a
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-javadoc.jar.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-javadoc.jar.sha1 new file mode 100644 index 000000000..107f46801 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-javadoc.jar.sha1 @@ -0,0 +1 @@ +902005afa0e151d7750735180f692d32fa5d76e2
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-sources.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-sources.jar Binary files differnew file mode 100644 index 000000000..faa0d98cc --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-sources.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-sources.jar.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-sources.jar.md5 new file mode 100644 index 000000000..3a84ad832 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-sources.jar.md5 @@ -0,0 +1 @@ +f7d54f505b8affa8a8235e01fbc38219
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-sources.jar.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-sources.jar.sha1 new file mode 100644 index 000000000..3a72dc7bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0-sources.jar.sha1 @@ -0,0 +1 @@ +821f8ec6e32c3fecd1b1fb85f83bfea148a86da8
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.jar Binary files differnew file mode 100644 index 000000000..712c664dd --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.jar.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.jar.md5 new file mode 100644 index 000000000..04d4ce468 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.jar.md5 @@ -0,0 +1 @@ +a2af4d8c1c00d8405ae2074fbcca87aa
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.jar.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.jar.sha1 new file mode 100644 index 000000000..19ae195e0 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.jar.sha1 @@ -0,0 +1 @@ +43dfd03d32f70b8b72cdbefa1678dbeacf9a1f8c
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.pom new file mode 100644 index 000000000..d3c136b8c --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.pom @@ -0,0 +1,56 @@ +<?xml version="1.0"?><project> + <parent> + <artifactId>maven-shared-components</artifactId> + <groupId>org.apache.maven.shared</groupId> + <version>4</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-downloader</artifactId> + <name>Maven Downloader</name> + <version>1.0</version> + <description>Provide a super simple interface for downloading a single artifact.</description> + <url>http://maven.apache.org</url> + <scm> + <connection>scm:svn:https://svn.apache.org/repos/asf/maven/shared/tags/maven-downloader-1.0</connection> + <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/shared/tags/maven-downloader-1.0</developerConnection> + <url>https://svn.apache.org/repos/asf/maven/shared/tags/maven-downloader-1.0</url> + </scm> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-maven-plugin</artifactId> + <version>1.1</version> + <executions> + <execution> + <goals> + <goal>descriptor</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + <dependencies> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact-manager</artifactId> + <version>2.0</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact</artifactId> + <version>2.0</version> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + </dependencies> + <distributionManagement> + <status>deployed</status> + </distributionManagement> +</project>
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.pom.md5 new file mode 100644 index 000000000..89e705b79 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.pom.md5 @@ -0,0 +1 @@ +8ab3c303c12323c469be9beb591f3f12
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.pom.sha1 new file mode 100644 index 000000000..1a75091fa --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.0/maven-downloader-1.0.pom.sha1 @@ -0,0 +1 @@ +e4484abb15526e31b8ea514d3ba68e31189c12b0
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-javadoc.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-javadoc.jar Binary files differnew file mode 100644 index 000000000..3114e1ae6 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-javadoc.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-javadoc.jar.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-javadoc.jar.md5 new file mode 100644 index 000000000..3f77b9093 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-javadoc.jar.md5 @@ -0,0 +1 @@ +942c2a52f0e38b1e59b12837905d1f25
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-javadoc.jar.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-javadoc.jar.sha1 new file mode 100644 index 000000000..1b0a186fc --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-javadoc.jar.sha1 @@ -0,0 +1 @@ +738d6a8c195613ee689f0a7b8f0c6f194e909473
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-sources.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-sources.jar Binary files differnew file mode 100644 index 000000000..994054bb4 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-sources.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-sources.jar.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-sources.jar.md5 new file mode 100644 index 000000000..aada2770b --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-sources.jar.md5 @@ -0,0 +1 @@ +c892f8533031750419c77dc87ed35a3b
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-sources.jar.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-sources.jar.sha1 new file mode 100644 index 000000000..37af4fe89 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1-sources.jar.sha1 @@ -0,0 +1 @@ +8aa5027d2688c4540eec9c2b85bbee496f6d4e7c
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.jar Binary files differnew file mode 100644 index 000000000..ae6638b79 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.jar.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.jar.md5 new file mode 100644 index 000000000..f5c14a937 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.jar.md5 @@ -0,0 +1 @@ +b8e59f5b162f8c0f6ef23d8d249cfed8
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.jar.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.jar.sha1 new file mode 100644 index 000000000..1bcc406e0 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.jar.sha1 @@ -0,0 +1 @@ +923bf441d4ab0d80d45e77576dff86e2b22d2ac4
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.pom new file mode 100644 index 000000000..db5fe99e7 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.pom @@ -0,0 +1,56 @@ +<?xml version="1.0"?><project> + <parent> + <artifactId>maven-shared-components</artifactId> + <groupId>org.apache.maven.shared</groupId> + <version>4</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-downloader</artifactId> + <name>Maven Downloader</name> + <version>1.1</version> + <description>Provide a super simple interface for downloading a single artifact.</description> + <url>http://maven.apache.org</url> + <scm> + <connection>scm:svn:https://svn.apache.org/repos/asf/maven/shared/tags/maven-downloader-1.1</connection> + <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/shared/tags/maven-downloader-1.1</developerConnection> + <url>https://svn.apache.org/repos/asf/maven/shared/tags/maven-downloader-1.1</url> + </scm> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-maven-plugin</artifactId> + <version>1.1</version> + <executions> + <execution> + <goals> + <goal>descriptor</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + <dependencies> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact-manager</artifactId> + <version>2.0</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact</artifactId> + <version>2.0</version> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + </dependencies> + <distributionManagement> + <status>deployed</status> + </distributionManagement> +</project>
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.pom.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.pom.md5 new file mode 100644 index 000000000..bffe895ee --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.pom.md5 @@ -0,0 +1 @@ +f4d26363c090391c0b8f5a1c4d5c946a
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.pom.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.pom.sha1 new file mode 100644 index 000000000..fb062b05f --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/1.1/maven-downloader-1.1.pom.sha1 @@ -0,0 +1 @@ +59f81ef23c583f0dd8e7f432ba88595c645e1fc1
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/maven-metadata.xml new file mode 100644 index 000000000..6fbced025 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/maven-metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<metadata> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-downloader</artifactId> + <version>1.0</version> + <versioning> + <release>1.1</release> + <versions> + <version>1.0</version> + <version>1.1</version> + </versions> + <lastUpdated>20061212214311</lastUpdated> + </versioning> +</metadata> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/maven-metadata.xml.md5 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/maven-metadata.xml.md5 new file mode 100644 index 000000000..354ec6c58 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/maven-metadata.xml.md5 @@ -0,0 +1 @@ +f18235bd6072aa77beb7e01f07905e53
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/maven-metadata.xml.sha1 b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/maven-metadata.xml.sha1 new file mode 100644 index 000000000..0ff8edcaf --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/shared/maven-downloader/maven-metadata.xml.sha1 @@ -0,0 +1 @@ +7f87ddac6169d99fa54f29bc9a3f7af5a9c8741f
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/some-ejb/1.0/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/some-ejb/1.0/maven-metadata.xml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/some-ejb/1.0/maven-metadata.xml diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/some-ejb/1.0/some-ejb-1.0-client.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/some-ejb/1.0/some-ejb-1.0-client.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/some-ejb/1.0/some-ejb-1.0-client.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/1.0-SNAPSHOT/test-1.0-20050611.112233-1-javadoc.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/1.0-SNAPSHOT/test-1.0-20050611.112233-1-javadoc.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/1.0-SNAPSHOT/test-1.0-20050611.112233-1-javadoc.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/1.0-SNAPSHOT/test-1.0-20050611.112233-1.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/1.0-SNAPSHOT/test-1.0-20050611.112233-1.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/1.0-SNAPSHOT/test-1.0-20050611.112233-1.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/1.0-SNAPSHOT/wrong-artifactId-1.0-20050611.112233-1.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/1.0-SNAPSHOT/wrong-artifactId-1.0-20050611.112233-1.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/1.0-SNAPSHOT/wrong-artifactId-1.0-20050611.112233-1.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/2.0.4-SNAPSHOT/test-2.0.4-SNAPSHOT.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/2.0.4-SNAPSHOT/test-2.0.4-SNAPSHOT.pom new file mode 100644 index 000000000..ca115b505 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/test/2.0.4-SNAPSHOT/test-2.0.4-SNAPSHOT.pom @@ -0,0 +1,143 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <groupId>org.apache.maven</groupId> + <artifactId>test</artifactId> + <packaging>pom</packaging> + <version> + ${prj.ver.maj}.${prj.ver.min}.${prj.ver.inc}${prj.ver.suf} + </version> + + <name>Test Archiva</name> + <description> + ${pom.name} [version ${pom.version}]. Confluence: + ${kb.confluence.url}/display/${prj.confluence.path} + </description> + + <build> + <extensions> + <extension> + <groupId>org.apache.maven.wagon</groupId> + + <artifactId>wagon-webdav</artifactId> + <version>1.0-beta-2</version> + </extension> + </extensions> + </build> + + <issueManagement> + <system>jira</system> + + <url>${kb.jira.url}/browse/${prj.jira.key}</url> + </issueManagement> + <ciManagement> + <system>hudson</system> + <url> + ${kb.hudson.url}/view/${prj.hudson.view.root} + -=${prj.svn.branch}=-/ + </url> + </ciManagement> + <inceptionYear>2005</inceptionYear> + + <licenses> + <license> + <name>KB Internal License</name> + <distribution>repo</distribution> + <comments>This is internal project of KB.</comments> + </license> + </licenses> + + <organization> + <name>KB, a.s.</name> + <url>http://www.kb.cz/</url> + </organization> + + <properties> + <!-- + - common settings + --> + <kb.svn.url>http://svn-server/renaissance</kb.svn.url> + + <kb.svn.view.url>http://svn-server/renaissance</kb.svn.view.url> + <kb.site.url>http://tools-server/projects</kb.site.url> + <kb.site.dir> + scp://tools-server/home/tools/var/maven-sites + </kb.site.dir> + <kb.jira.url>http://jira-server/jira</kb.jira.url> + <kb.confluence.url> + http://confluence-server/confluence + </kb.confluence.url> + <kb.hudson.url>http://tools-server/hudson</kb.hudson.url> + + <!-- Project configuration --> + <prj.url.root>${pom.groupId}</prj.url.root> + <prj.hudson.view.root>${pom.groupId}</prj.hudson.view.root> + <prj.svn>${kb.svn.url}/${prj.svn.path}</prj.svn> + <prj.svn.tagBase>${prj.svn}/tags</prj.svn.tagBase> + <prj.svn.branch>trunk</prj.svn.branch> + + <prj.java.version>1.5</prj.java.version> + <prj.source.encoding>UTF-8</prj.source.encoding> + + <!-- + - Project specific + --> + <!-- version --> + <prj.ver.maj>2</prj.ver.maj> + <prj.ver.min>0</prj.ver.min> + <prj.ver.inc>4</prj.ver.inc> + <prj.ver.suf>-SNAPSHOT</prj.ver.suf><!-- !!! Increase this value after release. --> + + <!-- paths and identificators in external systems --> + <prj.url.relative> + ${prj.url.root}/${prj.ver.maj}.${prj.ver.min}${prj.ver.suf} + </prj.url.relative> + <prj.svn.path>test/maven-arch/test-arch</prj.svn.path> + <prj.jira.key>TSTARCH</prj.jira.key> + + <prj.confluence.path>TEST/Archiva</prj.confluence.path> + </properties> + + <!-- MRM-731 : variable in url pom are not replaced. --> + <url>http://j.random.server.com/docs/${project.groupId}/${project.artifactId}/${project.version}</url> + + <scm> + <connection>scm:svn:${prj.svn}/${prj.svn.branch}</connection> + <developerConnection> + scm:svn:${prj.svn}/${prj.svn.branch} + </developerConnection> + + <url>${kb.svn.view.url}/${prj.svn.path}/${prj.svn.branch}</url> + </scm> + + <distributionManagement> + <repository> + <id>internal</id> + <name>Internal Release Repository</name> + <url> + dav:http://tools-server/archiva/repository/internal + </url> + + <uniqueVersion>false</uniqueVersion> + </repository> + <snapshotRepository> + <id>snapshots</id> + <name>Internal Snapshot Repository</name> + <url> + dav:http://tools-server/archiva/repository/snapshots + </url> + <uniqueVersion>false</uniqueVersion> + + </snapshotRepository> + <site> + <id>website</id> + <name>Internal Maven Website</name> + <url>${kb.site.dir}/${prj.url.relative}</url> + </site> + </distributionManagement> + +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0-sources.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0-sources.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0-sources.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0-test-sources.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0-test-sources.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0-test-sources.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0.tar.gz b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0.tar.gz new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0.tar.gz diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0.zip b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0.zip new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/testing/1.0/testing-1.0.zip diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-not-updated/1.0/test-not-updated-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-not-updated/1.0/test-not-updated-1.0.jar new file mode 100644 index 000000000..54d190b23 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-not-updated/1.0/test-not-updated-1.0.jar @@ -0,0 +1 @@ +dummy content. sample file only.
diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-not-updated/1.0/test-not-updated-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-not-updated/1.0/test-not-updated-1.0.pom new file mode 100644 index 000000000..452727f28 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-not-updated/1.0/test-not-updated-1.0.pom @@ -0,0 +1,29 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven.update</groupId> + <artifactId>test-not-updated</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <!-- default packaging is jar --> + <!--packaging>jar</packaging--> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-not-updated/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-not-updated/maven-metadata.xml new file mode 100644 index 000000000..bd56a21c1 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-not-updated/maven-metadata.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>org.apache.maven.update</groupId> + <artifactId>test-not-updated</artifactId> +</metadata>
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-updated/1.0/test-updated-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-updated/1.0/test-updated-1.0.jar new file mode 100644 index 000000000..54d190b23 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-updated/1.0/test-updated-1.0.jar @@ -0,0 +1 @@ +dummy content. sample file only.
diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-updated/1.0/test-updated-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-updated/1.0/test-updated-1.0.pom new file mode 100644 index 000000000..edd7b6479 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-updated/1.0/test-updated-1.0.pom @@ -0,0 +1,29 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven.update</groupId> + <artifactId>test-updated</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <!-- default packaging is jar --> + <!--packaging>jar</packaging--> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-updated/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-updated/maven-metadata.xml new file mode 100644 index 000000000..86e063ca8 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/maven/update/test-updated/maven-metadata.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>org.apache.maven.update</groupId> + <artifactId>test-updated</artifactId> +</metadata>
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom index 12538e81a..12538e81a 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/maven-metadata.xml index 8ee18048c..8ee18048c 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/maven-metadata.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/maven-metadata.xml diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/testgroup/discovery/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/testgroup/discovery/maven-metadata.xml index b024ef7ef..b024ef7ef 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/testgroup/discovery/maven-metadata.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/org/apache/testgroup/discovery/maven-metadata.xml diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-api/2.4.4/test-project-api-2.4.4.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-api/2.4.4/test-project-api-2.4.4.pom new file mode 100644 index 000000000..fa0c87e5c --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-api/2.4.4/test-project-api-2.4.4.pom @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>test-project</groupId> + <artifactId>test-project</artifactId> + <version>2.4.4</version> + </parent> + <groupId>test-project</groupId> + <artifactId>test-project-api</artifactId> + <name>Test Project API</name> + + <dependencies> + <dependency> + <groupId>javax.activation</groupId> + <artifactId>activation</artifactId> + </dependency> + <dependency> + <groupId>stax</groupId> + <artifactId>stax-api</artifactId> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <artifactId>maven-source-plugin</artifactId> + <executions> + <execution> + <phase>package</phase> + <goals> + <goal>jar</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-broker-ejb/2.4.4/test-project-broker-ejb-2.4.4.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-broker-ejb/2.4.4/test-project-broker-ejb-2.4.4.pom new file mode 100644 index 000000000..b333a52d2 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-broker-ejb/2.4.4/test-project-broker-ejb-2.4.4.pom @@ -0,0 +1,77 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>test-project</groupId> + <artifactId>test-project-broker-pom</artifactId> + <version>2.4.4</version> + </parent> + <artifactId>test-project-broker-ejb</artifactId> + <name>Test Project Broker EJB</name> + <packaging>ejb</packaging> + + <dependencies> + <dependency> + <groupId>test-project</groupId> + <artifactId>test-project-common</artifactId> + <type>test-jar</type> + <version>${pom.version}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>test-project</groupId> + <artifactId>test-project-common</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>test-project</groupId> + <artifactId>test-project-api</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>commons-httpclient</groupId> + <artifactId>commons-httpclient</artifactId> + </dependency> + <dependency> + <groupId>commons-id</groupId> + <artifactId>commons-id</artifactId> + </dependency> + <dependency> + <groupId>commons-discovery</groupId> + <artifactId>commons-discovery</artifactId> + </dependency> + <dependency> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </dependency> + <dependency> + <groupId>log4j</groupId> + <artifactId>log4j</artifactId> + </dependency> + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring-mock</artifactId> + </dependency> + <dependency> + <groupId>javax.jms</groupId> + <artifactId>jms</artifactId> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + </dependency> + <dependency> + <groupId>javax.activation</groupId> + <artifactId>activation</artifactId> + </dependency> + <dependency> + <groupId>javax.mail</groupId> + <artifactId>mail</artifactId> + </dependency> + <dependency> + <groupId>javax.management</groupId> + <artifactId>jmxri</artifactId> + </dependency> + </dependencies> + +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-broker-pom/2.4.4/test-project-broker-pom-2.4.4.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-broker-pom/2.4.4/test-project-broker-pom-2.4.4.pom new file mode 100644 index 000000000..fd5473630 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-broker-pom/2.4.4/test-project-broker-pom-2.4.4.pom @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>test-project</groupId> + <artifactId>test-project</artifactId> + <version>2.4.4</version> + </parent> + <artifactId>test-project-broker-pom</artifactId> + <name>Test Project Broker POM</name> + <packaging>pom</packaging> + + <modules> + <module>broker-ejb</module> + </modules> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-common/2.4.4/test-project-common-2.4.4.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-common/2.4.4/test-project-common-2.4.4.pom new file mode 100644 index 000000000..d47958b23 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-common/2.4.4/test-project-common-2.4.4.pom @@ -0,0 +1,119 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>test-project</groupId> + <artifactId>test-project</artifactId> + <version>2.4.4</version> + </parent> + <groupId>test-project</groupId> + <artifactId>test-project-common</artifactId> + <name>Test Project Commons</name> + <dependencies> + <dependency> + <groupId>test-project</groupId> + <artifactId>test-project-api</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>commons-id</groupId> + <artifactId>commons-id</artifactId> + </dependency> + <dependency> + <groupId>commons-discovery</groupId> + <artifactId>commons-discovery</artifactId> + </dependency> + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring</artifactId> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + </dependency> + <dependency> + <groupId>commons-collections</groupId> + <artifactId>commons-collections</artifactId> + </dependency> + <dependency> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </dependency> + <dependency> + <groupId>commons-httpclient</groupId> + <artifactId>commons-httpclient</artifactId> + </dependency> + <dependency> + <groupId>log4j</groupId> + <artifactId>log4j</artifactId> + </dependency> + <dependency> + <groupId>stax</groupId> + <artifactId>stax-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.woodstox</groupId> + <artifactId>wstx-asl</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.castor</groupId> + <artifactId>castor</artifactId> + </dependency> + <dependency> + <groupId>xerces</groupId> + <artifactId>xerces</artifactId> + </dependency> + <dependency> + <groupId>javax.activation</groupId> + <artifactId>activation</artifactId> + </dependency> + <dependency> + <groupId>javax.jms</groupId> + <artifactId>jms</artifactId> + </dependency> + <dependency> + <groupId>javax.ejb</groupId> + <artifactId>ejb</artifactId> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + </dependency> + <dependency> + <groupId>javax.mail</groupId> + <artifactId>mail</artifactId> + </dependency> + <dependency> + <groupId>javax.management</groupId> + <artifactId>jmxri</artifactId> + </dependency> + </dependencies> + + + <build> + <plugins> + <plugin> + <artifactId>maven-source-plugin</artifactId> + <executions> + <execution> + <phase>package</phase> + <goals> + <goal>jar</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <artifactId>maven-jar-plugin</artifactId> + <executions> + <execution> + <phase>package</phase> + <goals> + <goal>test-jar</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-endpoint-ejb/2.4.4/test-project-endpoint-ejb-2.4.4.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-endpoint-ejb/2.4.4/test-project-endpoint-ejb-2.4.4.pom new file mode 100644 index 000000000..582f1e5e1 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-endpoint-ejb/2.4.4/test-project-endpoint-ejb-2.4.4.pom @@ -0,0 +1,75 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>test-project</groupId> + <artifactId>test-project-endpoint-pom</artifactId> + <version>2.4.4</version> + </parent> + <groupId>test-project</groupId> + <artifactId>test-project-endpoint-ejb</artifactId> + <name>Test Project Endpoint EJB</name> + <packaging>ejb</packaging> + + <dependencies> + <dependency> + <groupId>test-project</groupId> + <artifactId>test-project-common</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <groupId>test-project</groupId> + <artifactId>test-project-api</artifactId> + <version>${pom.version}</version> + </dependency> + <dependency> + <!-- for tests only --> + <groupId>test-project</groupId> + <artifactId>test-project-common</artifactId> + <version>${pom.version}</version> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> + <groupId>commons-id</groupId> + <artifactId>commons-id</artifactId> + </dependency> + <dependency> + <groupId>commons-discovery</groupId> + <artifactId>commons-discovery</artifactId> + </dependency> + <dependency> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </dependency> + <dependency> + <groupId>log4j</groupId> + <artifactId>log4j</artifactId> + </dependency> + <dependency> + <groupId>javax.jms</groupId> + <artifactId>jms</artifactId> + </dependency> + <dependency> + <groupId>javax.activation</groupId> + <artifactId>activation</artifactId> + </dependency> + <dependency> + <groupId>javax.mail</groupId> + <artifactId>mail</artifactId> + </dependency> + <dependency> + <groupId>xml-apis</groupId> + <artifactId>xml-apis</artifactId> + </dependency> + <dependency> + <groupId>javax.management</groupId> + <artifactId>jmxri</artifactId> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + </dependency> + </dependencies> + +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-endpoint-pom/2.4.4/test-project-endpoint-pom-2.4.4.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-endpoint-pom/2.4.4/test-project-endpoint-pom-2.4.4.pom new file mode 100644 index 000000000..ea4d6372d --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project-endpoint-pom/2.4.4/test-project-endpoint-pom-2.4.4.pom @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>test-project</groupId> + <artifactId>test-project</artifactId> + <version>2.4.4</version> + </parent> + <artifactId>test-project-endpoint-pom</artifactId> + <name>Test Project Endpoint POM</name> + <packaging>pom</packaging> + + <modules> + <module>endpoint-ejb</module> + </modules> +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project/2.4.4/test-project-2.4.4.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project/2.4.4/test-project-2.4.4.pom new file mode 100644 index 000000000..6dc471979 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/default-repository/test-project/test-project/2.4.4/test-project-2.4.4.pom @@ -0,0 +1,161 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project> + <modelVersion>4.0.0</modelVersion> + + <groupId>test-project</groupId> + <artifactId>test-project</artifactId> + <name>Test Project</name> + <version>2.4.4</version> + <packaging>pom</packaging> + + <organization> + <name>Company</name> + <url>http://www.company.com/</url> + </organization> + <inceptionYear>2002</inceptionYear> + + <modules> + <module>api</module> + <module>common</module> + <module>broker</module> + <module>endpoint</module> + </modules> + + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + </dependencies> + <dependencyManagement> + <dependencies> + <!-- common version strategy --> + <dependency> + <groupId>javax.activation</groupId> + <artifactId>activation</artifactId> + <version>1.0.2</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>javax.jms</groupId> + <artifactId>jms</artifactId> + <version>1.0.2</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>javax.ejb</groupId> + <artifactId>ejb</artifactId> + <version>2.0</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + <version>2.4</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>javax.mail</groupId> + <artifactId>mail</artifactId> + <version>1.4</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>xml-apis</groupId> + <artifactId>xml-apis</artifactId> + <version>2.0.2</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + <version>1.0.4</version> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + <version>2.1</version> + </dependency> + <dependency> + <groupId>commons-collections</groupId> + <artifactId>commons-collections</artifactId> + <version>3.2</version> + </dependency> + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring</artifactId> + <version>2.0.7</version> + </dependency> + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring-mock</artifactId> + <version>2.0.7</version> + <scope>test</scope> + <exclusions> + <exclusion> + <groupId>org.springframework</groupId> + <artifactId>spring-jdbc</artifactId> + </exclusion> + <exclusion> + <groupId>org.springframework</groupId> + <artifactId>spring-web</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>log4j</groupId> + <artifactId>log4j</artifactId> + <version>1.2.8</version> + </dependency> + <dependency> + <groupId>commons-discovery</groupId> + <artifactId>commons-discovery</artifactId> + <version>0.2</version> + </dependency> + <dependency> + <groupId>commons-id</groupId> + <artifactId>commons-id</artifactId> + <version>0.1-dev</version> + </dependency> + <dependency> + <groupId>org.codehaus.castor</groupId> + <artifactId>castor</artifactId> + <version>1.0.5-xml</version> + </dependency> + <dependency> + <groupId>xerces</groupId> + <artifactId>xerces</artifactId> + <version>2.4.0</version> + </dependency> + <dependency> + <groupId>commons-httpclient</groupId> + <artifactId>commons-httpclient</artifactId> + <version>3.1</version> + </dependency> + <dependency> + <groupId>stax</groupId> + <artifactId>stax-api</artifactId> + <version>1.0.1</version> + </dependency> + <dependency> + <groupId>org.codehaus.woodstox</groupId> + <artifactId>wstx-asl</artifactId> + <version>3.2.1</version> + </dependency> + <dependency> + <groupId>com.thoughtworks.xstream</groupId> + <artifactId>xstream</artifactId> + <version>1.2.2</version> + </dependency> + <dependency> + <groupId>javax.management</groupId> + <artifactId>jmxri</artifactId> + <version>1.2.1</version> + <scope>provided</scope> + </dependency> + </dependencies> + </dependencyManagement> + +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/CVS/Root b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/CVS/Root new file mode 100644 index 000000000..2e65f24a6 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/CVS/Root @@ -0,0 +1 @@ +not a real CVS root - for testing exclusions diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/KEYS b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/KEYS new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/KEYS diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/foo/invalid-1.0.foo b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/foo/invalid-1.0.foo new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/foo/invalid-1.0.foo diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/invalid-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/invalid-1.0.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/invalid-1.0.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/1.0/invalid-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/1.0/invalid-1.0.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/1.0/invalid-1.0.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/invalid-1.0.rar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/invalid-1.0.rar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/invalid-1.0.rar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/invalid.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/invalid.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/invalid.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/no-extension b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/no-extension new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/invalid/jars/no-extension diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/javax.sql/jars/jdbc-2.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/javax.sql/jars/jdbc-2.0.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/javax.sql/jars/jdbc-2.0.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/maven/poms/wagon-ssh-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/maven/poms/wagon-ssh-1.0.pom new file mode 100644 index 000000000..e6a72b9d6 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/maven/poms/wagon-ssh-1.0.pom @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<project> + <extend>../../project.xml</extend> + <pomVersion>3</pomVersion> + <groupId>maven</groupId> + <id>wagon-ssh</id> + <artifactId>wagon-ssh</artifactId> + <name>Wagon SSH provider</name> + <currentVersion>1.0-SNAPSHOT</currentVersion> + <description></description> + <shortDescription>Wagon Provider for protocols from SSH2 family based on JSCH</shortDescription> + <package>org.apache.maven.wagon.providers.ssh</package> + <inceptionYear>2003</inceptionYear> + <url>http://maven.apache.org/wagon/wagon-providers/ssh</url> + <issueTrackingUrl>http://jira.codehaus.org/BrowseProject.jspa?id=10319</issueTrackingUrl> + <siteDirectory>/www/maven.apache.org/wagon/wagon-providers/ssh</siteDirectory> + <repository> + <connection>scm:cvs:pserver:anoncvs@cvs.apache.org:/home/cvspublic:maven-wagon/wagon-providers/ssh</connection> + <url>http://cvs.apache.org/viewcvs/maven-wagon/wagon-providers/ssh/</url> + </repository> + + <developers> + <developer> + <name>Michal Maczka</name> + <id>michal</id> + <email>michal.maczka@dimatics.com</email> + <organization>Dimatics</organization> + <roles> + <role>Creator</role> + <role>Developer</role> + <role>Release Manager</role> + </roles> + </developer> + </developers> + + <dependencies> + <dependency> + <groupId>maven</groupId> + <artifactId>wagon-api</artifactId> + <version>0.9-SNAPSHOT</version> + <type>jar</type> + </dependency> + <dependency> + <groupId>jsch</groupId> + <artifactId>jsch</artifactId> + <version>0.1.14</version> + <type>jar</type> + </dependency> + </dependencies> + +</project> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven.update/jars/test-not-updated-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven.update/jars/test-not-updated-1.0.jar new file mode 100644 index 000000000..54d190b23 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven.update/jars/test-not-updated-1.0.jar @@ -0,0 +1 @@ +dummy content. sample file only.
diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven.update/jars/test-updated-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven.update/jars/test-updated-1.0.jar new file mode 100644 index 000000000..54d190b23 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven.update/jars/test-updated-1.0.jar @@ -0,0 +1 @@ +dummy content. sample file only.
diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/some-ejb-1.0-client.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/some-ejb-1.0-client.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/some-ejb-1.0-client.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0-20050611.112233-1.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0-20050611.112233-1.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0-20050611.112233-1.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0.tar.gz b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0.tar.gz new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0.tar.gz diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0.zip b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0.zip new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-1.0.zip diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-UNKNOWN.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-UNKNOWN.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/jars/testing-UNKNOWN.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/java-sources/testing-1.0-sources.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/java-sources/testing-1.0-sources.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/java-sources/testing-1.0-sources.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/javadoc.jars/testing-1.0-javadoc.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/javadoc.jars/testing-1.0-javadoc.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/javadoc.jars/testing-1.0-javadoc.jar diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/poms/maven-model-v3-2.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/poms/maven-model-v3-2.0.pom new file mode 100644 index 000000000..509552ef9 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/poms/maven-model-v3-2.0.pom @@ -0,0 +1,15 @@ +<project> + <pomVersion>3</pomVersion> + <groupId>org.apache.maven</groupId> + <artifactId>maven-model-v3</artifactId> + <name>Maven Model v3</name> + <currentVersion>2.0</currentVersion> + <description>Maven Model v3</description> + <dependencies> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + <version>1.0.4</version> + </dependency> + </dependencies> +</project>
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/poms/testing-1.0.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/poms/testing-1.0.pom new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/legacy-repository/org.apache.maven/poms/testing-1.0.pom diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/simple-repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.jar b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/simple-repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.jar Binary files differindex c2ea777c1..c2ea777c1 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/simple-repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.jar +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/simple-repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.jar diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/simple-repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/simple-repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.pom index a987f03ec..a987f03ec 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/simple-repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.pom +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/simple-repository/groupId/artifactId/1.0-alpha-1/artifactId-1.0-alpha-1.pom diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/simple-repository/groupId/artifactId/maven-metadata.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/simple-repository/groupId/artifactId/maven-metadata.xml index 526cc825a..526cc825a 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/simple-repository/groupId/artifactId/maven-metadata.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/simple-repository/groupId/artifactId/maven-metadata.xml diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/simple-repository/groupId/snapshot-artifact/1.0-alpha-1-SNAPSHOT/snapshot-artifact-1.0-alpha-1-20050611.202024-1.pom b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/simple-repository/groupId/snapshot-artifact/1.0-alpha-1-SNAPSHOT/snapshot-artifact-1.0-alpha-1-20050611.202024-1.pom index cf613e847..cf613e847 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/repositories/simple-repository/groupId/snapshot-artifact/1.0-alpha-1-SNAPSHOT/snapshot-artifact-1.0-alpha-1-20050611.202024-1.pom +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/repositories/simple-repository/groupId/snapshot-artifact/1.0-alpha-1-SNAPSHOT/snapshot-artifact-1.0-alpha-1-20050611.202024-1.pom diff --git a/archiva-modules/archiva-base/archiva-repository-layer/src/test/resources/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumersTest.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/resources/org/apache/archiva/repository/scanner/RepositoryContentConsumersTest.xml index 57256f87d..12e7a4b25 100644 --- a/archiva-modules/archiva-base/archiva-repository-layer/src/test/resources/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumersTest.xml +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/resources/org/apache/archiva/repository/scanner/RepositoryContentConsumersTest.xml @@ -55,7 +55,7 @@ <component> <role>org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer</role> <role-hint>update-db-artifact</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.SampleKnownConsumer</implementation> + <implementation>org.apache.archiva.repository.scanner.SampleKnownConsumer</implementation> <configuration> <id>update-db-artifact</id> </configuration> @@ -63,7 +63,7 @@ <component> <role>org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer</role> <role-hint>create-missing-checksums</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.SampleKnownConsumer</implementation> + <implementation>org.apache.archiva.repository.scanner.SampleKnownConsumer</implementation> <configuration> <id>create-missing-checksums</id> </configuration> @@ -71,7 +71,7 @@ <component> <role>org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer</role> <role-hint>update-db-repository-metadata</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.SampleKnownConsumer</implementation> + <implementation>org.apache.archiva.repository.scanner.SampleKnownConsumer</implementation> <configuration> <id>update-db-repository-metadata</id> </configuration> @@ -79,7 +79,7 @@ <component> <role>org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer</role> <role-hint>validate-checksum</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.SampleKnownConsumer</implementation> + <implementation>org.apache.archiva.repository.scanner.SampleKnownConsumer</implementation> <configuration> <id>validate-checksum</id> </configuration> @@ -87,7 +87,7 @@ <component> <role>org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer</role> <role-hint>index-content</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.SampleKnownConsumer</implementation> + <implementation>org.apache.archiva.repository.scanner.SampleKnownConsumer</implementation> <configuration> <id>index-content</id> </configuration> @@ -95,7 +95,7 @@ <component> <role>org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer</role> <role-hint>auto-remove</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.SampleKnownConsumer</implementation> + <implementation>org.apache.archiva.repository.scanner.SampleKnownConsumer</implementation> <configuration> <id>auto-remove</id> </configuration> @@ -103,7 +103,7 @@ <component> <role>org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer</role> <role-hint>auto-rename</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.SampleKnownConsumer</implementation> + <implementation>org.apache.archiva.repository.scanner.SampleKnownConsumer</implementation> <configuration> <id>auto-rename</id> </configuration> @@ -111,7 +111,7 @@ <component> <role>org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer</role> <role-hint>available-but-unselected</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.SampleKnownConsumer</implementation> + <implementation>org.apache.archiva.repository.scanner.SampleKnownConsumer</implementation> <configuration> <id>available-but-unselected</id> </configuration> @@ -121,7 +121,7 @@ <component> <role>org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer</role> <role-hint>update-db-bad-content</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.InvalidScanConsumer</implementation> + <implementation>org.apache.archiva.repository.scanner.InvalidScanConsumer</implementation> <configuration> <id>update-db-bad-content</id> </configuration> @@ -129,15 +129,15 @@ <component> <role>org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer</role> <role-hint>move-to-trash-then-notify</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.InvalidScanConsumer</implementation> + <implementation>org.apache.archiva.repository.scanner.InvalidScanConsumer</implementation> <configuration> <id>move-to-trash-then-notify</id> </configuration> </component> <component> - <role>org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers</role> + <role>org.apache.archiva.repository.scanner.RepositoryContentConsumers</role> <role-hint>test</role-hint> - <implementation>org.apache.maven.archiva.repository.scanner.RepositoryContentConsumersStub</implementation> + <implementation>org.apache.archiva.repository.scanner.RepositoryContentConsumersStub</implementation> </component> </components> diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/test/resources/scanner-archiva.xml b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/resources/scanner-archiva.xml new file mode 100644 index 000000000..13a884e14 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/test/resources/scanner-archiva.xml @@ -0,0 +1,109 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<configuration> + + <repositoryScanning> + <fileTypes> + <fileType> + <id>artifacts</id> + <patterns> + <pattern>**/*.pom</pattern> + <pattern>**/*.jar</pattern> + <pattern>**/*.ear</pattern> + <pattern>**/*.war</pattern> + <pattern>**/*.car</pattern> + <pattern>**/*.sar</pattern> + <pattern>**/*.mar</pattern> + <pattern>**/*.rar</pattern> + <pattern>**/*.dtd</pattern> + <pattern>**/*.tld</pattern> + <pattern>**/*.tar.gz</pattern> + <pattern>**/*.tar.bz2</pattern> + <pattern>**/*.zip</pattern> + </patterns> + </fileType> + <fileType> + <id>indexable-content</id> + <patterns> + <pattern>**/*.txt</pattern> + <pattern>**/*.TXT</pattern> + <pattern>**/*.block</pattern> + <pattern>**/*.config</pattern> + <pattern>**/*.pom</pattern> + <pattern>**/*.xml</pattern> + <pattern>**/*.xsd</pattern> + <pattern>**/*.dtd</pattern> + <pattern>**/*.tld</pattern> + </patterns> + </fileType> + <fileType> + <id>auto-remove</id> + <patterns> + <pattern>**/*.bak</pattern> + <pattern>**/*~</pattern> + <pattern>**/*-</pattern> + </patterns> + </fileType> + <fileType> + <id>ignored</id> + <patterns> + <pattern>**/.htaccess</pattern> + <pattern>**/KEYS</pattern> + <pattern>**/*.rb</pattern> + <pattern>**/*.sh</pattern> + <pattern>**/.svn/**</pattern> + <pattern>**/.DAV/**</pattern> + </patterns> + </fileType> + </fileTypes> + <knownContentConsumers> + <knownContentConsumer>update-db-artifact</knownContentConsumer> + <knownContentConsumer>create-missing-checksums</knownContentConsumer> + <knownContentConsumer>update-db-repository-metadata</knownContentConsumer> + <knownContentConsumer>validate-checksum</knownContentConsumer> + <knownContentConsumer>validate-signature</knownContentConsumer> + <knownContentConsumer>index-content</knownContentConsumer> + <knownContentConsumer>auto-remove</knownContentConsumer> + <knownContentConsumer>auto-rename</knownContentConsumer> + </knownContentConsumers> + <invalidContentConsumers> + <invalidContentConsumer>update-db-bad-content</invalidContentConsumer> + </invalidContentConsumers> + </repositoryScanning> + + <databaseScanning> + <cronExpression>0 0 * * * ?</cronExpression> + <unprocessedConsumers> + <unprocessedConsumer>index-artifact</unprocessedConsumer> + <unprocessedConsumer>update-db-project</unprocessedConsumer> + <unprocessedConsumer>validate-repository-metadata</unprocessedConsumer> + <unprocessedConsumer>index-archive-toc</unprocessedConsumer> + <unprocessedConsumer>update-db-bytecode-stats</unprocessedConsumer> + <unprocessedConsumer>index-public-methods</unprocessedConsumer> + </unprocessedConsumers> + <cleanupConsumers> + <cleanupConsumer>not-present-remove-db-artifact</cleanupConsumer> + <cleanupConsumer>not-present-remove-db-project</cleanupConsumer> + <cleanupConsumer>not-present-remove-indexed</cleanupConsumer> + </cleanupConsumers> + </databaseScanning> + +</configuration> diff --git a/archiva-modules/archiva-base/archiva-transaction/pom.xml b/archiva-modules/archiva-base/archiva-transaction/pom.xml index bdac3e8f4..a3a534604 100644 --- a/archiva-modules/archiva-base/archiva-transaction/pom.xml +++ b/archiva-modules/archiva-base/archiva-transaction/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-transaction</artifactId> <name>Archiva Transactions</name> diff --git a/archiva-modules/archiva-base/archiva-xml-tools/pom.xml b/archiva-modules/archiva-base/archiva-xml-tools/pom.xml index cdd157ef3..0ef72ddcb 100644 --- a/archiva-modules/archiva-base/archiva-xml-tools/pom.xml +++ b/archiva-modules/archiva-base/archiva-xml-tools/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-base</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-xml-tools</artifactId> diff --git a/archiva-modules/archiva-base/pom.xml b/archiva-modules/archiva-base/pom.xml index 7118b34ea..8ce9aa872 100644 --- a/archiva-modules/archiva-base/pom.xml +++ b/archiva-modules/archiva-base/pom.xml @@ -1,18 +1,21 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - ~ Copyright 2005-2006 The Apache Software Foundation. + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at ~ - ~ Licensed under the Apache License, Version 2.0 (the "License"); - ~ you may not use this file except in compliance with the License. - ~ You may obtain a copy of the License at + ~ http://www.apache.org/licenses/LICENSE-2.0 ~ - ~ http://www.apache.org/licenses/LICENSE-2.0 - ~ - ~ Unless required by applicable law or agreed to in writing, software - ~ distributed under the License is distributed on an "AS IS" BASIS, - ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ~ See the License for the specific language governing permissions and - ~ limitations under the License. + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. --> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> @@ -20,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-modules</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-base</artifactId> @@ -42,5 +45,6 @@ <module>archiva-transaction</module> <module>archiva-artifact-converter</module> <module>archiva-converter</module> + <module>archiva-repository-scanner</module> </modules> </project> diff --git a/archiva-modules/archiva-database/pom.xml b/archiva-modules/archiva-database/pom.xml index 9a75add1c..8f4ed0a27 100755 --- a/archiva-modules/archiva-database/pom.xml +++ b/archiva-modules/archiva-database/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-modules</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-database</artifactId> diff --git a/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/RepositoryDatabaseEventListener.java b/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/RepositoryDatabaseEventListener.java index bb2cb044f..c18f587b2 100644 --- a/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/RepositoryDatabaseEventListener.java +++ b/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/RepositoryDatabaseEventListener.java @@ -19,9 +19,15 @@ package org.apache.maven.archiva.database; * under the License. */ +import java.util.List; + +import org.apache.maven.archiva.database.constraints.RepositoryProblemByArtifactConstraint; import org.apache.maven.archiva.model.ArchivaArtifact; +import org.apache.maven.archiva.model.ArchivaProjectModel; +import org.apache.maven.archiva.model.RepositoryProblem; import org.apache.maven.archiva.repository.ManagedRepositoryContent; import org.apache.maven.archiva.repository.events.RepositoryListener; +import org.codehaus.plexus.cache.Cache; /** * Process repository management events and respond appropriately. @@ -36,6 +42,21 @@ public class RepositoryDatabaseEventListener */ private ArtifactDAO artifactDAO; + /** + * @plexus.requirement role-hint="jdo" + */ + private RepositoryProblemDAO repositoryProblemDAO; + + /** + * @plexus.requirement role-hint="jdo" + */ + private ProjectModelDAO projectModelDAO; + + /** + * @plexus.requirement role-hint="effective-project-cache" + */ + private Cache effectiveProjectCache; + public void deleteArtifact( ManagedRepositoryContent repository, ArchivaArtifact artifact ) { try @@ -49,5 +70,62 @@ public class RepositoryDatabaseEventListener { // ignored } + + try + { + // Remove all repository problems related to this artifact + Constraint artifactConstraint = new RepositoryProblemByArtifactConstraint( artifact ); + List<RepositoryProblem> repositoryProblems = + repositoryProblemDAO.queryRepositoryProblems( artifactConstraint ); + + if ( repositoryProblems != null ) + { + for ( RepositoryProblem repositoryProblem : repositoryProblems ) + { + repositoryProblemDAO.deleteRepositoryProblem( repositoryProblem ); + } + } + } + catch ( ArchivaDatabaseException e ) + { + // ignored + } + + if ( "pom".equals( artifact.getType() ) ) + { + try + { + ArchivaProjectModel projectModel = + projectModelDAO.getProjectModel( artifact.getGroupId(), artifact.getArtifactId(), + artifact.getVersion() ); + + projectModelDAO.deleteProjectModel( projectModel ); + + // Force removal of project model from effective cache + String projectKey = toProjectKey( projectModel ); + synchronized ( effectiveProjectCache ) + { + if ( effectiveProjectCache.hasKey( projectKey ) ) + { + effectiveProjectCache.remove( projectKey ); + } + } + } + catch ( ArchivaDatabaseException e ) + { + // ignored + } + } + } + + private String toProjectKey( ArchivaProjectModel project ) + { + StringBuilder key = new StringBuilder(); + + key.append( project.getGroupId() ).append( ":" ); + key.append( project.getArtifactId() ).append( ":" ); + key.append( project.getVersion() ); + + return key.toString(); } } diff --git a/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/DatabaseConsumers.java b/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/DatabaseConsumers.java index af6d12b97..ed0fad974 100644 --- a/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/DatabaseConsumers.java +++ b/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/DatabaseConsumers.java @@ -28,9 +28,7 @@ import org.apache.commons.collections.functors.OrPredicate; import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.DatabaseScanningConfiguration; import org.apache.maven.archiva.consumers.functors.PermanentConsumerPredicate; -import org.apache.maven.archiva.model.ArchivaArtifact; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; +import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException; import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; @@ -42,13 +40,9 @@ import org.springframework.context.ApplicationContextAware; */ public class DatabaseConsumers implements ApplicationContextAware -{ - private Logger log = LoggerFactory.getLogger( DatabaseConsumers.class ); - +{ private ArchivaConfiguration archivaConfiguration; - private Predicate selectedCleanupConsumers; - private Predicate selectedUnprocessedConsumers; private ApplicationContext applicationContext; @@ -59,7 +53,6 @@ public class DatabaseConsumers Predicate permanentConsumers = new PermanentConsumerPredicate(); - selectedCleanupConsumers = new OrPredicate( permanentConsumers, new SelectedCleanupConsumersPredicate() ); selectedUnprocessedConsumers = new OrPredicate( permanentConsumers, new SelectedUnprocessedConsumersPredicate() ); } @@ -82,25 +75,14 @@ public class DatabaseConsumers } } - class SelectedCleanupConsumersPredicate - implements Predicate + public void initialize() + throws InitializationException { - public boolean evaluate( Object object ) - { - boolean satisfies = false; - - if ( object instanceof DatabaseCleanupConsumer ) - { - DatabaseCleanupConsumer consumer = (DatabaseCleanupConsumer) object; - DatabaseScanningConfiguration config = archivaConfiguration.getConfiguration().getDatabaseScanning(); - - return config.getCleanupConsumers().contains( consumer.getId() ); - } + Predicate permanentConsumers = new PermanentConsumerPredicate(); - return satisfies; - } + selectedUnprocessedConsumers = new OrPredicate( permanentConsumers, new SelectedUnprocessedConsumersPredicate() ); } - + public void setApplicationContext( ApplicationContext applicationContext ) throws BeansException { @@ -122,20 +104,6 @@ public class DatabaseConsumers } /** - * Get the {@link List} of {@link DatabaseCleanupConsumer} objects for those - * consumers selected due to the configuration. - * - * @return the list of selected {@link DatabaseCleanupConsumer} objects. - */ - @SuppressWarnings("unchecked") - public List<ArchivaArtifactConsumer> getSelectedCleanupConsumers() - { - List<ArchivaArtifactConsumer> ret = new ArrayList<ArchivaArtifactConsumer>(); - ret.addAll( CollectionUtils.select( getAvailableCleanupConsumers(), selectedCleanupConsumers ) ); - return ret; - } - - /** * Get the complete {@link List} of {@link DatabaseUnprocessedArtifactConsumer} objects * that are available in the system, regardless of configuration. * @@ -146,46 +114,4 @@ public class DatabaseConsumers { return new ArrayList<DatabaseUnprocessedArtifactConsumer>( applicationContext.getBeansOfType( DatabaseUnprocessedArtifactConsumer.class ).values() ); } - - /** - * Get the complete {@link List} of {@link DatabaseCleanupConsumer} objects - * that are available in the system, regardless of configuration. - * - * @return the list of all available {@link DatabaseCleanupConsumer} objects. - */ - @SuppressWarnings("unchecked") - public List<DatabaseCleanupConsumer> getAvailableCleanupConsumers() - { - return new ArrayList<DatabaseCleanupConsumer>( applicationContext.getBeansOfType( DatabaseCleanupConsumer.class ).values() ); - } - - /** - * Execute the cleanup consumers to cleanup the specified artifact from the database and index. - * - * @param artifact - */ - public void executeCleanupConsumer( ArchivaArtifact artifact ) - { - List<ArchivaArtifactConsumer> consumers = getSelectedCleanupConsumers(); - for ( ArchivaArtifactConsumer consumer : consumers ) - { - consumer.beginScan(); - } - - if ( CollectionUtils.isEmpty( consumers ) ) - { - log.warn( "There are no selected consumers for artifact cleanup." ); - return; - } - - ProcessArchivaArtifactClosure processArtifactClosure = new ProcessArchivaArtifactClosure(); - processArtifactClosure.setArtifact( artifact ); - - CollectionUtils.forAllDo( consumers, processArtifactClosure ); - - for ( ArchivaArtifactConsumer consumer : consumers ) - { - consumer.completeScan(); - } - } } diff --git a/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/DatabaseUpdater.java b/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/DatabaseUpdater.java index 58287e9fa..b6e5b0fba 100644 --- a/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/DatabaseUpdater.java +++ b/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/DatabaseUpdater.java @@ -30,15 +30,6 @@ import org.apache.maven.archiva.model.ArchivaArtifact; public interface DatabaseUpdater { /** - * Execute the {@link #updateAllUnprocessed()} and {@link #updateAllProcessed()} - * tasks in one go. - * - * @throws ArchivaDatabaseException - */ - public void update() - throws ArchivaDatabaseException; - - /** * Update all unprocessed content. * * @throws ArchivaDatabaseException if there was a fatal error with the database. @@ -53,26 +44,4 @@ public interface DatabaseUpdater */ public void updateUnprocessed( ArchivaArtifact artifact ) throws ArchivaDatabaseException; - - /** - * Update all previously processed content. - * - * This is done to allow archiva to remove content from the database that - * may have been removed from the filesystem too. - * - * @throws ArchivaDatabaseException if there was a fatal error with the database. - */ - public void updateAllProcessed() - throws ArchivaDatabaseException; - - /** - * Update specific processed content. - * - * Example: This is done to allow a specific artifact to be removed from the - * database if it no longer exists on the filesystem. - * - * @throws ArchivaDatabaseException if there was a fatal error with the database. - */ - public void updateProcessed( ArchivaArtifact artifact ) - throws ArchivaDatabaseException; } diff --git a/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/JdoDatabaseUpdater.java b/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/JdoDatabaseUpdater.java index 613c40349..cde8fc8af 100644 --- a/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/JdoDatabaseUpdater.java +++ b/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/JdoDatabaseUpdater.java @@ -26,7 +26,6 @@ import java.util.List; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.IteratorUtils; import org.apache.commons.collections.Predicate; -import org.apache.commons.collections.functors.NotPredicate; import org.apache.maven.archiva.database.ArchivaDAO; import org.apache.maven.archiva.database.ArchivaDatabaseException; import org.apache.maven.archiva.database.constraints.ArtifactsProcessedConstraint; @@ -60,14 +59,6 @@ public class JdoDatabaseUpdater private ProcessArchivaArtifactClosure processArtifactClosure = new ProcessArchivaArtifactClosure(); - public void update() - throws ArchivaDatabaseException - { - updateAllUnprocessed(); - updateAllProcessed(); - } - - @SuppressWarnings("unchecked") public void updateAllUnprocessed() throws ArchivaDatabaseException { @@ -93,32 +84,6 @@ public class JdoDatabaseUpdater } } - @SuppressWarnings("unchecked") - public void updateAllProcessed() - throws ArchivaDatabaseException - { - List<ArchivaArtifact> processedArtifacts = dao.getArtifactDAO().queryArtifacts( new ArtifactsProcessedConstraint( true ) ); - - beginConsumerLifecycle( dbConsumers.getSelectedCleanupConsumers() ); - - try - { - // Process each consumer. - Predicate predicate = NotPredicate.getInstance( UnprocessedArtifactPredicate.getInstance() ); - - Iterator<ArchivaArtifact> it = IteratorUtils.filteredIterator( processedArtifacts.iterator(), predicate ); - while ( it.hasNext() ) - { - ArchivaArtifact artifact = it.next(); - updateProcessed( artifact ); - } - } - finally - { - endConsumerLifecycle( dbConsumers.getSelectedCleanupConsumers() ); - } - } - private void endConsumerLifecycle( List<ArchivaArtifactConsumer> consumers ) { for ( ArchivaArtifactConsumer consumer : consumers ) @@ -152,19 +117,4 @@ public class JdoDatabaseUpdater artifact.getModel().setWhenProcessed( new Date() ); dao.getArtifactDAO().saveArtifact( artifact ); } - - public void updateProcessed( ArchivaArtifact artifact ) - throws ArchivaDatabaseException - { - List<ArchivaArtifactConsumer> consumers = dbConsumers.getSelectedCleanupConsumers(); - - if ( CollectionUtils.isEmpty( consumers ) ) - { - log.warn( "There are no selected consumers for artifact cleanup." ); - return; - } - - this.processArtifactClosure.setArtifact( artifact ); - CollectionUtils.forAllDo( consumers, this.processArtifactClosure ); - } } diff --git a/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/AbstractArchivaDatabaseTestCase.java b/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/AbstractArchivaDatabaseTestCase.java index 6a3aaa8d4..3a8865b73 100644 --- a/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/AbstractArchivaDatabaseTestCase.java +++ b/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/AbstractArchivaDatabaseTestCase.java @@ -25,14 +25,11 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.Map; import java.util.Properties; - import javax.jdo.PersistenceManager; import javax.jdo.PersistenceManagerFactory; import org.apache.commons.lang.StringUtils; -import org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer; import org.apache.maven.archiva.database.updater.DatabaseUnprocessedArtifactConsumer; -import org.apache.maven.archiva.database.updater.TestDatabaseCleanupConsumer; import org.apache.maven.archiva.database.updater.TestDatabaseUnprocessedConsumer; import org.apache.maven.archiva.model.ArtifactReference; import org.apache.maven.archiva.model.VersionedReference; @@ -131,15 +128,6 @@ public abstract class AbstractArchivaDatabaseTestCase this.dao = (ArchivaDAO) lookup( ArchivaDAO.class.getName(), "jdo" ); } - protected TestDatabaseCleanupConsumer lookupTestCleanupConsumer() - throws Exception - { - TestDatabaseCleanupConsumer consumer = (TestDatabaseCleanupConsumer) lookup( DatabaseCleanupConsumer.class, - "test-db-cleanup" ); - assertNotNull( "Test Database Cleanup Consumer should not be null.", consumer ); - return consumer; - } - protected TestDatabaseUnprocessedConsumer lookupTestUnprocessedConsumer() throws Exception { diff --git a/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/RepositoryDatabaseEventListenerTest.java b/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/RepositoryDatabaseEventListenerTest.java index b5c09d87d..eaf1351c8 100644 --- a/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/RepositoryDatabaseEventListenerTest.java +++ b/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/RepositoryDatabaseEventListenerTest.java @@ -53,10 +53,10 @@ public class RepositoryDatabaseEventListenerTest assertEquals( listener, listeners.get( 0 ) ); } - public ArchivaArtifact createArtifact( String artifactId, String version, ArtifactDAO artifactDao ) + public ArchivaArtifact createArtifact( String artifactId, String version, ArtifactDAO artifactDao, String type ) { ArchivaArtifact artifact = - artifactDao.createArtifact( "org.apache.maven.archiva.test", artifactId, version, "", "jar", "testable_repo" ); + artifactDao.createArtifact( "org.apache.maven.archiva.test", artifactId, version, "", type, "testable_repo" ); artifact.getModel().setLastModified( new Date() ); artifact.getModel().setRepositoryId( "testable_repo" ); return artifact; @@ -67,21 +67,22 @@ public class RepositoryDatabaseEventListenerTest { ArtifactDAO artifactDao = (ArtifactDAO) lookup( ArtifactDAO.class.getName(), "jdo" ); - // Setup artifacts in fresh DB. - ArchivaArtifact artifact = createArtifact( "test-artifact", "1.0", artifactDao ); - artifactDao.saveArtifact( artifact ); + ArchivaArtifact pomArtifact = createPom( artifactDao ); + ArchivaArtifact jarArtifact = createJar( artifactDao ); - assertEquals( artifact, artifactDao.getArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", null, - "jar", "testable_repo" ) ); + assertEquals( pomArtifact, artifactDao.getArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", + null, "pom", "testable_repo" ) ); + assertEquals( jarArtifact, artifactDao.getArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", + null, "jar", "testable_repo" ) ); - artifact = new ArchivaArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", null, "jar", "testable_repo" ); + jarArtifact = new ArchivaArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", null, "jar", "testable_repo" ); ManagedRepositoryContent repository = (ManagedRepositoryContent) lookup( ManagedRepositoryContent.class.getName(), "default" ); ManagedRepositoryConfiguration configuration = new ManagedRepositoryConfiguration(); configuration.setId("testable_repo"); repository.setRepository(configuration); - listener.deleteArtifact( repository, artifact ); + listener.deleteArtifact( repository, jarArtifact ); try { @@ -92,5 +93,59 @@ public class RepositoryDatabaseEventListenerTest { assertTrue( true ); } + + assertEquals( pomArtifact, artifactDao.getArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", + null, "pom", "testable_repo" ) ); + } + + private ArchivaArtifact createJar( ArtifactDAO artifactDao ) + throws ArchivaDatabaseException + { + ArchivaArtifact artifact = createArtifact( "test-artifact", "1.0", artifactDao, "jar" ); + artifactDao.saveArtifact( artifact ); + return artifact; + } + + public void testDeletePomArtifact() + throws Exception + { + ArtifactDAO artifactDao = (ArtifactDAO) lookup( ArtifactDAO.class.getName(), "jdo" ); + + ArchivaArtifact pomArtifact = createPom( artifactDao ); + ArchivaArtifact jarArtifact = createJar( artifactDao ); + + assertEquals( pomArtifact, artifactDao.getArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", + null, "pom", "testable_repo" ) ); + assertEquals( jarArtifact, artifactDao.getArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", + null, "jar", "testable_repo" ) ); + + pomArtifact = new ArchivaArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", null, "pom", "testable_repo" ); + ManagedRepositoryContent repository = + (ManagedRepositoryContent) lookup( ManagedRepositoryContent.class.getName(), "default" ); + ManagedRepositoryConfiguration configuration = new ManagedRepositoryConfiguration(); + configuration.setId("testable_repo"); + repository.setRepository(configuration); + listener.deleteArtifact( repository, pomArtifact ); + + try + { + artifactDao.getArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", null, "pom", "testable_repo" ); + fail( "Should not find artifact" ); + } + catch ( ObjectNotFoundException e ) + { + assertTrue( true ); + } + + assertEquals( jarArtifact, artifactDao.getArtifact( "org.apache.maven.archiva.test", "test-artifact", "1.0", + null, "jar", "testable_repo" ) ); + } + + private ArchivaArtifact createPom( ArtifactDAO artifactDao ) + throws ArchivaDatabaseException + { + ArchivaArtifact artifact = createArtifact( "test-artifact", "1.0", artifactDao, "pom" ); + artifactDao.saveArtifact( artifact ); + return artifact; } } diff --git a/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/updater/DatabaseConsumersTest.java b/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/updater/DatabaseConsumersTest.java index b66fb4cc3..c62f112f4 100644 --- a/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/updater/DatabaseConsumersTest.java +++ b/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/updater/DatabaseConsumersTest.java @@ -19,11 +19,11 @@ package org.apache.maven.archiva.database.updater; * under the License. */ +import java.util.List; + import org.apache.commons.collections.CollectionUtils; import org.codehaus.plexus.spring.PlexusInSpringTestCase; -import java.util.List; - /** * DatabaseConsumersTest * @@ -40,16 +40,6 @@ public class DatabaseConsumersTest return dbconsumers; } - public void testGetAvailableCleanupConsumers() - throws Exception - { - DatabaseConsumers dbconsumers = lookupDbConsumers(); - List<DatabaseCleanupConsumer> available = dbconsumers.getAvailableCleanupConsumers(); - assertNotNull( "Available Cleanup Consumers should never be null.", available ); - - assertTrue( "Available Cleanup Consumers should have entries.", CollectionUtils.isNotEmpty( available ) ); - } - public void testGetAvailableUnprocessedConsumers() throws Exception { @@ -60,16 +50,6 @@ public class DatabaseConsumersTest assertTrue( "Available Unprocessed Consumers should have entries.", CollectionUtils.isNotEmpty( available ) ); } - public void testGetSelectedCleanupConsumers() - throws Exception - { - DatabaseConsumers dbconsumers = lookupDbConsumers(); - List<ArchivaArtifactConsumer> available = dbconsumers.getSelectedCleanupConsumers(); - assertNotNull( "Selected Cleanup Consumers should never be null.", available ); - - assertTrue( "Selected Cleanup Consumers should have entries.", CollectionUtils.isNotEmpty( available ) ); - } - public void testGetSelectedUnprocessedConsumers() throws Exception { diff --git a/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/updater/TestDatabaseCleanupConsumer.java b/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/updater/TestDatabaseCleanupConsumer.java deleted file mode 100644 index 4cc47a0df..000000000 --- a/archiva-modules/archiva-database/src/test/java/org/apache/maven/archiva/database/updater/TestDatabaseCleanupConsumer.java +++ /dev/null @@ -1,98 +0,0 @@ -package org.apache.maven.archiva.database.updater; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; -import org.apache.maven.archiva.consumers.ConsumerException; -import org.apache.maven.archiva.model.ArchivaArtifact; - -import java.util.List; - -/** - * TestDatabaseCleanupConsumer - * - * @version $Id$ - */ -public class TestDatabaseCleanupConsumer - extends AbstractMonitoredConsumer - implements DatabaseCleanupConsumer -{ - private int countBegin = 0; - private int countComplete = 0; - private int countProcessed = 0; - - public void resetCount() - { - countBegin = 0; - countProcessed = 0; - countComplete = 0; - } - - public void beginScan() - { - countBegin++; - } - - public void completeScan() - { - countComplete++; - } - - public List<String> getIncludedTypes() - { - return null; - } - - public void processArchivaArtifact( ArchivaArtifact artifact ) - throws ConsumerException - { - countProcessed++; - } - - public String getDescription() - { - return "Test Consumer for Database Cleanup"; - } - - public String getId() - { - return "test-db-cleanup"; - } - - public boolean isPermanent() - { - return false; - } - - public int getCountBegin() - { - return countBegin; - } - - public int getCountComplete() - { - return countComplete; - } - - public int getCountProcessed() - { - return countProcessed; - } -} diff --git a/archiva-modules/archiva-database/src/test/resources/META-INF/plexus/components.xml b/archiva-modules/archiva-database/src/test/resources/META-INF/plexus/components.xml index a9589f71b..4783e9e1f 100644 --- a/archiva-modules/archiva-database/src/test/resources/META-INF/plexus/components.xml +++ b/archiva-modules/archiva-database/src/test/resources/META-INF/plexus/components.xml @@ -16,12 +16,6 @@ </component> <component> - <role>org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer</role> - <role-hint>test-db-cleanup</role-hint> - <implementation>org.apache.maven.archiva.database.updater.TestDatabaseCleanupConsumer</implementation> - </component> - - <component> <role>org.apache.maven.archiva.database.updater.DatabaseUnprocessedArtifactConsumer</role> <role-hint>test-db-unprocessed</role-hint> <implementation>org.apache.maven.archiva.database.updater.TestDatabaseUnprocessedConsumer</implementation> diff --git a/archiva-modules/archiva-reporting/archiva-artifact-reports/pom.xml b/archiva-modules/archiva-reporting/archiva-artifact-reports/pom.xml index 074c748c6..bc804e39c 100755 --- a/archiva-modules/archiva-reporting/archiva-artifact-reports/pom.xml +++ b/archiva-modules/archiva-reporting/archiva-artifact-reports/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-reporting</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-artifact-reports</artifactId> diff --git a/archiva-modules/archiva-reporting/archiva-metadata-reports/pom.xml b/archiva-modules/archiva-reporting/archiva-metadata-reports/pom.xml index 9d064785d..18614a27a 100755 --- a/archiva-modules/archiva-reporting/archiva-metadata-reports/pom.xml +++ b/archiva-modules/archiva-reporting/archiva-metadata-reports/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-reporting</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-metadata-reports</artifactId> diff --git a/archiva-modules/archiva-reporting/archiva-project-reports/pom.xml b/archiva-modules/archiva-reporting/archiva-project-reports/pom.xml index e0a814110..3b79d4b54 100755 --- a/archiva-modules/archiva-reporting/archiva-project-reports/pom.xml +++ b/archiva-modules/archiva-reporting/archiva-project-reports/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-reporting</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-project-reports</artifactId> diff --git a/archiva-modules/archiva-reporting/archiva-report-manager/pom.xml b/archiva-modules/archiva-reporting/archiva-report-manager/pom.xml index 839097f12..aac29f23e 100755 --- a/archiva-modules/archiva-reporting/archiva-report-manager/pom.xml +++ b/archiva-modules/archiva-reporting/archiva-report-manager/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-reporting</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-report-manager</artifactId> diff --git a/archiva-modules/archiva-reporting/pom.xml b/archiva-modules/archiva-reporting/pom.xml index 1ccb966a2..5ef3e9cad 100644 --- a/archiva-modules/archiva-reporting/pom.xml +++ b/archiva-modules/archiva-reporting/pom.xml @@ -20,7 +20,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-modules</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-reporting</artifactId> diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/ArchivaTaskScheduler.java b/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/ArchivaTaskScheduler.java deleted file mode 100644 index 444a7b1d2..000000000 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/ArchivaTaskScheduler.java +++ /dev/null @@ -1,94 +0,0 @@ -package org.apache.maven.archiva.scheduled; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import org.apache.maven.archiva.common.ArchivaException; -import org.apache.maven.archiva.scheduled.tasks.ArtifactIndexingTask; -import org.apache.maven.archiva.scheduled.tasks.DatabaseTask; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; -import org.codehaus.plexus.taskqueue.TaskQueueException; -import org.codehaus.plexus.taskqueue.execution.TaskExecutionException; - -/** - * The component that takes care of scheduling in the application. - * - */ -public interface ArchivaTaskScheduler -{ - /** - * The Plexus component role. - */ - public final static String ROLE = ArchivaTaskScheduler.class.getName(); - - /** - * Checks if there is any database scanning task queued. - * - * @return - * @throws ArchivaException - */ - public boolean isProcessingDatabaseTask(); - - /** - * Checks if a repository scanning task for the specified repository is queuedd. - * - * @param repositoryId - * @return - * @throws ArchivaException - */ - public boolean isProcessingRepositoryTask( String repositoryId ); - - /** - * Adds the database task to the database scanning queue. - * - * @param task - * @throws TaskQueueException - */ - public void queueDatabaseTask( DatabaseTask task ) - throws TaskQueueException; - - /** - * Adds the repository task to the repo scanning queue. - * - * @param task - * @throws TaskQueueException - */ - public void queueRepositoryTask( RepositoryTask task ) - throws TaskQueueException; - - /** - * Adds the indexing task to the indexing queue. - * - * @param task - * @throws TaskQueueException - */ - public void queueIndexingTask( ArtifactIndexingTask task ) - throws TaskQueueException; - - /** - * Schedules the database tasks using the set cron expression. - * - * @throws TaskExecutionException - */ - public void scheduleDatabaseTasks() - throws TaskExecutionException; - - public void startup() - throws ArchivaException; -} diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/tasks/TaskCreator.java b/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/tasks/TaskCreator.java deleted file mode 100644 index 5075b6e81..000000000 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/tasks/TaskCreator.java +++ /dev/null @@ -1,100 +0,0 @@ -package org.apache.maven.archiva.scheduled.tasks; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import java.io.File; -import java.io.IOException; - -import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; -import org.sonatype.nexus.index.NexusIndexer; -import org.sonatype.nexus.index.context.DefaultIndexingContext; -import org.sonatype.nexus.index.context.IndexingContext; -import org.sonatype.nexus.index.context.UnsupportedExistingLuceneIndexException; - -/** - * TaskCreator Convenience class for creating Archiva tasks. - * @todo Nexus specifics shouldn't be in the archiva-scheduled module - */ -public class TaskCreator -{ - public static RepositoryTask createRepositoryTask( String repositoryId ) - { - RepositoryTask task = new RepositoryTask(); - task.setRepositoryId( repositoryId ); - return task; - } - - public static RepositoryTask createRepositoryTask( String repositoryId, boolean scanAll ) - { - RepositoryTask task = createRepositoryTask( repositoryId ); - task.setScanAll( scanAll ); - - return task; - } - - public static RepositoryTask createRepositoryTask( String repositoryId, File resourceFile, - boolean updateRelatedArtifacts ) - { - RepositoryTask task = createRepositoryTask( repositoryId ); - task.setResourceFile( resourceFile ); - task.setUpdateRelatedArtifacts( updateRelatedArtifacts ); - - return task; - } - - public static RepositoryTask createRepositoryTask( String repositoryId, File resourceFile, - boolean updateRelatedArtifacts, boolean scanAll ) - { - RepositoryTask task = createRepositoryTask( repositoryId, resourceFile, updateRelatedArtifacts ); - task.setScanAll( scanAll ); - - return task; - } - - public static ArtifactIndexingTask createIndexingTask( ManagedRepositoryConfiguration repository, File resource, - ArtifactIndexingTask.Action action, IndexingContext context ) - { - return new ArtifactIndexingTask( repository, resource, action, context ); - } - - public static IndexingContext createContext( ManagedRepositoryConfiguration repository ) - throws IOException, UnsupportedExistingLuceneIndexException - { - String indexDir = repository.getIndexDir(); - File managedRepository = new File( repository.getLocation() ); - - File indexDirectory = null; - if ( indexDir != null && !"".equals( indexDir ) ) - { - indexDirectory = new File( repository.getIndexDir() ); - } - else - { - indexDirectory = new File( managedRepository, ".indexer" ); - } - - IndexingContext context = - new DefaultIndexingContext( repository.getId(), repository.getId(), managedRepository, indexDirectory, - null, null, NexusIndexer.FULL_INDEX, false ); - context.setSearchable( repository.isScanned() ); - return context; - } - -} diff --git a/archiva-modules/archiva-scheduled/src/main/resources/META-INF/plexus/components.xml b/archiva-modules/archiva-scheduled/src/main/resources/META-INF/plexus/components.xml deleted file mode 100644 index 27e491340..000000000 --- a/archiva-modules/archiva-scheduled/src/main/resources/META-INF/plexus/components.xml +++ /dev/null @@ -1,144 +0,0 @@ -<?xml version="1.0" ?> -<!-- - ~ Licensed to the Apache Software Foundation (ASF) under one - ~ or more contributor license agreements. See the NOTICE file - ~ distributed with this work for additional information - ~ regarding copyright ownership. The ASF licenses this file - ~ to you under the Apache License, Version 2.0 (the - ~ "License"); you may not use this file except in compliance - ~ with the License. You may obtain a copy of the License at - ~ - ~ http://www.apache.org/licenses/LICENSE-2.0 - ~ - ~ Unless required by applicable law or agreed to in writing, - ~ software distributed under the License is distributed on an - ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - ~ KIND, either express or implied. See the License for the - ~ specific language governing permissions and limitations - ~ under the License. - --> - -<component-set> - <components> - <!-- - | - | Database Update Task Queue / Executor - | - --> - <component> - <role>org.codehaus.plexus.taskqueue.TaskQueue</role> - <role-hint>database-update</role-hint> - <implementation>org.codehaus.plexus.taskqueue.DefaultTaskQueue</implementation> - <lifecycle-handler>plexus-configurable</lifecycle-handler> - <configuration> - <task-entry-evaluators> - </task-entry-evaluators> - <task-exit-evaluators> - </task-exit-evaluators> - <task-viability-evaluators> - </task-viability-evaluators> - </configuration> - </component> - - <component> - <role>org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor</role> - <role-hint>database-update</role-hint> - <implementation>org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor</implementation> - <instantiation-strategy>singleton</instantiation-strategy> - <requirements> - <requirement> - <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role> - <role-hint>database-update</role-hint> - </requirement> - <requirement> - <role>org.codehaus.plexus.taskqueue.TaskQueue</role> - <role-hint>database-update</role-hint> - </requirement> - </requirements> - <configuration> - <name>database-update</name> - </configuration> - </component> - - <!-- - | - | Repository Scanning Task Queue / Executor - | - --> - <component> - <role>org.codehaus.plexus.taskqueue.TaskQueue</role> - <role-hint>repository-scanning</role-hint> - <implementation>org.codehaus.plexus.taskqueue.DefaultTaskQueue</implementation> - <lifecycle-handler>plexus-configurable</lifecycle-handler> - <configuration> - <task-entry-evaluators> - </task-entry-evaluators> - <task-exit-evaluators> - </task-exit-evaluators> - <task-viability-evaluators> - </task-viability-evaluators> - </configuration> - </component> - - <component> - <role>org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor</role> - <role-hint>repository-scanning</role-hint> - <implementation>org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor</implementation> - <instantiation-strategy>singleton</instantiation-strategy> - <requirements> - <requirement> - <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role> - <role-hint>repository-scanning</role-hint> - </requirement> - <requirement> - <role>org.codehaus.plexus.taskqueue.TaskQueue</role> - <role-hint>repository-scanning</role-hint> - </requirement> - </requirements> - <configuration> - <name>repository-scanning</name> - </configuration> - </component> - </components> - - <!-- - | - | Indexing Task Queue / Executor - | - --> - <component> - <role>org.codehaus.plexus.taskqueue.TaskQueue</role> - <role-hint>indexing</role-hint> - <implementation>org.codehaus.plexus.taskqueue.DefaultTaskQueue</implementation> - <lifecycle-handler>plexus-configurable</lifecycle-handler> - <configuration> - <task-entry-evaluators> - </task-entry-evaluators> - <task-exit-evaluators> - </task-exit-evaluators> - <task-viability-evaluators> - </task-viability-evaluators> - </configuration> - </component> - - <component> - <role>org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor</role> - <role-hint>indexing</role-hint> - <implementation>org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor</implementation> - <instantiation-strategy>singleton</instantiation-strategy> - <requirements> - <requirement> - <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role> - <role-hint>indexing</role-hint> - </requirement> - <requirement> - <role>org.codehaus.plexus.taskqueue.TaskQueue</role> - <role-hint>indexing</role-hint> - </requirement> - </requirements> - <configuration> - <name>indexing</name> - </configuration> - </component> - -</component-set> diff --git a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/TestDatabaseCleanupConsumer.java b/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/TestDatabaseCleanupConsumer.java deleted file mode 100644 index d8ab64a4e..000000000 --- a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/TestDatabaseCleanupConsumer.java +++ /dev/null @@ -1,99 +0,0 @@ -package org.apache.maven.archiva.scheduled; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; -import org.apache.maven.archiva.consumers.ConsumerException; -import org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer; -import org.apache.maven.archiva.model.ArchivaArtifact; - -import java.util.List; - -/** - * TestDatabaseCleanupConsumer - * - * @version $Id$ - */ -public class TestDatabaseCleanupConsumer - extends AbstractMonitoredConsumer - implements DatabaseCleanupConsumer -{ - private int countBegin = 0; - private int countComplete = 0; - private int countProcessed = 0; - - public void resetCount() - { - countBegin = 0; - countProcessed = 0; - countComplete = 0; - } - - public void beginScan() - { - countBegin++; - } - - public void completeScan() - { - countComplete++; - } - - public List<String> getIncludedTypes() - { - return null; - } - - public void processArchivaArtifact( ArchivaArtifact artifact ) - throws ConsumerException - { - countProcessed++; - } - - public String getDescription() - { - return "Test Consumer for Database Cleanup"; - } - - public String getId() - { - return "test-db-cleanup"; - } - - public boolean isPermanent() - { - return false; - } - - public int getCountBegin() - { - return countBegin; - } - - public int getCountComplete() - { - return countComplete; - } - - public int getCountProcessed() - { - return countProcessed; - } -} diff --git a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/tasks/TaskCreatorTest.java b/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/tasks/TaskCreatorTest.java deleted file mode 100644 index 68c1ad476..000000000 --- a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/tasks/TaskCreatorTest.java +++ /dev/null @@ -1,92 +0,0 @@ -package org.apache.maven.archiva.scheduled.tasks; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import java.io.File; - -import org.codehaus.plexus.spring.PlexusInSpringTestCase; - -public class TaskCreatorTest - extends PlexusInSpringTestCase -{ - private static final String REPO_ID = "test-repo"; - - public void testCreateRepositoryTask() - throws Exception - { - RepositoryTask task = TaskCreator.createRepositoryTask( REPO_ID ); - - assertEquals( "Incorrect repository id set.", REPO_ID, task.getRepositoryId() ); - } - - public void testCreateRepositoryTaskWithTaskNameSuffix() - throws Exception - { - RepositoryTask task = TaskCreator.createRepositoryTask( REPO_ID ); - - assertBasicTaskDetails( task ); - } - - public void testCreateRepositoryTaskScanAllArtifacts() - throws Exception - { - RepositoryTask task = TaskCreator.createRepositoryTask( REPO_ID, true ); - - assertBasicTaskDetails( task ); - assertTrue( task.isScanAll() ); - } - - public void testCreateRepositoryTaskDoNotScanAllArtifacts() - throws Exception - { - RepositoryTask task = TaskCreator.createRepositoryTask( REPO_ID, false ); - - assertBasicTaskDetails( task ); - assertFalse( task.isScanAll() ); - } - - public void testCreateRepositoryTaskForArtifactUpdateAllRelated() - throws Exception - { - File resource = new File( getBasedir(), "target/test-classes/test.jar" ); - RepositoryTask task = TaskCreator.createRepositoryTask( REPO_ID, resource, true ); - - assertBasicTaskDetails( task ); - assertEquals( "Incorrect resource file set.", resource, task.getResourceFile() ); - assertTrue( task.isUpdateRelatedArtifacts() ); - } - - public void testCreateRepositoryTaskForArtifactDoNotUpdateAllRelated() - throws Exception - { - File resource = new File( getBasedir(), "target/test-classes/test.jar" ); - RepositoryTask task = TaskCreator.createRepositoryTask( REPO_ID, resource, false ); - - assertBasicTaskDetails( task ); - assertEquals( "Incorrect resource file set.", resource, task.getResourceFile() ); - assertFalse( task.isUpdateRelatedArtifacts() ); - } - - private void assertBasicTaskDetails( RepositoryTask task ) - { - assertEquals( "Incorrect repository id set.", REPO_ID, task.getRepositoryId() ); - } - -} diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-api/pom.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-api/pom.xml new file mode 100644 index 000000000..ffcbe736b --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-api/pom.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>archiva-scheduler</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>archiva-scheduler-api</artifactId> + <name>Archiva Base :: Scheduled Tasks :: API</name> + <dependencies> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-taskqueue</artifactId> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-api/src/main/java/org/apache/archiva/scheduler/ArchivaTaskScheduler.java b/archiva-modules/archiva-scheduler/archiva-scheduler-api/src/main/java/org/apache/archiva/scheduler/ArchivaTaskScheduler.java new file mode 100644 index 000000000..dbcffead1 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-api/src/main/java/org/apache/archiva/scheduler/ArchivaTaskScheduler.java @@ -0,0 +1,44 @@ +package org.apache.archiva.scheduler; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.codehaus.plexus.taskqueue.Task; +import org.codehaus.plexus.taskqueue.TaskQueueException; + +/** + * The component that takes care of scheduling in the application. + * + */ +public interface ArchivaTaskScheduler<T extends Task> +{ + /** + * The Plexus component role. + */ + public final static String ROLE = ArchivaTaskScheduler.class.getName(); + + /** + * Adds the task to the scanning queue. + * + * @param task + * @throws TaskQueueException + */ + public void queueTask( T task ) + throws TaskQueueException; +} diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/pom.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/pom.xml new file mode 100644 index 000000000..73c70f4a8 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/pom.xml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>archiva-scheduler</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>archiva-scheduler-database</artifactId> + <name>Archiva Base :: Scheduled Tasks :: Database</name> + <dependencies> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduler-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-configuration</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-database</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-quartz</artifactId> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-simple</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>hsqldb</groupId> + <artifactId>hsqldb</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-spring</artifactId> + <scope>test</scope> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-metadata</artifactId> + <executions> + <execution> + <id>merge</id> + <goals> + <goal>merge-metadata</goal> + </goals> + <configuration> + <descriptors> + <descriptor>${basedir}/src/main/resources/META-INF/plexus/components.xml</descriptor> + <descriptor>${project.build.outputDirectory}/META-INF/plexus/components.xml</descriptor> + </descriptors> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutor.java b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/java/org/apache/archiva/scheduler/database/ArchivaDatabaseUpdateTaskExecutor.java index a4dbb9d8b..a675d8e51 100644 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutor.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/java/org/apache/archiva/scheduler/database/ArchivaDatabaseUpdateTaskExecutor.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled.executors; +package org.apache.archiva.scheduler.database; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -21,7 +21,6 @@ package org.apache.maven.archiva.scheduled.executors; import org.apache.maven.archiva.database.ArchivaDatabaseException; import org.apache.maven.archiva.database.updater.DatabaseUpdater; -import org.apache.maven.archiva.scheduled.tasks.DatabaseTask; import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException; import org.codehaus.plexus.taskqueue.Task; @@ -73,16 +72,6 @@ public class ArchivaDatabaseUpdateTaskExecutor throw new TaskExecutionException( "Error running unprocessed updater", e ); } - try - { - log.info( "Task: Updating processed artifacts" ); - databaseUpdater.updateAllProcessed(); - } - catch ( ArchivaDatabaseException e ) - { - throw new TaskExecutionException( "Error running processed updater", e ); - } - time = System.currentTimeMillis() - time; log.info( "Finished database task in " + time + "ms." ); diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/java/org/apache/archiva/scheduler/database/DatabaseArchivaTaskScheduler.java b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/java/org/apache/archiva/scheduler/database/DatabaseArchivaTaskScheduler.java new file mode 100644 index 000000000..c98f692af --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/java/org/apache/archiva/scheduler/database/DatabaseArchivaTaskScheduler.java @@ -0,0 +1,209 @@ +package org.apache.archiva.scheduler.database; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.text.ParseException; +import java.util.List; + +import org.apache.archiva.scheduler.ArchivaTaskScheduler; +import org.apache.maven.archiva.common.ArchivaException; +import org.apache.maven.archiva.configuration.ArchivaConfiguration; +import org.apache.maven.archiva.configuration.ConfigurationEvent; +import org.apache.maven.archiva.configuration.ConfigurationListener; +import org.codehaus.plexus.personality.plexus.lifecycle.phase.Startable; +import org.codehaus.plexus.personality.plexus.lifecycle.phase.StartingException; +import org.codehaus.plexus.personality.plexus.lifecycle.phase.StoppingException; +import org.codehaus.plexus.scheduler.CronExpressionValidator; +import org.codehaus.plexus.scheduler.Scheduler; +import org.codehaus.plexus.taskqueue.Task; +import org.codehaus.plexus.taskqueue.TaskQueue; +import org.codehaus.plexus.taskqueue.TaskQueueException; +import org.codehaus.plexus.taskqueue.execution.TaskExecutionException; +import org.quartz.CronTrigger; +import org.quartz.JobDataMap; +import org.quartz.JobDetail; +import org.quartz.SchedulerException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Default implementation of a scheduling component for archiva. + * + * @plexus.component role="org.apache.archiva.scheduler.ArchivaTaskScheduler" role-hint="database" + */ +public class DatabaseArchivaTaskScheduler + implements ArchivaTaskScheduler<DatabaseTask>, Startable, ConfigurationListener +{ + private Logger log = LoggerFactory.getLogger( DatabaseArchivaTaskScheduler.class ); + + /** + * @plexus.requirement + */ + private Scheduler scheduler; + + /** + * @plexus.requirement role-hint="database-update" + */ + private TaskQueue databaseUpdateQueue; + + /** + * @plexus.requirement + */ + private ArchivaConfiguration archivaConfiguration; + + private static final String DATABASE_SCAN_GROUP = "dbg"; + + private static final String DATABASE_JOB = "dbj"; + + private static final String DATABASE_JOB_TRIGGER = "dbt"; + + static final String TASK_QUEUE = "TASK_QUEUE"; + + public static final String CRON_HOURLY = "0 0 * * * ?"; + + public void startup() + throws ArchivaException + { + archivaConfiguration.addListener( this ); + + try + { + start(); + } + catch ( StartingException e ) + { + throw new ArchivaException( e.getMessage(), e ); + } + } + + public void start() + throws StartingException + { + try + { + scheduleDatabaseJobs(); + } + catch ( SchedulerException e ) + { + throw new StartingException( "Unable to start scheduler: " + e.getMessage(), e ); + } + } + + public void stop() + throws StoppingException + { + try + { + scheduler.unscheduleJob( DATABASE_JOB, DATABASE_SCAN_GROUP ); + } + catch ( SchedulerException e ) + { + throw new StoppingException( "Unable to unschedule tasks", e ); + } + } + + public void scheduleDatabaseTasks() + throws TaskExecutionException + { + try + { + scheduleDatabaseJobs(); + } + catch ( SchedulerException e ) + { + throw new TaskExecutionException( "Unable to schedule repository jobs: " + e.getMessage(), e ); + + } + } + + @SuppressWarnings("unchecked") + public boolean isProcessingDatabaseTask() + { + List<? extends Task> queue = null; + + try + { + queue = databaseUpdateQueue.getQueueSnapshot(); + } + catch ( TaskQueueException e ) + { + // not possible with plexus-taskqueue implementation, ignore + } + + return !queue.isEmpty(); + } + + public void queueTask( DatabaseTask task ) + throws TaskQueueException + { + databaseUpdateQueue.put( task ); + } + + public void configurationEvent( ConfigurationEvent event ) + { + if ( event.getType() == ConfigurationEvent.SAVED ) + { + try + { + scheduler.unscheduleJob( DATABASE_JOB, DATABASE_SCAN_GROUP ); + + scheduleDatabaseJobs(); + } + catch ( SchedulerException e ) + { + log.error( "Error restarting the database scanning job after property change." ); + } + } + } + + private synchronized void scheduleDatabaseJobs() + throws SchedulerException + { + String cronString = archivaConfiguration.getConfiguration().getDatabaseScanning().getCronExpression(); + + // setup the unprocessed artifact job + JobDetail databaseJob = new JobDetail( DATABASE_JOB, DATABASE_SCAN_GROUP, DatabaseTaskJob.class ); + + JobDataMap dataMap = new JobDataMap(); + dataMap.put( TASK_QUEUE, databaseUpdateQueue ); + databaseJob.setJobDataMap( dataMap ); + + CronExpressionValidator cronValidator = new CronExpressionValidator(); + if ( !cronValidator.validate( cronString ) ) + { + log.warn( + "Cron expression [" + cronString + "] for database update is invalid. Defaulting to hourly." ); + cronString = CRON_HOURLY; + } + + try + { + CronTrigger trigger = new CronTrigger( DATABASE_JOB_TRIGGER, DATABASE_SCAN_GROUP, cronString ); + + scheduler.scheduleJob( databaseJob, trigger ); + } + catch ( ParseException e ) + { + log.error( + "ParseException in database scanning cron expression, disabling database scanning: " + e.getMessage() ); + } + + } +}
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/tasks/DatabaseTask.java b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/java/org/apache/archiva/scheduler/database/DatabaseTask.java index c2db624de..6757fa43f 100644 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/tasks/DatabaseTask.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/java/org/apache/archiva/scheduler/database/DatabaseTask.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled.tasks; +package org.apache.archiva.scheduler.database; /* * Licensed to the Apache Software Foundation (ASF) under one diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/DatabaseTaskJob.java b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/java/org/apache/archiva/scheduler/database/DatabaseTaskJob.java index e00829be1..1721505a3 100644 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/DatabaseTaskJob.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/java/org/apache/archiva/scheduler/database/DatabaseTaskJob.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled; +package org.apache.archiva.scheduler.database; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,7 +19,6 @@ package org.apache.maven.archiva.scheduled; * under the License. */ -import org.apache.maven.archiva.scheduled.tasks.DatabaseTask; import org.codehaus.plexus.scheduler.AbstractJob; import org.codehaus.plexus.taskqueue.Task; import org.codehaus.plexus.taskqueue.TaskQueue; @@ -47,7 +46,7 @@ public class DatabaseTaskJob JobDataMap dataMap = context.getJobDetail().getJobDataMap(); setJobDataMap( dataMap ); - TaskQueue taskQueue = (TaskQueue) dataMap.get( DefaultArchivaTaskScheduler.TASK_QUEUE ); + TaskQueue taskQueue = (TaskQueue) dataMap.get( DatabaseArchivaTaskScheduler.TASK_QUEUE ); Task task = new DatabaseTask(); diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/resources/META-INF/plexus/components.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/resources/META-INF/plexus/components.xml new file mode 100644 index 000000000..3d77c29ce --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/main/resources/META-INF/plexus/components.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" ?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<component-set> + <components> + <!-- + | + | Database Update Task Queue / Executor + | + --> + <component> + <role>org.codehaus.plexus.taskqueue.TaskQueue</role> + <role-hint>database-update</role-hint> + <implementation>org.codehaus.plexus.taskqueue.DefaultTaskQueue</implementation> + <lifecycle-handler>plexus-configurable</lifecycle-handler> + <configuration> + <task-entry-evaluators> + </task-entry-evaluators> + <task-exit-evaluators> + </task-exit-evaluators> + <task-viability-evaluators> + </task-viability-evaluators> + </configuration> + </component> + + <component> + <role>org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor</role> + <role-hint>database-update</role-hint> + <implementation>org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor</implementation> + <instantiation-strategy>singleton</instantiation-strategy> + <requirements> + <requirement> + <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role> + <role-hint>database-update</role-hint> + </requirement> + <requirement> + <role>org.codehaus.plexus.taskqueue.TaskQueue</role> + <role-hint>database-update</role-hint> + </requirement> + </requirements> + <configuration> + <name>database-update</name> + </configuration> + </component> + </components> +</component-set> diff --git a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.java b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/java/org/apache/archiva/scheduler/database/ArchivaDatabaseUpdateTaskExecutorTest.java index 84a8235a8..6d83c4c7f 100644 --- a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/java/org/apache/archiva/scheduler/database/ArchivaDatabaseUpdateTaskExecutorTest.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled.executors; +package org.apache.archiva.scheduler.database; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -25,7 +25,6 @@ import java.util.Date; import java.util.List; import java.util.Map; import java.util.Properties; - import javax.jdo.PersistenceManager; import javax.jdo.PersistenceManagerFactory; @@ -34,7 +33,6 @@ import org.apache.maven.archiva.database.ArchivaDAO; import org.apache.maven.archiva.database.ArtifactDAO; import org.apache.maven.archiva.database.constraints.ArtifactsProcessedConstraint; import org.apache.maven.archiva.model.ArchivaArtifact; -import org.apache.maven.archiva.scheduled.tasks.DatabaseTask; import org.codehaus.plexus.jdo.DefaultConfigurableJdoFactory; import org.codehaus.plexus.jdo.JdoFactory; import org.codehaus.plexus.spring.PlexusInSpringTestCase; diff --git a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/TestDatabaseUnprocessedConsumer.java b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/java/org/apache/archiva/scheduler/database/TestDatabaseUnprocessedConsumer.java index 6f3807c07..185071b9a 100644 --- a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/TestDatabaseUnprocessedConsumer.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/java/org/apache/archiva/scheduler/database/TestDatabaseUnprocessedConsumer.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled; +package org.apache.archiva.scheduler.database; /* * Licensed to the Apache Software Foundation (ASF) under one diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/maven-metadata.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/maven-metadata.xml new file mode 100644 index 000000000..b3baf545d --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/maven-metadata.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<!-- This metdata is intentionally wrong. --> +<metadata> + <groupId>javax.sql</groupId> + <artifactId>jdbc</artifactId> + <version>2.0</version> +</metadata> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.md5 index ef7483fad..ef7483fad 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.md5 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.md5 diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.sha1 index 4bc014766..4bc014766 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.sha1 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.sha1 diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/2.0/maven-metadata-repository.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/2.0/maven-metadata-repository.xml new file mode 100644 index 000000000..caf5b6697 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/2.0/maven-metadata-repository.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>javax.sql</groupId> + <artifactId>jdbc</artifactId> + <version>2.0</version> +</metadata> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/maven-metadata-repository.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/maven-metadata-repository.xml new file mode 100644 index 000000000..bb7570891 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/jdbc/maven-metadata-repository.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>javax.sql</groupId> + <artifactId>jdbc</artifactId> + <version>2.0</version> + <versioning> + <versions> + <version>2.0</version> + </versions> + </versioning> +</metadata> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/maven-metadata-repository.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/maven-metadata-repository.xml new file mode 100644 index 000000000..caf5b6697 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/javax/sql/maven-metadata-repository.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>javax.sql</groupId> + <artifactId>jdbc</artifactId> + <version>2.0</version> +</metadata> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom new file mode 100644 index 000000000..202a0a448 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>A</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>war</packaging> +</project> diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.md5 index 78a953bc5..78a953bc5 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.md5 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.md5 diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.sha1 index 71d6233aa..71d6233aa 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.sha1 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.sha1 diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war new file mode 100644 index 000000000..54d190b23 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war @@ -0,0 +1 @@ +dummy content. sample file only.
diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.md5 index 665059bc7..665059bc7 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.md5 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.md5 diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.sha1 index c8494eb9d..c8494eb9d 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.sha1 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.sha1 diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom new file mode 100644 index 000000000..fa5f8f6c8 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>B</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>pom</packaging> +</project> diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.md5 index 2324bce0c..2324bce0c 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.md5 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.md5 diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.sha1 index d8d5abce7..d8d5abce7 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.sha1 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.sha1 diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom new file mode 100644 index 000000000..c3034e820 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>B</artifactId> + <version>2.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>pom</packaging> +</project> diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.md5 index 4ddd22b82..4ddd22b82 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.md5 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.md5 diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.sha1 index 95912764c..95912764c 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.sha1 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.sha1 diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom new file mode 100644 index 000000000..ae14cd7eb --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>C</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>war</packaging> +</project> diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.md5 index d08745961..d08745961 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.md5 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.md5 diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.sha1 index fbe7bd338..fbe7bd338 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.sha1 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.sha1 diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war new file mode 100644 index 000000000..54d190b23 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war @@ -0,0 +1 @@ +dummy content. sample file only.
diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.md5 index 4eb175498..4eb175498 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.md5 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.md5 diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.sha1 index 78e0b6eb7..78e0b6eb7 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.sha1 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.sha1 diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/maven-metadata.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/maven-metadata.xml new file mode 100644 index 000000000..8ce7fc7bb --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/maven/maven-metadata.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>org.apache.maven</groupId> +</metadata>
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom new file mode 100644 index 000000000..12538e81a --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.testgroup</groupId> + <artifactId>discovery</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>pom</packaging> +</project> diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.md5 index b163670f2..b163670f2 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.md5 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.md5 diff --git a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.sha1 index dedf18ade..dedf18ade 100644 --- a/archiva-modules/archiva-scheduled/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.sha1 +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.sha1 diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/maven-metadata.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/maven-metadata.xml new file mode 100644 index 000000000..8ee18048c --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/maven-metadata.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>org.apache.testgroup</groupId> + <artifactId>discovery</artifactId> + <version>1.0</version> +</metadata>
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/maven-metadata.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/maven-metadata.xml new file mode 100644 index 000000000..b024ef7ef --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/repositories/default-repository/org/apache/testgroup/discovery/maven-metadata.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>org.apache.testgroup</groupId> + <artifactId>discovery</artifactId> +</metadata>
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduled/src/test/resources/archiva-test.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/resources/archiva-test.xml index 7721bb63e..7721bb63e 100644 --- a/archiva-modules/archiva-scheduled/src/test/resources/archiva-test.xml +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/resources/archiva-test.xml diff --git a/archiva-modules/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/resources/org/apache/archiva/scheduler/database/ArchivaDatabaseUpdateTaskExecutorTest.xml index d563701e7..2d2746d21 100644 --- a/archiva-modules/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.xml +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-database/src/test/resources/org/apache/archiva/scheduler/database/ArchivaDatabaseUpdateTaskExecutorTest.xml @@ -23,7 +23,7 @@ <component> <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role> <role-hint>test-database-update</role-hint> - <implementation>org.apache.maven.archiva.scheduled.executors.ArchivaDatabaseUpdateTaskExecutor</implementation> + <implementation>org.apache.archiva.scheduler.database.ArchivaDatabaseUpdateTaskExecutor</implementation> <description></description> <requirements> <requirement> @@ -67,15 +67,9 @@ </component> <component> - <role>org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer</role> - <role-hint>test-db-cleanup</role-hint> - <implementation>org.apache.maven.archiva.scheduled.TestDatabaseCleanupConsumer</implementation> - </component> - - <component> <role>org.apache.maven.archiva.database.updater.DatabaseUnprocessedArtifactConsumer</role> <role-hint>test-db-unprocessed</role-hint> - <implementation>org.apache.maven.archiva.scheduled.TestDatabaseUnprocessedConsumer</implementation> + <implementation>org.apache.archiva.scheduler.database.TestDatabaseUnprocessedConsumer</implementation> </component> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/pom.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/pom.xml new file mode 100644 index 000000000..412d05472 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/pom.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>archiva-scheduler</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>archiva-scheduler-indexing</artifactId> + <name>Archiva Base :: Scheduled Tasks :: Indexing</name> + <dependencies> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduler-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-configuration</artifactId> + </dependency> + <dependency> + <groupId>org.sonatype.nexus</groupId> + <artifactId>nexus-indexer</artifactId> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-simple</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-spring</artifactId> + <scope>test</scope> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-metadata</artifactId> + <executions> + <execution> + <id>merge</id> + <goals> + <goal>merge-metadata</goal> + </goals> + <configuration> + <descriptors> + <descriptor>${basedir}/src/main/resources/META-INF/plexus/components.xml</descriptor> + <descriptor>${project.build.outputDirectory}/META-INF/plexus/components.xml</descriptor> + </descriptors> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/executors/ArchivaIndexingTaskExecutor.java b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/ArchivaIndexingTaskExecutor.java index 2eef44f6d..64e13b636 100644 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/executors/ArchivaIndexingTaskExecutor.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/ArchivaIndexingTaskExecutor.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled.executors; +package org.apache.archiva.scheduler.indexing; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -25,7 +25,6 @@ import java.io.IOException; import org.apache.lucene.document.Document; import org.apache.lucene.index.IndexReader; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; -import org.apache.maven.archiva.scheduled.tasks.ArtifactIndexingTask; import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException; import org.codehaus.plexus.taskqueue.Task; @@ -47,7 +46,6 @@ import org.sonatype.nexus.index.packer.IndexPackingRequest; * all performed by this executor. Add and update artifact in index tasks are added in the indexing task queue by the * NexusIndexerConsumer while remove artifact from index tasks are added by the LuceneCleanupRemoveIndexedConsumer. * - * @todo Nexus specifics shouldn't be in the archiva-scheduled module * @plexus.component role="org.codehaus.plexus.taskqueue.execution.TaskExecutor" role-hint="indexing" * instantiation-strategy="singleton" */ diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/tasks/ArtifactIndexingTask.java b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/ArtifactIndexingTask.java index a9c0ac465..79207e731 100644 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/tasks/ArtifactIndexingTask.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/ArtifactIndexingTask.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled.tasks; +package org.apache.archiva.scheduler.indexing; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -20,10 +20,14 @@ package org.apache.maven.archiva.scheduled.tasks; */ import java.io.File; +import java.io.IOException; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.codehaus.plexus.taskqueue.Task; +import org.sonatype.nexus.index.NexusIndexer; +import org.sonatype.nexus.index.context.DefaultIndexingContext; import org.sonatype.nexus.index.context.IndexingContext; +import org.sonatype.nexus.index.context.UnsupportedExistingLuceneIndexException; public class ArtifactIndexingTask implements Task @@ -116,4 +120,27 @@ public class ArtifactIndexingTask return false; return true; } + + public static IndexingContext createContext( ManagedRepositoryConfiguration repository ) + throws IOException, UnsupportedExistingLuceneIndexException + { + String indexDir = repository.getIndexDir(); + File managedRepository = new File( repository.getLocation() ); + + File indexDirectory = null; + if ( indexDir != null && !"".equals( indexDir ) ) + { + indexDirectory = new File( repository.getIndexDir() ); + } + else + { + indexDirectory = new File( managedRepository, ".indexer" ); + } + + IndexingContext context = + new DefaultIndexingContext( repository.getId(), repository.getId(), managedRepository, indexDirectory, + null, null, NexusIndexer.FULL_INDEX, false ); + context.setSearchable( repository.isScanned() ); + return context; + } } diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/IndexingArchivaTaskScheduler.java b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/IndexingArchivaTaskScheduler.java new file mode 100644 index 000000000..d5d92f3b8 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/IndexingArchivaTaskScheduler.java @@ -0,0 +1,51 @@ +package org.apache.archiva.scheduler.indexing; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.apache.archiva.scheduler.ArchivaTaskScheduler; +import org.codehaus.plexus.taskqueue.TaskQueue; +import org.codehaus.plexus.taskqueue.TaskQueueException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Default implementation of a scheduling component for archiva. + * + * @todo FIXME - consider just folding in, not really scheduled + * + * @plexus.component role="org.apache.archiva.scheduler.ArchivaTaskScheduler" role-hint="indexing" + */ +public class IndexingArchivaTaskScheduler + implements ArchivaTaskScheduler<ArtifactIndexingTask> +{ + private Logger log = LoggerFactory.getLogger( IndexingArchivaTaskScheduler.class ); + + /** + * @plexus.requirement role-hint="indexing" + */ + private TaskQueue indexingQueue; + + public void queueTask( ArtifactIndexingTask task ) + throws TaskQueueException + { + indexingQueue.put( task ); + } + +} diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/resources/META-INF/plexus/components.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/resources/META-INF/plexus/components.xml new file mode 100644 index 000000000..68e97ab8d --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/resources/META-INF/plexus/components.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" ?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<component-set> + <components> + <!-- + | + | Indexing Task Queue / Executor + | + --> + <component> + <role>org.codehaus.plexus.taskqueue.TaskQueue</role> + <role-hint>indexing</role-hint> + <implementation>org.codehaus.plexus.taskqueue.DefaultTaskQueue</implementation> + <lifecycle-handler>plexus-configurable</lifecycle-handler> + <configuration> + <task-entry-evaluators> + </task-entry-evaluators> + <task-exit-evaluators> + </task-exit-evaluators> + <task-viability-evaluators> + </task-viability-evaluators> + </configuration> + </component> + + <component> + <role>org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor</role> + <role-hint>indexing</role-hint> + <implementation>org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor</implementation> + <instantiation-strategy>singleton</instantiation-strategy> + <requirements> + <requirement> + <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role> + <role-hint>indexing</role-hint> + </requirement> + <requirement> + <role>org.codehaus.plexus.taskqueue.TaskQueue</role> + <role-hint>indexing</role-hint> + </requirement> + </requirements> + <configuration> + <name>indexing</name> + </configuration> + </component> + </components> +</component-set> diff --git a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaIndexingTaskExecutorTest.java b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/test/java/org/apache/archiva/scheduler/indexing/ArchivaIndexingTaskExecutorTest.java index a0e90b647..d8aeb1787 100644 --- a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaIndexingTaskExecutorTest.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/test/java/org/apache/archiva/scheduler/indexing/ArchivaIndexingTaskExecutorTest.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled.executors; +package org.apache.archiva.scheduler.indexing; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -31,14 +31,12 @@ import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; import org.apache.commons.io.FileUtils; +import org.apache.lucene.search.BooleanClause.Occur; import org.apache.lucene.search.BooleanQuery; import org.apache.lucene.search.IndexSearcher; import org.apache.lucene.search.TopDocs; -import org.apache.lucene.search.BooleanClause.Occur; import org.apache.maven.archiva.configuration.Configuration; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; -import org.apache.maven.archiva.scheduled.tasks.ArtifactIndexingTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; import org.codehaus.plexus.spring.PlexusInSpringTestCase; import org.sonatype.nexus.index.ArtifactInfo; import org.sonatype.nexus.index.FlatSearchRequest; @@ -95,7 +93,7 @@ public class ArchivaIndexingTaskExecutorTest indexingExecutor.setIndexerEngine( indexerEngine ); indexingExecutor.setIndexPacker( indexPacker ); - context = TaskCreator.createContext( repositoryConfig ); + context = ArtifactIndexingTask.createContext( repositoryConfig ); } protected void tearDown() @@ -124,7 +122,7 @@ public class ArchivaIndexingTaskExecutorTest "org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar" ); ArtifactIndexingTask task = - TaskCreator.createIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.ADD, context ); + new ArtifactIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.ADD, context ); indexingExecutor.executeTask( task ); @@ -164,7 +162,7 @@ public class ArchivaIndexingTaskExecutorTest "org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar" ); ArtifactIndexingTask task = - TaskCreator.createIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.ADD, context ); + new ArtifactIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.ADD, context ); indexingExecutor.executeTask( task ); indexingExecutor.executeTask( task ); @@ -193,7 +191,7 @@ public class ArchivaIndexingTaskExecutorTest "org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar" ); ArtifactIndexingTask task = - TaskCreator.createIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.ADD, context ); + new ArtifactIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.ADD, context ); // remove artifact from index indexingExecutor.executeTask( task ); @@ -213,15 +211,13 @@ public class ArchivaIndexingTaskExecutorTest searcher.close(); - context = TaskCreator.createContext( repositoryConfig ); + context = ArtifactIndexingTask.createContext( repositoryConfig ); // remove added artifact from index - task = - TaskCreator.createIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.DELETE, context ); + task = new ArtifactIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.DELETE, context ); indexingExecutor.executeTask( task ); - task = - TaskCreator.createIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.FINISH, context ); + task = new ArtifactIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.FINISH, context ); indexingExecutor.executeTask( task ); q = new BooleanQuery(); @@ -250,12 +246,11 @@ public class ArchivaIndexingTaskExecutorTest "org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar" ); ArtifactIndexingTask task = - TaskCreator.createIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.ADD, context ); + new ArtifactIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.ADD, context ); indexingExecutor.executeTask( task ); - task = - TaskCreator.createIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.FINISH, context ); + task = new ArtifactIndexingTask( repositoryConfig, artifactFile, ArtifactIndexingTask.Action.FINISH, context ); indexingExecutor.executeTask( task ); diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/pom.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/pom.xml new file mode 100644 index 000000000..d71b10925 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/pom.xml @@ -0,0 +1,80 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>archiva-scheduler</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>archiva-scheduler-repository</artifactId> + <name>Archiva Base :: Scheduled Tasks :: Repository Scanning</name> + <dependencies> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduler-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-configuration</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-database</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-repository-scanner</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-quartz</artifactId> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-database-consumers</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-spring</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-simple</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>hsqldb</groupId> + <artifactId>hsqldb</artifactId> + <scope>test</scope> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-metadata</artifactId> + <executions> + <execution> + <id>merge</id> + <goals> + <goal>merge-metadata</goal> + </goals> + <configuration> + <descriptors> + <descriptor>${basedir}/src/main/resources/META-INF/plexus/components.xml</descriptor> + <descriptor>${project.build.outputDirectory}/META-INF/plexus/components.xml</descriptor> + </descriptors> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutor.java b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/java/org/apache/archiva/scheduler/repository/ArchivaRepositoryScanningTaskExecutor.java index 631e6a03f..7585e699c 100644 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutor.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/java/org/apache/archiva/scheduler/repository/ArchivaRepositoryScanningTaskExecutor.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled.executors; +package org.apache.archiva.scheduler.repository; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,6 +19,14 @@ package org.apache.maven.archiva.scheduled.executors; * under the License. */ +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +import org.apache.archiva.repository.scanner.RepositoryContentConsumers; +import org.apache.archiva.repository.scanner.RepositoryScanStatistics; +import org.apache.archiva.repository.scanner.RepositoryScanner; +import org.apache.archiva.repository.scanner.RepositoryScannerException; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; @@ -33,11 +41,7 @@ import org.apache.maven.archiva.database.constraints.UniqueArtifactIdConstraint; import org.apache.maven.archiva.database.constraints.UniqueGroupIdConstraint; import org.apache.maven.archiva.model.ArchivaArtifact; import org.apache.maven.archiva.model.RepositoryContentStatistics; -import org.apache.maven.archiva.repository.RepositoryException; -import org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers; -import org.apache.maven.archiva.repository.scanner.RepositoryScanStatistics; -import org.apache.maven.archiva.repository.scanner.RepositoryScanner; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; +import org.apache.maven.archiva.repository.events.RepositoryListener; import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException; import org.codehaus.plexus.taskqueue.Task; @@ -46,15 +50,11 @@ import org.codehaus.plexus.taskqueue.execution.TaskExecutor; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.File; -import java.util.ArrayList; -import java.util.List; - /** - * ArchivaRepositoryScanningTaskExecutor + * ArchivaRepositoryScanningTaskExecutor * * @version $Id$ - * + * * @plexus.component * role="org.codehaus.plexus.taskqueue.execution.TaskExecutor" * role-hint="repository-scanning" @@ -63,12 +63,14 @@ public class ArchivaRepositoryScanningTaskExecutor implements TaskExecutor, Initializable { private Logger log = LoggerFactory.getLogger( ArchivaRepositoryScanningTaskExecutor.class ); - + /** + * TODO: just for stats, remove this and use the main stats module + * * @plexus.requirement role-hint="jdo" */ private ArchivaDAO dao; - + /** * @plexus.requirement */ @@ -76,16 +78,21 @@ public class ArchivaRepositoryScanningTaskExecutor /** * The repository scanner component. - * + * * @plexus.requirement */ private RepositoryScanner repoScanner; - + + /** + * @plexus.requirement role="org.apache.maven.archiva.repository.events.RepositoryListener" + */ + private List<RepositoryListener> repositoryListeners; + /** * @plexus.requirement */ private RepositoryContentConsumers consumers; - + private Task task; public void initialize() @@ -98,17 +105,26 @@ public class ArchivaRepositoryScanningTaskExecutor public void executeTask( Task task ) throws TaskExecutionException { + + // TODO: replace this whole class with the prescribed content scanning service/action + // - scan repository for artifacts that do not have corresponding metadata or have been updated and + // send events for each + // - scan metadata for artifacts that have been removed and send events for each + // - scan metadata for missing plugin data + // - store information so that it can restart upon failure (publish event on the server recovery + // queue, remove it on successful completion) + this.task = task; - + RepositoryTask repoTask = (RepositoryTask) task; - + if ( StringUtils.isBlank( repoTask.getRepositoryId() ) ) { throw new TaskExecutionException("Unable to execute RepositoryTask with blank repository Id."); } ManagedRepositoryConfiguration arepo = archivaConfiguration.getConfiguration().findManagedRepositoryById( repoTask.getRepositoryId() ); - + // execute consumers on resource file if set if( repoTask.getResourceFile() != null ) { @@ -118,19 +134,19 @@ public class ArchivaRepositoryScanningTaskExecutor else { log.info( "Executing task from queue with job name: " + repoTask ); - + // otherwise, execute consumers on whole repository try - { + { if ( arepo == null ) { throw new TaskExecutionException( "Unable to execute RepositoryTask with invalid repository id: " + repoTask.getRepositoryId() ); } - + long sinceWhen = RepositoryScanner.FRESH_SCAN; - + List<RepositoryContentStatistics> results = (List<RepositoryContentStatistics>) dao.query( new MostRecentRepositoryScanStatistics( arepo.getId() ) ); - + if ( CollectionUtils.isNotEmpty( results ) ) { RepositoryContentStatistics lastStats = results.get( 0 ); @@ -139,21 +155,28 @@ public class ArchivaRepositoryScanningTaskExecutor sinceWhen = lastStats.getWhenGathered().getTime() + lastStats.getDuration(); } } - + RepositoryScanStatistics stats = repoScanner.scan( arepo, sinceWhen ); - - log.info( "Finished repository task: " + stats.toDump( arepo ) ); - + + log.info( "Finished first scan: " + stats.toDump( arepo ) ); + RepositoryContentStatistics dbstats = constructRepositoryStatistics( arepo, sinceWhen, results, stats ); - - dao.getRepositoryContentStatisticsDAO().saveRepositoryContentStatistics( dbstats ); - + + dao.getRepositoryContentStatisticsDAO().saveRepositoryContentStatistics( dbstats ); + +// log.info( "Scanning for removed repository content" ); + +// metadataRepository.findAllProjects(); + // FIXME: do something + + log.info( "Finished repository task: " + repoTask ); + this.task = null; } - catch ( RepositoryException e ) - { + catch ( RepositoryScannerException e ) + { throw new TaskExecutionException( "Repository error when executing repository job.", e ); - } + } } } @@ -161,7 +184,7 @@ public class ArchivaRepositoryScanningTaskExecutor private RepositoryContentStatistics constructRepositoryStatistics( ManagedRepositoryConfiguration arepo, long sinceWhen, List<RepositoryContentStatistics> results, - RepositoryScanStatistics stats ) + RepositoryScanStatistics stats ) { // I hate jpox and modello <-- and so do I RepositoryContentStatistics dbstats = new RepositoryContentStatistics(); @@ -170,12 +193,12 @@ public class ArchivaRepositoryScanningTaskExecutor dbstats.setRepositoryId( stats.getRepositoryId() ); dbstats.setTotalFileCount( stats.getTotalFileCount() ); dbstats.setWhenGathered( stats.getWhenGathered() ); - + // total artifact count try { - List<ArchivaArtifact> artifacts = dao.getArtifactDAO().queryArtifacts( - new ArtifactsByRepositoryConstraint( arepo.getId(), stats.getWhenGathered(), "groupId", true ) ); + List<ArchivaArtifact> artifacts = dao.getArtifactDAO().queryArtifacts( + new ArtifactsByRepositoryConstraint( arepo.getId(), stats.getWhenGathered(), "groupId", true ) ); dbstats.setTotalArtifactCount( artifacts.size() ); } catch ( ObjectNotFoundException oe ) @@ -183,27 +206,27 @@ public class ArchivaRepositoryScanningTaskExecutor log.error( "Object not found in the database : " + oe.getMessage() ); } catch ( ArchivaDatabaseException ae ) - { + { log.error( "Error occurred while querying artifacts for artifact count : " + ae.getMessage() ); } - + // total repo size long size = FileUtils.sizeOfDirectory( new File( arepo.getLocation() ) ); dbstats.setTotalSize( size ); - + // total unique groups List<String> repos = new ArrayList<String>(); - repos.add( arepo.getId() ); - + repos.add( arepo.getId() ); + List<String> groupIds = (List<String>) dao.query( new UniqueGroupIdConstraint( repos ) ); dbstats.setTotalGroupCount( groupIds.size() ); - + List<Object[]> artifactIds = (List<Object[]>) dao.query( new UniqueArtifactIdConstraint( arepo.getId(), true ) ); dbstats.setTotalProjectCount( artifactIds.size() ); - + return dbstats; - } - + } + public Task getCurrentTaskInExecution() { return task; diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/DefaultArchivaTaskScheduler.java b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/java/org/apache/archiva/scheduler/repository/RepositoryArchivaTaskScheduler.java index ee04d3f0d..e8a97557d 100644 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/DefaultArchivaTaskScheduler.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/java/org/apache/archiva/scheduler/repository/RepositoryArchivaTaskScheduler.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled; +package org.apache.archiva.scheduler.repository; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -25,6 +25,8 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import org.apache.archiva.repository.scanner.RepositoryScanStatistics; +import org.apache.archiva.scheduler.ArchivaTaskScheduler; import org.apache.maven.archiva.common.ArchivaException; import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.ConfigurationEvent; @@ -32,20 +34,13 @@ import org.apache.maven.archiva.configuration.ConfigurationListener; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.database.ArchivaDAO; import org.apache.maven.archiva.database.constraints.MostRecentRepositoryScanStatistics; -import org.apache.maven.archiva.repository.scanner.RepositoryScanStatistics; -import org.apache.maven.archiva.scheduled.tasks.ArtifactIndexingTask; -import org.apache.maven.archiva.scheduled.tasks.DatabaseTask; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; import org.codehaus.plexus.personality.plexus.lifecycle.phase.Startable; import org.codehaus.plexus.personality.plexus.lifecycle.phase.StartingException; import org.codehaus.plexus.personality.plexus.lifecycle.phase.StoppingException; import org.codehaus.plexus.scheduler.CronExpressionValidator; import org.codehaus.plexus.scheduler.Scheduler; -import org.codehaus.plexus.taskqueue.Task; import org.codehaus.plexus.taskqueue.TaskQueue; import org.codehaus.plexus.taskqueue.TaskQueueException; -import org.codehaus.plexus.taskqueue.execution.TaskExecutionException; import org.quartz.CronTrigger; import org.quartz.JobDataMap; import org.quartz.JobDetail; @@ -56,49 +51,33 @@ import org.slf4j.LoggerFactory; /** * Default implementation of a scheduling component for archiva. * - * @plexus.component role="org.apache.maven.archiva.scheduled.ArchivaTaskScheduler" role-hint="default" + * @plexus.component role="org.apache.archiva.scheduler.ArchivaTaskScheduler" role-hint="repository" */ -public class DefaultArchivaTaskScheduler - implements ArchivaTaskScheduler, Startable, ConfigurationListener +public class RepositoryArchivaTaskScheduler + implements ArchivaTaskScheduler<RepositoryTask>, Startable, ConfigurationListener { - private Logger log = LoggerFactory.getLogger( DefaultArchivaTaskScheduler.class ); - + private Logger log = LoggerFactory.getLogger( RepositoryArchivaTaskScheduler.class ); + /** * @plexus.requirement */ private Scheduler scheduler; /** - * @plexus.requirement role-hint="database-update" - */ - private TaskQueue databaseUpdateQueue; - - /** * @plexus.requirement role-hint="repository-scanning" */ private TaskQueue repositoryScanningQueue; - - /** - * @plexus.requirement role-hint="indexing" - */ - private TaskQueue indexingQueue; /** * @plexus.requirement */ private ArchivaConfiguration archivaConfiguration; - + /** * @plexus.requirement role-hint="jdo" */ private ArchivaDAO dao; - private static final String DATABASE_SCAN_GROUP = "dbg"; - - private static final String DATABASE_JOB = "dbj"; - - private static final String DATABASE_JOB_TRIGGER = "dbt"; - private static final String REPOSITORY_SCAN_GROUP = "rg"; private static final String REPOSITORY_JOB = "rj"; @@ -112,7 +91,7 @@ public class DefaultArchivaTaskScheduler public static final String CRON_HOURLY = "0 0 * * * ?"; private Set<String> jobs = new HashSet<String>(); - + private List<String> queuedRepos = new ArrayList<String>(); public void startup() @@ -129,7 +108,7 @@ public class DefaultArchivaTaskScheduler throw new ArchivaException( e.getMessage(), e ); } } - + public void start() throws StartingException { @@ -143,15 +122,13 @@ public class DefaultArchivaTaskScheduler if ( repoConfig.isScanned() ) { scheduleRepositoryJobs( repoConfig ); - + if( !isPreviouslyScanned( repoConfig ) ) { queueInitialRepoScan( repoConfig ); } } } - - scheduleDatabaseJobs(); } catch ( SchedulerException e ) { @@ -164,8 +141,6 @@ public class DefaultArchivaTaskScheduler { try { - scheduler.unscheduleJob( DATABASE_JOB, DATABASE_SCAN_GROUP ); - for ( String job : jobs ) { scheduler.unscheduleJob( job, REPOSITORY_SCAN_GROUP ); @@ -179,33 +154,13 @@ public class DefaultArchivaTaskScheduler } } - /** - * @see ArchivaTaskScheduler#scheduleDatabaseTasks() - */ - public void scheduleDatabaseTasks() - throws TaskExecutionException - { - try - { - scheduleDatabaseJobs(); - } - catch ( SchedulerException e ) - { - throw new TaskExecutionException( "Unable to schedule repository jobs: " + e.getMessage(), e ); - - } - } - - /** - * @see ArchivaTaskScheduler#isProcessingRepositoryTask(String) - */ @SuppressWarnings("unchecked") public boolean isProcessingRepositoryTask( String repositoryId ) { synchronized( repositoryScanningQueue ) { List<RepositoryTask> queue = null; - + try { queue = repositoryScanningQueue.getQueueSnapshot(); @@ -214,7 +169,7 @@ public class DefaultArchivaTaskScheduler { // not possible with plexus-taskqueue implementation, ignore } - + for ( RepositoryTask queuedTask : queue ) { if ( queuedTask.getRepositoryId().equals( repositoryId ) ) @@ -225,17 +180,14 @@ public class DefaultArchivaTaskScheduler return false; } } - - /** - * @see ArchivaTaskScheduler#isProcessingIndexingTaskWithName(String) - */ + @SuppressWarnings("unchecked") private boolean isProcessingRepositoryTask( RepositoryTask task ) { synchronized( repositoryScanningQueue ) { List<RepositoryTask> queue = null; - + try { queue = repositoryScanningQueue.getQueueSnapshot(); @@ -244,7 +196,7 @@ public class DefaultArchivaTaskScheduler { // not possible with plexus-taskqueue implementation, ignore } - + for ( RepositoryTask queuedTask : queue ) { if ( task.equals( queuedTask ) ) @@ -256,30 +208,7 @@ public class DefaultArchivaTaskScheduler } } - /** - * @see ArchivaTaskScheduler#isProcessingDatabaseTask() - */ - @SuppressWarnings("unchecked") - public boolean isProcessingDatabaseTask() - { - List<? extends Task> queue = null; - - try - { - queue = databaseUpdateQueue.getQueueSnapshot(); - } - catch ( TaskQueueException e ) - { - // not possible with plexus-taskqueue implementation, ignore - } - - return !queue.isEmpty(); - } - - /** - * @see ArchivaTaskScheduler#queueRepositoryTask(RepositoryTask) - */ - public void queueRepositoryTask( RepositoryTask task ) + public void queueTask( RepositoryTask task ) throws TaskQueueException { synchronized ( repositoryScanningQueue ) @@ -296,39 +225,10 @@ public class DefaultArchivaTaskScheduler } } - /** - * @see ArchivaTaskScheduler#queueDatabaseTask(DatabaseTask) - */ - public void queueDatabaseTask( DatabaseTask task ) - throws TaskQueueException - { - databaseUpdateQueue.put( task ); - } - - /** - * @see ArchivaTaskScheduler#queueIndexingTask(ArtifactIndexingTask) - */ - public void queueIndexingTask( ArtifactIndexingTask task ) - throws TaskQueueException - { - indexingQueue.put( task ); - } - public void configurationEvent( ConfigurationEvent event ) { if ( event.getType() == ConfigurationEvent.SAVED ) { - try - { - scheduler.unscheduleJob( DATABASE_JOB, DATABASE_SCAN_GROUP ); - - scheduleDatabaseJobs(); - } - catch ( SchedulerException e ) - { - log.error( "Error restarting the database scanning job after property change." ); - } - for ( String job : jobs ) { try @@ -360,7 +260,7 @@ public class DefaultArchivaTaskScheduler } } } - + @SuppressWarnings("unchecked") private boolean isPreviouslyScanned( ManagedRepositoryConfiguration repoConfig ) { @@ -374,12 +274,13 @@ public class DefaultArchivaTaskScheduler return false; } - + // MRM-848: Pre-configured repository initially appear to be empty private synchronized void queueInitialRepoScan( ManagedRepositoryConfiguration repoConfig ) { - String repoId = repoConfig.getId(); - RepositoryTask task = TaskCreator.createRepositoryTask( repoId ); + String repoId = repoConfig.getId(); + RepositoryTask task = new RepositoryTask(); + task.setRepositoryId( repoId ); if ( !queuedRepos.contains( repoId ) ) { @@ -388,7 +289,7 @@ public class DefaultArchivaTaskScheduler try { queuedRepos.add( repoConfig.getId() ); - this.queueRepositoryTask( task ); + this.queueTask( task ); } catch ( TaskQueueException e ) { @@ -396,7 +297,7 @@ public class DefaultArchivaTaskScheduler } } } - + private synchronized void scheduleRepositoryJobs( ManagedRepositoryConfiguration repoConfig ) throws SchedulerException { @@ -405,7 +306,7 @@ public class DefaultArchivaTaskScheduler log.warn( "Skipping job, no cron expression for " + repoConfig.getId() ); return; } - + if ( !repoConfig.isScanned() ) { log.warn( "Skipping job, repository scannable has been disabled for " + repoConfig.getId() ); @@ -428,8 +329,8 @@ public class DefaultArchivaTaskScheduler new JobDetail( REPOSITORY_JOB + ":" + repoConfig.getId(), REPOSITORY_SCAN_GROUP, RepositoryTaskJob.class ); JobDataMap dataMap = new JobDataMap(); - dataMap.put( DefaultArchivaTaskScheduler.TASK_QUEUE, repositoryScanningQueue ); - dataMap.put( DefaultArchivaTaskScheduler.TASK_REPOSITORY, repoConfig.getId() ); + dataMap.put( TASK_QUEUE, repositoryScanningQueue ); + dataMap.put( TASK_REPOSITORY, repoConfig.getId() ); repositoryJob.setJobDataMap( dataMap ); try @@ -448,38 +349,4 @@ public class DefaultArchivaTaskScheduler } } - - private synchronized void scheduleDatabaseJobs() - throws SchedulerException - { - String cronString = archivaConfiguration.getConfiguration().getDatabaseScanning().getCronExpression(); - - // setup the unprocessed artifact job - JobDetail databaseJob = new JobDetail( DATABASE_JOB, DATABASE_SCAN_GROUP, DatabaseTaskJob.class ); - - JobDataMap dataMap = new JobDataMap(); - dataMap.put( TASK_QUEUE, databaseUpdateQueue ); - databaseJob.setJobDataMap( dataMap ); - - CronExpressionValidator cronValidator = new CronExpressionValidator(); - if ( !cronValidator.validate( cronString ) ) - { - log.warn( - "Cron expression [" + cronString + "] for database update is invalid. Defaulting to hourly." ); - cronString = CRON_HOURLY; - } - - try - { - CronTrigger trigger = new CronTrigger( DATABASE_JOB_TRIGGER, DATABASE_SCAN_GROUP, cronString ); - - scheduler.scheduleJob( databaseJob, trigger ); - } - catch ( ParseException e ) - { - log.error( - "ParseException in database scanning cron expression, disabling database scanning: " + e.getMessage() ); - } - - } -} +}
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/tasks/RepositoryTask.java b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/java/org/apache/archiva/scheduler/repository/RepositoryTask.java index 27dd5e787..94f55bee7 100644 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/tasks/RepositoryTask.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/java/org/apache/archiva/scheduler/repository/RepositoryTask.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled.tasks; +package org.apache.archiva.scheduler.repository; import java.io.File; diff --git a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/RepositoryTaskJob.java b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/java/org/apache/archiva/scheduler/repository/RepositoryTaskJob.java index e0c34ae2c..ab265a5ea 100644 --- a/archiva-modules/archiva-scheduled/src/main/java/org/apache/maven/archiva/scheduled/RepositoryTaskJob.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/java/org/apache/archiva/scheduler/repository/RepositoryTaskJob.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled; +package org.apache.archiva.scheduler.repository; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -19,8 +19,6 @@ package org.apache.maven.archiva.scheduled; * under the License. */ -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; import org.codehaus.plexus.scheduler.AbstractJob; import org.codehaus.plexus.taskqueue.TaskQueue; import org.codehaus.plexus.taskqueue.TaskQueueException; @@ -46,10 +44,11 @@ public class RepositoryTaskJob JobDataMap dataMap = context.getJobDetail().getJobDataMap(); setJobDataMap( dataMap ); - TaskQueue taskQueue = (TaskQueue) dataMap.get( DefaultArchivaTaskScheduler.TASK_QUEUE ); + TaskQueue taskQueue = (TaskQueue) dataMap.get( RepositoryArchivaTaskScheduler.TASK_QUEUE ); - String repositoryId = (String) dataMap.get( DefaultArchivaTaskScheduler.TASK_REPOSITORY ); - RepositoryTask task = TaskCreator.createRepositoryTask( repositoryId ); + String repositoryId = (String) dataMap.get( RepositoryArchivaTaskScheduler.TASK_REPOSITORY ); + RepositoryTask task = new RepositoryTask(); + task.setRepositoryId( repositoryId ); try { diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/resources/META-INF/plexus/components.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/resources/META-INF/plexus/components.xml new file mode 100644 index 000000000..d472d5a56 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/main/resources/META-INF/plexus/components.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" ?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<component-set> + <components> + <!-- + | + | Repository Scanning Task Queue / Executor + | + --> + <component> + <role>org.codehaus.plexus.taskqueue.TaskQueue</role> + <role-hint>repository-scanning</role-hint> + <implementation>org.codehaus.plexus.taskqueue.DefaultTaskQueue</implementation> + <lifecycle-handler>plexus-configurable</lifecycle-handler> + <configuration> + <task-entry-evaluators> + </task-entry-evaluators> + <task-exit-evaluators> + </task-exit-evaluators> + <task-viability-evaluators> + </task-viability-evaluators> + </configuration> + </component> + + <component> + <role>org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor</role> + <role-hint>repository-scanning</role-hint> + <implementation>org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor</implementation> + <instantiation-strategy>singleton</instantiation-strategy> + <requirements> + <requirement> + <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role> + <role-hint>repository-scanning</role-hint> + </requirement> + <requirement> + <role>org.codehaus.plexus.taskqueue.TaskQueue</role> + <role-hint>repository-scanning</role-hint> + </requirement> + </requirements> + <configuration> + <name>repository-scanning</name> + </configuration> + </component> + </components> +</component-set> diff --git a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.java b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/java/org/apache/archiva/scheduler/repository/ArchivaRepositoryScanningTaskExecutorTest.java index 103d53dd9..a79db2a81 100644 --- a/archiva-modules/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.java +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/java/org/apache/archiva/scheduler/repository/ArchivaRepositoryScanningTaskExecutorTest.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.scheduled.executors; +package org.apache.archiva.scheduler.repository; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -25,7 +25,6 @@ import java.util.Calendar; import java.util.List; import java.util.Map; import java.util.Properties; - import javax.jdo.PersistenceManager; import javax.jdo.PersistenceManagerFactory; @@ -36,7 +35,6 @@ import org.apache.maven.archiva.database.ArtifactDAO; import org.apache.maven.archiva.database.constraints.ArtifactsProcessedConstraint; import org.apache.maven.archiva.model.ArchivaArtifact; import org.apache.maven.archiva.model.RepositoryContentStatistics; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; import org.codehaus.plexus.jdo.DefaultConfigurableJdoFactory; import org.codehaus.plexus.jdo.JdoFactory; import org.codehaus.plexus.spring.PlexusInSpringTestCase; @@ -224,8 +222,8 @@ public class ArchivaRepositoryScanningTaskExecutorTest File newArtifactGroup = new File( repoDir, "org/apache/archiva"); - FileUtils.copyDirectoryStructure( new File( getBasedir(), "target/test-classes/test-repo/org/apache/archiva"), newArtifactGroup ); - + FileUtils.copyDirectoryStructure( new File( getBasedir(), "target/test-classes/test-repo/org/apache/archiva"), newArtifactGroup ); + // update last modified date new File( newArtifactGroup, "archiva-index-methods-jar-test/1.0/pom.xml" ).setLastModified( Calendar.getInstance().getTimeInMillis() + 1000 ); new File( newArtifactGroup, "archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar" ).setLastModified( Calendar.getInstance().getTimeInMillis() + 1000 ); diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/maven-metadata.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/maven-metadata.xml new file mode 100644 index 000000000..b3baf545d --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/maven-metadata.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<!-- This metdata is intentionally wrong. --> +<metadata> + <groupId>javax.sql</groupId> + <artifactId>jdbc</artifactId> + <version>2.0</version> +</metadata> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.md5 new file mode 100644 index 000000000..ef7483fad --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.md5 @@ -0,0 +1 @@ +d41d8cd98f00b204e9800998ecf8427e jdbc-2.0.jar
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.sha1 new file mode 100644 index 000000000..4bc014766 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/jdbc-2.0.jar.sha1 @@ -0,0 +1 @@ +da39a3ee5e6b4b0d3255bfef95601890afd80709 jdbc-2.0.jar
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/maven-metadata-repository.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/maven-metadata-repository.xml new file mode 100644 index 000000000..caf5b6697 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/2.0/maven-metadata-repository.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>javax.sql</groupId> + <artifactId>jdbc</artifactId> + <version>2.0</version> +</metadata> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/maven-metadata-repository.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/maven-metadata-repository.xml new file mode 100644 index 000000000..bb7570891 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/jdbc/maven-metadata-repository.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>javax.sql</groupId> + <artifactId>jdbc</artifactId> + <version>2.0</version> + <versioning> + <versions> + <version>2.0</version> + </versions> + </versioning> +</metadata> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/maven-metadata-repository.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/maven-metadata-repository.xml new file mode 100644 index 000000000..caf5b6697 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/javax/sql/maven-metadata-repository.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>javax.sql</groupId> + <artifactId>jdbc</artifactId> + <version>2.0</version> +</metadata> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom new file mode 100644 index 000000000..202a0a448 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>A</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>war</packaging> +</project> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.md5 new file mode 100644 index 000000000..78a953bc5 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.md5 @@ -0,0 +1 @@ +bc479af1df809dbabb92e29548776b84 A-1.0.pom
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.sha1 new file mode 100644 index 000000000..71d6233aa --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.pom.sha1 @@ -0,0 +1 @@ +fbb4c97603c64f3915c88243e1ea49f1a238afa7 A-1.0.pom
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war new file mode 100644 index 000000000..54d190b23 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war @@ -0,0 +1 @@ +dummy content. sample file only.
diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.md5 new file mode 100644 index 000000000..665059bc7 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.md5 @@ -0,0 +1 @@ +fd4275a6811332d67075ffd879d13d4a A-1.0.war
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.sha1 new file mode 100644 index 000000000..c8494eb9d --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/A/1.0/A-1.0.war.sha1 @@ -0,0 +1 @@ +754133cd9c36adef86d35b96c0e96e11a9c6bfc9 A-1.0.war
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom new file mode 100644 index 000000000..fa5f8f6c8 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>B</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>pom</packaging> +</project> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.md5 new file mode 100644 index 000000000..2324bce0c --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.md5 @@ -0,0 +1 @@ +c543ad342d1de7a4352fc9b0f42067b8 B-1.0.pom
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.sha1 new file mode 100644 index 000000000..d8d5abce7 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/1.0/B-1.0.pom.sha1 @@ -0,0 +1 @@ +be06d04d5824859253abf423394dc85d24971ba8 B-1.0.pom
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom new file mode 100644 index 000000000..c3034e820 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>B</artifactId> + <version>2.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>pom</packaging> +</project> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.md5 new file mode 100644 index 000000000..4ddd22b82 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.md5 @@ -0,0 +1 @@ +1af6c812f02f24e1ba287647a6856cd5 B-2.0.pom
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.sha1 new file mode 100644 index 000000000..95912764c --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/B/2.0/B-2.0.pom.sha1 @@ -0,0 +1 @@ +5d49f821499ab061c97457b3e6512fd1624a3033 B-2.0.pom
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom new file mode 100644 index 000000000..ae14cd7eb --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven</groupId> + <artifactId>C</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>war</packaging> +</project> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.md5 new file mode 100644 index 000000000..d08745961 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.md5 @@ -0,0 +1 @@ +90f5c062bded5f794cd4ea9479b35173 C-1.0.pom
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.sha1 new file mode 100644 index 000000000..fbe7bd338 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.pom.sha1 @@ -0,0 +1 @@ +fcefa8220d30b7aa72a1b7422cc06336ca14bb6f C-1.0.pom
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war new file mode 100644 index 000000000..54d190b23 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war @@ -0,0 +1 @@ +dummy content. sample file only.
diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.md5 new file mode 100644 index 000000000..4eb175498 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.md5 @@ -0,0 +1 @@ +fd4275a6811332d67075ffd879d13d4a C-1.0.war
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.sha1 new file mode 100644 index 000000000..78e0b6eb7 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/C/1.0/C-1.0.war.sha1 @@ -0,0 +1 @@ +754133cd9c36adef86d35b96c0e96e11a9c6bfc9 C-1.0.war
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/maven-metadata.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/maven-metadata.xml new file mode 100644 index 000000000..8ce7fc7bb --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/maven/maven-metadata.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>org.apache.maven</groupId> +</metadata>
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom new file mode 100644 index 000000000..12538e81a --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom @@ -0,0 +1,28 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.testgroup</groupId> + <artifactId>discovery</artifactId> + <version>1.0</version> + <name>Maven Test Repository Artifact Discovery</name> + <packaging>pom</packaging> +</project> diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.md5 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.md5 new file mode 100644 index 000000000..b163670f2 --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.md5 @@ -0,0 +1 @@ +764dd493029133aff4c0f7cb4be2d9b7 discovery-1.0.pom
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.sha1 b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.sha1 new file mode 100644 index 000000000..dedf18ade --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/discovery-1.0.pom.sha1 @@ -0,0 +1 @@ +a7aaf680caaf5bb971753e047c439f3fd4efa473 discovery-1.0.pom
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/maven-metadata.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/maven-metadata.xml new file mode 100644 index 000000000..8ee18048c --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/1.0/maven-metadata.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>org.apache.testgroup</groupId> + <artifactId>discovery</artifactId> + <version>1.0</version> +</metadata>
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/maven-metadata.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/maven-metadata.xml new file mode 100644 index 000000000..b024ef7ef --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/repositories/default-repository/org/apache/testgroup/discovery/maven-metadata.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>org.apache.testgroup</groupId> + <artifactId>discovery</artifactId> +</metadata>
\ No newline at end of file diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/resources/archiva-test.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/resources/archiva-test.xml new file mode 100644 index 000000000..7721bb63e --- /dev/null +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/resources/archiva-test.xml @@ -0,0 +1,119 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<configuration> + <managedRepositories> + <managedRepository> + <id>testRepo</id> + <name>Archiva Test Repository</name> + <location>${basedir}/src/test/repositories/default-repository</location> + <layout>default</layout> + <releases>true</releases> + <snapshots>false</snapshots> + <indexed>true</indexed> + <refreshCronExpression>0 0 * * * ?</refreshCronExpression> + </managedRepository> + </managedRepositories> + + <proxyConnectors /> + + <networkProxies /> + + <repositoryScanning> + <fileTypes> + <fileType> + <id>artifacts</id> + <patterns> + <pattern>**/*.pom</pattern> + <pattern>**/*.jar</pattern> + <pattern>**/*.ear</pattern> + <pattern>**/*.war</pattern> + <pattern>**/*.car</pattern> + <pattern>**/*.sar</pattern> + <pattern>**/*.mar</pattern> + <pattern>**/*.rar</pattern> + <pattern>**/*.dtd</pattern> + <pattern>**/*.tld</pattern> + <pattern>**/*.tar.gz</pattern> + <pattern>**/*.tar.bz2</pattern> + <pattern>**/*.zip</pattern> + </patterns> + </fileType> + <fileType> + <id>indexable-content</id> + <patterns> + <pattern>**/*.txt</pattern> + <pattern>**/*.TXT</pattern> + <pattern>**/*.block</pattern> + <pattern>**/*.config</pattern> + <pattern>**/*.pom</pattern> + <pattern>**/*.xml</pattern> + <pattern>**/*.xsd</pattern> + <pattern>**/*.dtd</pattern> + <pattern>**/*.tld</pattern> + </patterns> + </fileType> + <fileType> + <id>auto-remove</id> + <patterns> + <pattern>**/*.bak</pattern> + <pattern>**/*~</pattern> + <pattern>**/*-</pattern> + </patterns> + </fileType> + <fileType> + <id>ignored</id> + <patterns> + <pattern>**/.htaccess</pattern> + <pattern>**/KEYS</pattern> + <pattern>**/*.rb</pattern> + <pattern>**/*.sh</pattern> + <pattern>**/.svn/**</pattern> + <pattern>**/.DAV/**</pattern> + </patterns> + </fileType> + </fileTypes> + <knownContentConsumers> + <knownContentConsumer>update-db-artifact</knownContentConsumer> + <knownContentConsumer>create-missing-checksums</knownContentConsumer> + <knownContentConsumer>update-db-repository-metadata</knownContentConsumer> + <knownContentConsumer>validate-checksum</knownContentConsumer> + <knownContentConsumer>validate-signature</knownContentConsumer> + <knownContentConsumer>index-content</knownContentConsumer> + <knownContentConsumer>auto-remove</knownContentConsumer> + <knownContentConsumer>auto-rename</knownContentConsumer> + </knownContentConsumers> + <invalidContentConsumers> + <invalidContentConsumer>update-db-bad-content</invalidContentConsumer> + </invalidContentConsumers> + </repositoryScanning> + + <databaseScanning> + <cronExpression>0 0 * * * ?</cronExpression> + <unprocessedConsumers> + <unprocessedConsumer>test-db-unprocessed</unprocessedConsumer> + <unprocessedConsumer>update-db-artifact</unprocessedConsumer> + </unprocessedConsumers> + <cleanupConsumers> + <cleanupConsumer>test-db-cleanup</cleanupConsumer> + </cleanupConsumers> + </databaseScanning> + +</configuration> diff --git a/archiva-modules/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/resources/org/apache/archiva/scheduler/repository/ArchivaRepositoryScanningTaskExecutorTest.xml index f903ba33f..183d77281 100644 --- a/archiva-modules/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/resources/org/apache/archiva/scheduler/repository/ArchivaRepositoryScanningTaskExecutorTest.xml @@ -23,7 +23,7 @@ <component> <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role> <role-hint>test-repository-scanning</role-hint> - <implementation>org.apache.maven.archiva.scheduled.executors.ArchivaRepositoryScanningTaskExecutor + <implementation>org.apache.archiva.scheduler.repository.ArchivaRepositoryScanningTaskExecutor </implementation> <description></description> <requirements> @@ -37,7 +37,7 @@ <field-name>archivaConfiguration</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.repository.scanner.RepositoryScanner</role> + <role>org.apache.archiva.repository.scanner.RepositoryScanner</role> <field-name>repoScanner</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-scheduled/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar Binary files differindex cc03dacc1..cc03dacc1 100644 --- a/archiva-modules/archiva-scheduled/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/archiva-index-methods-jar-test-1.0.jar diff --git a/archiva-modules/archiva-scheduled/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/pom.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/pom.xml index e7bf54bda..e7bf54bda 100644 --- a/archiva-modules/archiva-scheduled/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/pom.xml +++ b/archiva-modules/archiva-scheduler/archiva-scheduler-repository/src/test/resources/test-repo/org/apache/archiva/archiva-index-methods-jar-test/1.0/pom.xml diff --git a/archiva-modules/archiva-scheduler/pom.xml b/archiva-modules/archiva-scheduler/pom.xml new file mode 100644 index 000000000..a08c13faf --- /dev/null +++ b/archiva-modules/archiva-scheduler/pom.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-modules</artifactId> + <version>1.3-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-scheduler</artifactId> + <packaging>pom</packaging> + <name>Archiva Base :: Scheduled Tasks</name> + <modules> + <module>archiva-scheduler-api</module> + <module>archiva-scheduler-indexing</module> + <module>archiva-scheduler-database</module> + <module>archiva-scheduler-repository</module> + </modules> +</project>
\ No newline at end of file diff --git a/archiva-modules/archiva-web/archiva-applet/pom.xml b/archiva-modules/archiva-web/archiva-applet/pom.xml index 402ae2208..af8cc7de2 100644 --- a/archiva-modules/archiva-web/archiva-applet/pom.xml +++ b/archiva-modules/archiva-web/archiva-applet/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-web</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-applet</artifactId> <name>Archiva Web :: Applet</name> diff --git a/archiva-modules/archiva-web/archiva-rss/pom.xml b/archiva-modules/archiva-web/archiva-rss/pom.xml index 5f4df508f..95633e203 100644 --- a/archiva-modules/archiva-web/archiva-rss/pom.xml +++ b/archiva-modules/archiva-web/archiva-rss/pom.xml @@ -22,7 +22,7 @@ <parent> <artifactId>archiva-web</artifactId> <groupId>org.apache.archiva</groupId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-rss</artifactId> diff --git a/archiva-modules/archiva-web/archiva-security/pom.xml b/archiva-modules/archiva-web/archiva-security/pom.xml index 109016582..7ad99695f 100644 --- a/archiva-modules/archiva-web/archiva-security/pom.xml +++ b/archiva-modules/archiva-web/archiva-security/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-web</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-security</artifactId> diff --git a/archiva-modules/archiva-web/archiva-webapp-test/pom.xml b/archiva-modules/archiva-web/archiva-webapp-test/pom.xml index 9bd4939c3..d70d16632 100644 --- a/archiva-modules/archiva-web/archiva-webapp-test/pom.xml +++ b/archiva-modules/archiva-web/archiva-webapp-test/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-web</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-webapp-test</artifactId> <packaging>pom</packaging> diff --git a/archiva-modules/archiva-web/archiva-webapp/pom.xml b/archiva-modules/archiva-web/archiva-webapp/pom.xml index be255badf..bd09d0d15 100644 --- a/archiva-modules/archiva-web/archiva-webapp/pom.xml +++ b/archiva-modules/archiva-web/archiva-webapp/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-web</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-webapp</artifactId> <packaging>war</packaging> @@ -39,7 +39,11 @@ </dependency> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-scheduled</artifactId> + <artifactId>archiva-scheduler-repository</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduler-database</artifactId> </dependency> <dependency> <groupId>org.apache.archiva</groupId> @@ -71,6 +75,12 @@ </dependency> <dependency> <groupId>org.apache.archiva</groupId> + <artifactId>archiva-metadata-consumer</artifactId> + <version>1.3-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> <artifactId>archiva-lucene-consumers</artifactId> </dependency> <dependency> @@ -249,6 +259,27 @@ <artifactId>atlassian-xmlrpc-binder-server-spring</artifactId> <scope>runtime</scope> </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-model</artifactId> + <version>1.3-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-repository-api</artifactId> + <version>1.3-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-repository-file</artifactId> + <version>1.3-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> <!-- FIXME: temporary coupling to plugin, should be runtime --> + <artifactId>maven2-repository</artifactId> + <version>1.3-SNAPSHOT</version> + </dependency> </dependencies> <build> <resources> diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/DeleteArtifactAction.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/DeleteArtifactAction.java index 7d2d62b25..de5dc2d4d 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/DeleteArtifactAction.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/DeleteArtifactAction.java @@ -29,6 +29,8 @@ import java.util.Date; import java.util.List; import java.util.TimeZone; +import com.opensymphony.xwork2.Preparable; +import com.opensymphony.xwork2.Validateable; import org.apache.archiva.checksum.ChecksumAlgorithm; import org.apache.archiva.checksum.ChecksummedFile; import org.apache.maven.archiva.common.utils.VersionComparator; @@ -49,6 +51,7 @@ import org.apache.maven.archiva.repository.RepositoryException; import org.apache.maven.archiva.repository.RepositoryNotFoundException; import org.apache.maven.archiva.repository.audit.AuditEvent; import org.apache.maven.archiva.repository.audit.Auditable; +import org.apache.maven.archiva.repository.events.RepositoryListener; import org.apache.maven.archiva.repository.metadata.MetadataTools; import org.apache.maven.archiva.repository.metadata.RepositoryMetadataException; import org.apache.maven.archiva.repository.metadata.RepositoryMetadataReader; @@ -58,9 +61,6 @@ import org.apache.maven.archiva.security.ArchivaSecurityException; import org.apache.maven.archiva.security.PrincipalNotFoundException; import org.apache.maven.archiva.security.UserRepositories; -import com.opensymphony.xwork2.Preparable; -import com.opensymphony.xwork2.Validateable; - /** * Delete an artifact. Metadata will be updated if one exists, otherwise it would be created. * @@ -120,6 +120,9 @@ public class DeleteArtifactAction */ private DatabaseConsumers databaseConsumers; + /** @plexus.requirement role="org.apache.maven.archiva.repository.events.RepositoryListener" */ + private List<RepositoryListener> listeners; + private ChecksumAlgorithm[] algorithms = new ChecksumAlgorithm[] { ChecksumAlgorithm.SHA1, ChecksumAlgorithm.MD5 }; public String getGroupId() @@ -242,7 +245,10 @@ public class DeleteArtifactAction { if ( artifact.getVersion().equals( version ) ) { - databaseConsumers.executeCleanupConsumer( artifact ); + for ( RepositoryListener listener : listeners ) + { + listener.deleteArtifact( repository, artifact ); + } } } } @@ -404,4 +410,9 @@ public class DeleteArtifactAction } return Collections.emptyList(); } + + public List<RepositoryListener> getListeners() + { + return listeners; + } } diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java index 18facd580..f1b63ae2a 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java @@ -19,28 +19,37 @@ package org.apache.maven.archiva.web.action; * under the License. */ +import java.util.ArrayList; import java.util.Collections; import java.util.List; import com.opensymphony.xwork2.Validateable; +import org.apache.archiva.metadata.model.ProjectVersionMetadata; +import org.apache.archiva.metadata.repository.MetadataResolver; +import org.apache.archiva.metadata.repository.storage.maven2.MavenProjectFacet; import org.apache.commons.lang.StringUtils; -import org.apache.maven.archiva.common.utils.VersionUtil; import org.apache.maven.archiva.database.ArchivaDatabaseException; import org.apache.maven.archiva.database.ObjectNotFoundException; import org.apache.maven.archiva.database.browsing.RepositoryBrowsing; import org.apache.maven.archiva.model.ArchivaProjectModel; +import org.apache.maven.archiva.model.CiManagement; import org.apache.maven.archiva.model.Dependency; +import org.apache.maven.archiva.model.IssueManagement; +import org.apache.maven.archiva.model.License; import org.apache.maven.archiva.model.MailingList; +import org.apache.maven.archiva.model.Organization; +import org.apache.maven.archiva.model.Scm; +import org.apache.maven.archiva.model.VersionedReference; import org.apache.maven.archiva.security.AccessDeniedException; import org.apache.maven.archiva.security.ArchivaSecurityException; import org.apache.maven.archiva.security.PrincipalNotFoundException; import org.apache.maven.archiva.security.UserRepositories; /** - * Browse the repository. - * + * Browse the repository. + * * TODO change name to ShowVersionedAction to conform to terminology. - * + * * @plexus.component role="com.opensymphony.xwork2.Action" role-hint="showArtifactAction" instantiation-strategy="per-lookup" */ public class ShowArtifactAction @@ -58,7 +67,12 @@ public class ShowArtifactAction * @plexus.requirement */ private UserRepositories userRepositories; - + + /** + * @plexus.requirement + */ + private MetadataResolver metadataResolver; + /* .\ Exposed Output Objects \.__________________________________ */ private String groupId; @@ -82,45 +96,107 @@ public class ShowArtifactAction private List<MailingList> mailingLists; private List<Dependency> dependencies; - + private List<String> snapshotVersions; /** - * Show the versioned project information tab. TODO: Change name to 'project' + * Show the versioned project information tab. + * TODO: Change name to 'project' - we are showing project versions here, not specific artifact information (though + * that is rendered in the download box). */ public String artifact() - throws ObjectNotFoundException, ArchivaDatabaseException { - try + // In the future, this should be replaced by the repository grouping mechanism, so that we are only making + // simple resource requests here and letting the resolver take care of it + ProjectVersionMetadata versionMetadata = null; + snapshotVersions = new ArrayList<String>(); + for ( String repoId : getObservableRepos() ) { - if( VersionUtil.isSnapshot( version ) ) - { - this.model = - repoBrowsing.selectVersion( getPrincipal(), getObservableRepos(), groupId, artifactId, version ); - - this.snapshotVersions = - repoBrowsing.getOtherSnapshotVersions( getObservableRepos(), groupId, artifactId, version ); - if( this.snapshotVersions.contains( version ) ) + if ( versionMetadata == null ) + { + // TODO: though we have a simple mapping now, do we want to support paths like /1.0-20090111.123456-1/ + // again by mapping it to /1.0-SNAPSHOT/? Currently, the individual versions are not supported as we + // are only displaying the project's single version. + + // we don't want the implementation being that intelligent - so another resolver to do the + // "just-in-time" nature of picking up the metadata (if appropriate for the repository type) is used + versionMetadata = metadataResolver.getProjectVersion( repoId, groupId, artifactId, version ); + if ( versionMetadata != null ) { - this.snapshotVersions.remove( version ); + repositoryId = repoId; + + snapshotVersions.addAll( + metadataResolver.getArtifactVersions( repoId, groupId, artifactId, versionMetadata.getId() ) ); + snapshotVersions.remove( version ); } } - else - { - this.model = - repoBrowsing.selectVersion( getPrincipal(), getObservableRepos(), groupId, artifactId, version ); - } - - this.repositoryId = - repoBrowsing.getRepositoryId( getPrincipal(), getObservableRepos(), groupId, artifactId, version ); } - catch ( ObjectNotFoundException e ) + + if ( versionMetadata == null ) { - log.debug( e.getMessage(), e ); - addActionError( e.getMessage() ); + addActionError( "Artifact not found" ); return ERROR; } + // TODO: eventually, move to just use the metadata directly, with minimal JSP changes, mostly for Maven specifics + model = new ArchivaProjectModel(); + MavenProjectFacet projectFacet = (MavenProjectFacet) versionMetadata.getFacet( MavenProjectFacet.FACET_ID ); + model.setGroupId( projectFacet.getGroupId() ); + model.setArtifactId( projectFacet.getArtifactId() ); + model.setPackaging( projectFacet.getPackaging() ); + if ( projectFacet.getParent() != null ) + { + VersionedReference parent = new VersionedReference(); + parent.setGroupId( projectFacet.getParent().getGroupId() ); + parent.setArtifactId( projectFacet.getParent().getArtifactId() ); + parent.setVersion( projectFacet.getParent().getVersion() ); + model.setParentProject( parent ); + } + + model.setVersion( versionMetadata.getId() ); + model.setDescription( versionMetadata.getDescription() ); + model.setName( versionMetadata.getName() ); + model.setUrl( versionMetadata.getUrl() ); + if ( versionMetadata.getOrganization() != null ) + { + Organization organization = new Organization(); + organization.setName( versionMetadata.getOrganization().getName() ); + organization.setUrl( versionMetadata.getOrganization().getUrl() ); + model.setOrganization( organization ); + } + if ( versionMetadata.getCiManagement() != null ) + { + CiManagement ci = new CiManagement(); + ci.setSystem( versionMetadata.getCiManagement().getSystem() ); + ci.setUrl( versionMetadata.getCiManagement().getUrl() ); + model.setCiManagement( ci ); + } + if ( versionMetadata.getIssueManagement() != null ) + { + IssueManagement issueManagement = new IssueManagement(); + issueManagement.setSystem( versionMetadata.getIssueManagement().getSystem() ); + issueManagement.setUrl( versionMetadata.getIssueManagement().getUrl() ); + model.setIssueManagement( issueManagement ); + } + if ( versionMetadata.getScm() != null ) + { + Scm scm = new Scm(); + scm.setConnection( versionMetadata.getScm().getConnection() ); + scm.setDeveloperConnection( versionMetadata.getScm().getDeveloperConnection() ); + scm.setUrl( versionMetadata.getScm().getUrl() ); + model.setScm( scm ); + } + if ( versionMetadata.getLicenses() != null ) + { + for ( org.apache.archiva.metadata.model.License l : versionMetadata.getLicenses() ) + { + License license = new License(); + license.setName( l.getName() ); + license.setUrl( l.getUrl() ); + model.addLicense( license ); + } + } + return SUCCESS; } @@ -296,4 +372,8 @@ public class ShowArtifactAction this.snapshotVersions = snapshotVersions; } + public MetadataResolver getMetadataResolver() + { + return metadataResolver; + } } diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java index c61ba16ff..18cb2f64d 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java @@ -32,8 +32,12 @@ import java.util.Date; import java.util.List; import java.util.TimeZone; +import com.opensymphony.xwork2.Preparable; +import com.opensymphony.xwork2.Validateable; import org.apache.archiva.checksum.ChecksumAlgorithm; import org.apache.archiva.checksum.ChecksummedFile; +import org.apache.archiva.scheduler.ArchivaTaskScheduler; +import org.apache.archiva.scheduler.repository.RepositoryTask; import org.apache.commons.io.FilenameUtils; import org.apache.commons.lang.StringUtils; import org.apache.maven.archiva.common.utils.VersionComparator; @@ -58,18 +62,12 @@ import org.apache.maven.archiva.repository.metadata.RepositoryMetadataWriter; import org.apache.maven.archiva.repository.project.ProjectModelException; import org.apache.maven.archiva.repository.project.ProjectModelWriter; import org.apache.maven.archiva.repository.project.writers.ProjectModel400Writer; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; import org.apache.maven.archiva.security.AccessDeniedException; import org.apache.maven.archiva.security.ArchivaSecurityException; import org.apache.maven.archiva.security.PrincipalNotFoundException; import org.apache.maven.archiva.security.UserRepositories; import org.codehaus.plexus.taskqueue.TaskQueueException; -import com.opensymphony.xwork2.Preparable; -import com.opensymphony.xwork2.Validateable; - /** * Upload an artifact using Jakarta file upload in webwork. If set by the user a pom will also be generated. Metadata * will also be updated if one exists, otherwise it would be created. @@ -146,7 +144,7 @@ public class UploadAction private RepositoryContentFactory repositoryFactory; /** - * @plexus.requirement + * @plexus.requirement role="org.apache.archiva.scheduler.ArchivaTaskScheduler" role-hint="repository" */ private ArchivaTaskScheduler scheduler; @@ -626,11 +624,15 @@ public class UploadAction private void queueRepositoryTask( String repositoryId, File localFile ) { - RepositoryTask task = TaskCreator.createRepositoryTask( repositoryId, localFile, true, true ); + RepositoryTask task = new RepositoryTask(); + task.setRepositoryId( repositoryId ); + task.setResourceFile( localFile ); + task.setUpdateRelatedArtifacts( true ); + task.setScanAll( true ); try { - scheduler.queueRepositoryTask( task ); + scheduler.queueTask( task ); } catch ( TaskQueueException e ) { diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/SchedulerAction.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/SchedulerAction.java index c6eb4cb7b..f4cab02be 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/SchedulerAction.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/SchedulerAction.java @@ -19,11 +19,11 @@ package org.apache.maven.archiva.web.action.admin; * under the License. */ +import org.apache.archiva.scheduler.database.DatabaseArchivaTaskScheduler; +import org.apache.archiva.scheduler.database.DatabaseTask; +import org.apache.archiva.scheduler.repository.RepositoryArchivaTaskScheduler; +import org.apache.archiva.scheduler.repository.RepositoryTask; import org.apache.commons.lang.StringUtils; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; -import org.apache.maven.archiva.scheduled.tasks.DatabaseTask; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; import org.apache.maven.archiva.security.ArchivaRoleConstants; import org.apache.maven.archiva.web.action.PlexusActionSupport; import org.codehaus.plexus.redback.rbac.Resource; @@ -42,9 +42,14 @@ public class SchedulerAction implements SecureAction { /** - * @plexus.requirement + * @plexus.requirement role="org.apache.archiva.scheduler.ArchivaTaskScheduler" role-hint="repository" */ - private ArchivaTaskScheduler taskScheduler; + private RepositoryArchivaTaskScheduler repositoryTaskScheduler; + + /** + * @plexus.requirement role="org.apache.archiva.scheduler.ArchivaTaskScheduler" role-hint="database" + */ + private DatabaseArchivaTaskScheduler databaseTaskScheduler; private String repoid; @@ -58,9 +63,11 @@ public class SchedulerAction return SUCCESS; } - RepositoryTask task = TaskCreator.createRepositoryTask( repoid, scanAll ); - - if ( taskScheduler.isProcessingRepositoryTask( repoid ) ) + RepositoryTask task = new RepositoryTask(); + task.setRepositoryId( repoid ); + task.setScanAll( scanAll ); + + if ( repositoryTaskScheduler.isProcessingRepositoryTask( repoid ) ) { addActionError( "Repository [" + repoid + "] task was already queued." ); } @@ -69,7 +76,7 @@ public class SchedulerAction try { addActionMessage( "Your request to have repository [" + repoid + "] be indexed has been queued." ); - taskScheduler.queueRepositoryTask( task ); + repositoryTaskScheduler.queueTask( task ); } catch ( TaskQueueException e ) { @@ -87,7 +94,7 @@ public class SchedulerAction log.info( "Queueing database task on request from user interface" ); DatabaseTask task = new DatabaseTask(); - if ( taskScheduler.isProcessingDatabaseTask() ) + if ( databaseTaskScheduler.isProcessingDatabaseTask() ) { addActionError( "Database task was already queued." ); } @@ -95,7 +102,7 @@ public class SchedulerAction { try { - taskScheduler.queueDatabaseTask( task ); + databaseTaskScheduler.queueTask( task ); addActionMessage( "Your request to update the database has been queued." ); } catch ( TaskQueueException e ) diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/database/DatabaseAction.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/database/DatabaseAction.java index 7515fc2aa..58df2bbb3 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/database/DatabaseAction.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/database/DatabaseAction.java @@ -22,6 +22,7 @@ package org.apache.maven.archiva.web.action.admin.database; import java.util.Collections; import java.util.List; +import com.opensymphony.xwork2.Preparable; import org.apache.commons.collections.CollectionUtils; import org.apache.maven.archiva.configuration.ArchivaConfiguration; import org.apache.maven.archiva.configuration.Configuration; @@ -38,8 +39,6 @@ import org.codehaus.redback.integration.interceptor.SecureAction; import org.codehaus.redback.integration.interceptor.SecureActionBundle; import org.codehaus.redback.integration.interceptor.SecureActionException; -import com.opensymphony.xwork2.Preparable; - /** * DatabaseAction * @@ -72,16 +71,6 @@ public class DatabaseAction */ private List<String> enabledUnprocessedConsumers; - /** - * List of {@link AdminDatabaseConsumer} objects for "to cleanup" artifacts. - */ - private List<AdminDatabaseConsumer> cleanupConsumers; - - /** - * List of enabled {@link AdminDatabaseConsumer} objects for "to cleanup" artifacts. - */ - private List<String> enabledCleanupConsumers; - public void prepare() throws Exception { @@ -96,11 +85,6 @@ public class DatabaseAction CollectionUtils.forAllDo( databaseConsumers.getAvailableUnprocessedConsumers(), addAdminDbConsumer ); this.unprocessedConsumers = addAdminDbConsumer.getList(); Collections.sort( this.unprocessedConsumers, AdminDatabaseConsumerComparator.getInstance() ); - - addAdminDbConsumer = new AddAdminDatabaseConsumerClosure( dbscanning.getCleanupConsumers() ); - CollectionUtils.forAllDo( databaseConsumers.getAvailableCleanupConsumers(), addAdminDbConsumer ); - this.cleanupConsumers = addAdminDbConsumer.getList(); - Collections.sort( this.cleanupConsumers, AdminDatabaseConsumerComparator.getInstance() ); } public String updateUnprocessedConsumers() @@ -123,25 +107,6 @@ public class DatabaseAction return saveConfiguration(); } - public String updateCleanupConsumers() - { - List<String> oldConsumers = archivaConfiguration.getConfiguration().getDatabaseScanning().getCleanupConsumers(); - - archivaConfiguration.getConfiguration().getDatabaseScanning().setCleanupConsumers( enabledCleanupConsumers ); - - if ( enabledCleanupConsumers != null ) - { - filterAddedConsumers( oldConsumers, enabledCleanupConsumers ); - filterRemovedConsumers( oldConsumers, enabledCleanupConsumers ); - } - else - { - disableAllEnabledConsumers( oldConsumers ); - } - - return saveConfiguration(); - } - public String updateSchedule() { String oldCron = archivaConfiguration.getConfiguration().getDatabaseScanning().getCronExpression(); @@ -199,12 +164,7 @@ public class DatabaseAction this.cron = cron; } - public List<AdminDatabaseConsumer> getCleanupConsumers() - { - return cleanupConsumers; - } - - public List<AdminDatabaseConsumer> getUnprocessedConsumers() + public List getUnprocessedConsumers() { return unprocessedConsumers; } @@ -219,16 +179,6 @@ public class DatabaseAction this.enabledUnprocessedConsumers = enabledUnprocessedConsumers; } - public List<String> getEnabledCleanupConsumers() - { - return enabledCleanupConsumers; - } - - public void setEnabledCleanupConsumers( List<String> enabledCleanupConsumers ) - { - this.enabledCleanupConsumers = enabledCleanupConsumers; - } - public ArchivaConfiguration getArchivaConfiguration() { return archivaConfiguration; @@ -238,7 +188,7 @@ public class DatabaseAction { this.archivaConfiguration = archivaConfiguration; } - + private void filterAddedConsumers( List<String> oldList, List<String> newList ) { for ( String consumer : newList ) @@ -249,7 +199,7 @@ public class DatabaseAction } } } - + private void filterRemovedConsumers( List<String> oldList, List<String> newList ) { for ( String consumer : oldList ) @@ -260,7 +210,7 @@ public class DatabaseAction } } } - + private void disableAllEnabledConsumers( List<String> enabledConsumers ) { for( String consumer : enabledConsumers ) diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/scanning/RepositoryScanningAction.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/scanning/RepositoryScanningAction.java index 38a7df399..3f465c90a 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/scanning/RepositoryScanningAction.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/scanning/RepositoryScanningAction.java @@ -24,6 +24,9 @@ import java.util.Collections; import java.util.List; import java.util.Map; +import com.opensymphony.xwork2.Preparable; +import com.opensymphony.xwork2.Validateable; +import org.apache.archiva.repository.scanner.RepositoryContentConsumers; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.apache.maven.archiva.configuration.ArchivaConfiguration; @@ -35,7 +38,6 @@ import org.apache.maven.archiva.configuration.functors.FiletypeSelectionPredicat import org.apache.maven.archiva.configuration.functors.FiletypeToMapClosure; import org.apache.maven.archiva.repository.audit.AuditEvent; import org.apache.maven.archiva.repository.audit.Auditable; -import org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers; import org.apache.maven.archiva.security.ArchivaRoleConstants; import org.apache.maven.archiva.web.action.PlexusActionSupport; import org.codehaus.plexus.redback.rbac.Resource; @@ -44,9 +46,6 @@ import org.codehaus.redback.integration.interceptor.SecureAction; import org.codehaus.redback.integration.interceptor.SecureActionBundle; import org.codehaus.redback.integration.interceptor.SecureActionException; -import com.opensymphony.xwork2.Preparable; -import com.opensymphony.xwork2.Validateable; - /** * RepositoryScanningAction * diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/startup/ArchivaStartup.java b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/startup/ArchivaStartup.java index 9adf31458..fb3984362 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/startup/ArchivaStartup.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/startup/ArchivaStartup.java @@ -22,8 +22,10 @@ package org.apache.maven.archiva.web.startup; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; +import org.apache.archiva.scheduler.ArchivaTaskScheduler; +import org.apache.archiva.scheduler.database.DatabaseArchivaTaskScheduler; +import org.apache.archiva.scheduler.repository.RepositoryArchivaTaskScheduler; import org.apache.maven.archiva.common.ArchivaException; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; import org.codehaus.plexus.spring.PlexusToSpringUtils; import org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor; import org.springframework.context.ApplicationContext; @@ -32,28 +34,36 @@ import org.springframework.web.context.WebApplicationContext; import org.springframework.web.context.support.WebApplicationContextUtils; /** - * ArchivaStartup - the startup of all archiva features in a deterministic order. + * ArchivaStartup - the startup of all archiva features in a deterministic order. * * @version $Id$ */ public class ArchivaStartup implements ServletContextListener { - public void contextInitialized(ServletContextEvent contextEvent) { - WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext(contextEvent.getServletContext()); - - SecuritySynchronization securitySync = (SecuritySynchronization) wac.getBean(PlexusToSpringUtils.buildSpringId(SecuritySynchronization.class)); - ResolverFactoryInit resolverFactory = (ResolverFactoryInit) wac.getBean(PlexusToSpringUtils.buildSpringId(ResolverFactoryInit.class)); - ArchivaTaskScheduler taskScheduler = (ArchivaTaskScheduler) wac.getBean(PlexusToSpringUtils.buildSpringId(ArchivaTaskScheduler.class)); - wac.getBean(PlexusToSpringUtils.buildSpringId(TaskQueueExecutor.class, "database-update")); - wac.getBean(PlexusToSpringUtils.buildSpringId(TaskQueueExecutor.class, "repository-scanning")); - wac.getBean(PlexusToSpringUtils.buildSpringId(TaskQueueExecutor.class, "indexing")); + public void contextInitialized( ServletContextEvent contextEvent ) + { + WebApplicationContext wac = + WebApplicationContextUtils.getRequiredWebApplicationContext( contextEvent.getServletContext() ); + + SecuritySynchronization securitySync = + (SecuritySynchronization) wac.getBean( PlexusToSpringUtils.buildSpringId( SecuritySynchronization.class ) ); + ResolverFactoryInit resolverFactory = + (ResolverFactoryInit) wac.getBean( PlexusToSpringUtils.buildSpringId( ResolverFactoryInit.class ) ); + DatabaseArchivaTaskScheduler databaseTaskScheduler = (DatabaseArchivaTaskScheduler) wac.getBean( + PlexusToSpringUtils.buildSpringId( ArchivaTaskScheduler.class, "database" ) ); + RepositoryArchivaTaskScheduler repositoryTaskScheduler = (RepositoryArchivaTaskScheduler) wac.getBean( + PlexusToSpringUtils.buildSpringId( ArchivaTaskScheduler.class, "repository" ) ); + wac.getBean( PlexusToSpringUtils.buildSpringId( TaskQueueExecutor.class, "database-update" ) ); + wac.getBean( PlexusToSpringUtils.buildSpringId( TaskQueueExecutor.class, "repository-scanning" ) ); + wac.getBean( PlexusToSpringUtils.buildSpringId( TaskQueueExecutor.class, "indexing" ) ); try { securitySync.startup(); resolverFactory.startup(); - taskScheduler.startup(); + databaseTaskScheduler.startup(); + repositoryTaskScheduler.startup(); Banner.display(); } catch ( ArchivaException e ) @@ -62,12 +72,13 @@ public class ArchivaStartup } } - public void contextDestroyed(ServletContextEvent contextEvent) + public void contextDestroyed( ServletContextEvent contextEvent ) { - ApplicationContext applicationContext = WebApplicationContextUtils.getRequiredWebApplicationContext(contextEvent.getServletContext()); - if (applicationContext != null && applicationContext instanceof ClassPathXmlApplicationContext) + ApplicationContext applicationContext = + WebApplicationContextUtils.getRequiredWebApplicationContext( contextEvent.getServletContext() ); + if ( applicationContext != null && applicationContext instanceof ClassPathXmlApplicationContext ) { - ((ClassPathXmlApplicationContext)applicationContext).close(); + ( (ClassPathXmlApplicationContext) applicationContext ).close(); } } } diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/admin/database.jsp b/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/admin/database.jsp index 71e0b0272..59324ff4b 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/admin/database.jsp +++ b/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/jsp/admin/database.jsp @@ -116,62 +116,6 @@ </c:otherwise> </c:choose> -<h2>Database - Artifact Cleanup Scanning</h2> - -<c:choose> - <c:when test="${empty (cleanupConsumers)}"> - <%-- No Consumers. Eeek! --%> - <strong>There are no consumers for artifact cleanup.</strong> - </c:when> - <c:otherwise> - <%-- Display the consumers. --%> - - <s:form method="post" action="database!updateCleanupConsumers" - namespace="/admin" validate="false" theme="simple"> - <table class="consumers"> - <tr> - <th> </th> - <th>Enabled?</th> - <th>ID</th> - <th>Description</th> - </tr> - <c:forEach items="${cleanupConsumers}" var="consumer" varStatus="i"> - <c:choose> - <c:when test='${(i.index)%2 eq 0}'> - <c:set var="bgcolor" value="even" scope="page" /> - </c:when> - <c:otherwise> - <c:set var="bgcolor" value="odd" scope="page" /> - </c:otherwise> - </c:choose> - - <tr> - <td class="${bgcolor}"> - <input type="checkbox" name="enabledCleanupConsumers" theme="simple" value="${consumer.id}" <c:if test="${consumer.enabled}">checked</c:if> /> - </td> - <td class="${bgcolor}"> - <c:if test="${consumer.enabled}"> - <strong>enabled</strong> - </c:if> - </td> - <td class="${bgcolor}"> - <code>${consumer.id}</code> - </td> - <td class="${bgcolor}">${consumer.description}</td> - </tr> - </c:forEach> - <tr> - <td colspan="4"> - <s:submit value="Update Consumers" /> - </td> - </tr> - </table> - </s:form> - - </c:otherwise> -</c:choose> - - </div> </div> </body> diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/archiva/metadata/repository/memory/TestMetadataResolver.java b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/archiva/metadata/repository/memory/TestMetadataResolver.java new file mode 100644 index 000000000..2b48830dc --- /dev/null +++ b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/archiva/metadata/repository/memory/TestMetadataResolver.java @@ -0,0 +1,73 @@ +package org.apache.archiva.metadata.repository.memory; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.util.Collection; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.apache.archiva.metadata.model.ProjectVersionMetadata; +import org.apache.archiva.metadata.model.ProjectMetadata; +import org.apache.archiva.metadata.repository.MetadataResolver; + +public class TestMetadataResolver + implements MetadataResolver +{ + private Map<String, ProjectVersionMetadata> projectVersions = new HashMap<String, ProjectVersionMetadata>(); + + private Map<String, List<String>> artifactVersions = new HashMap<String, List<String>>(); + + public ProjectMetadata getProject( String repoId, String namespace, String projectId ) + { + ProjectMetadata metadata = new ProjectMetadata(); + metadata.setNamespace( namespace ); + metadata.setId( projectId ); + return metadata; + } + + public ProjectVersionMetadata getProjectVersion( String repoId, String namespace, String projectId, String projectVersion ) + { + return projectVersions.get( createMapKey( repoId, namespace, projectId, projectVersion ) ); + } + + public Collection<String> getArtifactVersions( String repoId, String namespace, String projectId, String projectVersion ) + { + List<String> versions = artifactVersions.get( createMapKey( repoId, namespace, projectId, projectVersion ) ); + return ( versions != null ? versions : Collections.<String>emptyList() ); + } + + public void setProjectVersion( String repoId, String namespace, String projectId, ProjectVersionMetadata versionMetadata ) + { + projectVersions.put( createMapKey( repoId, namespace, projectId, versionMetadata.getId() ), versionMetadata ); + } + + public void setArtifactVersions( String repoId, String namespace, String projectId, String version, + List<String> versions ) + { + artifactVersions.put( createMapKey( repoId, namespace, projectId, version ), versions ); + } + + private String createMapKey( String repoId, String namespace, String projectId, String projectVersion ) + { + return repoId + ":" + namespace + ":" + projectId + ":" + projectVersion; + } +} diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/DeleteArtifactActionTest.java b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/DeleteArtifactActionTest.java new file mode 100644 index 000000000..45446707b --- /dev/null +++ b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/DeleteArtifactActionTest.java @@ -0,0 +1,36 @@ +package org.apache.maven.archiva.web.action; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import com.opensymphony.xwork2.Action; +import org.codehaus.plexus.spring.PlexusInSpringTestCase; + +public class DeleteArtifactActionTest + extends PlexusInSpringTestCase +{ + public void testGetListeners() + throws Exception + { + DeleteArtifactAction action = (DeleteArtifactAction) lookup( Action.class.getName(), "deleteArtifactAction" ); + assertNotNull( action ); + assertNotNull( action.getListeners() ); + assertFalse( action.getListeners().isEmpty() ); + } +} diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/ShowArtifactActionTest.java b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/ShowArtifactActionTest.java index 259121a08..5d4ab0853 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/ShowArtifactActionTest.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/ShowArtifactActionTest.java @@ -24,25 +24,19 @@ import java.util.Collections; import java.util.List; import com.opensymphony.xwork2.Action; -import org.apache.maven.archiva.database.ArchivaDAO; -import org.apache.maven.archiva.database.ArchivaDatabaseException; -import org.apache.maven.archiva.database.ArtifactDAO; -import org.apache.maven.archiva.database.ProjectModelDAO; -import org.apache.maven.archiva.database.constraints.ArtifactsRelatedConstraint; -import org.apache.maven.archiva.model.ArchivaArtifact; -import org.apache.maven.archiva.model.ArchivaArtifactModel; +import org.apache.archiva.metadata.model.CiManagement; +import org.apache.archiva.metadata.model.IssueManagement; +import org.apache.archiva.metadata.model.License; +import org.apache.archiva.metadata.model.Organization; +import org.apache.archiva.metadata.model.ProjectVersionMetadata; +import org.apache.archiva.metadata.model.Scm; +import org.apache.archiva.metadata.repository.memory.TestMetadataResolver; +import org.apache.archiva.metadata.repository.storage.maven2.MavenProjectFacet; +import org.apache.archiva.metadata.repository.storage.maven2.MavenProjectParent; import org.apache.maven.archiva.model.ArchivaProjectModel; -import org.apache.maven.archiva.model.CiManagement; -import org.apache.maven.archiva.model.IssueManagement; -import org.apache.maven.archiva.model.License; -import org.apache.maven.archiva.model.Organization; -import org.apache.maven.archiva.model.Scm; -import org.apache.maven.archiva.model.VersionedReference; import org.apache.maven.archiva.security.UserRepositories; import org.apache.maven.archiva.security.UserRepositoriesStub; -import org.apache.maven.archiva.web.action.admin.repositories.ArchivaDAOStub; import org.codehaus.plexus.spring.PlexusInSpringTestCase; -import org.easymock.MockControl; public class ShowArtifactActionTest extends PlexusInSpringTestCase @@ -97,32 +91,28 @@ public class ShowArtifactActionTest private static final String TEST_SCM_URL = "scmUrl"; - private ShowArtifactAction action; - private static final String TEST_SNAPSHOT_VERSION = "1.0-SNAPSHOT"; private static final String TEST_TS_SNAPSHOT_VERSION = "1.0-20091120.111111-1"; - private ArchivaDAOStub archivaDao; - private static final List<String> ALL_TEST_SNAPSHOT_VERSIONS = Arrays.asList( TEST_TS_SNAPSHOT_VERSION, "1.0-20091120.222222-2", "1.0-20091123.333333-3" ); private static final String OTHER_TEST_REPO = "first-repo"; + private ShowArtifactAction action; + + private TestMetadataResolver metadataResolver; + public void testInstantiation() { assertFalse( action == lookup( Action.class, ACTION_HINT ) ); } public void testGetArtifactUniqueRelease() - throws ArchivaDatabaseException { - List<ArchivaArtifact> artifacts = - Collections.singletonList( createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ) ); - MockControl artifactDaoMockControl = createArtifactDaoMock( artifacts, 2 ); - MockControl projectDaoMockControl = - createProjectDaoMock( createProjectModel( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ) ); + metadataResolver.setProjectVersion( TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, + createProjectModel( TEST_VERSION ) ); setActionParameters(); @@ -130,9 +120,6 @@ public class ShowArtifactActionTest assertActionSuccess( action, result ); - artifactDaoMockControl.verify(); - projectDaoMockControl.verify(); - assertActionParameters( action ); ArchivaProjectModel model = action.getModel(); assertDefaultModel( model ); @@ -142,18 +129,15 @@ public class ShowArtifactActionTest assertNull( action.getDependees() ); assertNull( action.getDependencies() ); assertNull( action.getMailingLists() ); - assertNull( action.getSnapshotVersions() ); + assertTrue( action.getSnapshotVersions().isEmpty() ); } public void testGetArtifactUniqueSnapshot() - throws ArchivaDatabaseException { - List<ArchivaArtifact> artifacts = - Collections.singletonList( createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_SNAPSHOT_VERSION ) ); - MockControl artifactDaoMockControl = createArtifactDaoMock( artifacts, TEST_SNAPSHOT_VERSION, 2 ); - MockControl projectDaoMockControl = - createProjectDaoMock( createProjectModel( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_SNAPSHOT_VERSION ) ); - archivaDao.setVersions( ALL_TEST_SNAPSHOT_VERSIONS ); + metadataResolver.setProjectVersion( TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, + createProjectModel( TEST_SNAPSHOT_VERSION ) ); + metadataResolver.setArtifactVersions( TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_SNAPSHOT_VERSION, + ALL_TEST_SNAPSHOT_VERSIONS ); action.setGroupId( TEST_GROUP_ID ); action.setArtifactId( TEST_ARTIFACT_ID ); @@ -163,9 +147,6 @@ public class ShowArtifactActionTest assertActionSuccess( action, result ); - artifactDaoMockControl.verify(); - projectDaoMockControl.verify(); - assertEquals( TEST_GROUP_ID, action.getGroupId() ); assertEquals( TEST_ARTIFACT_ID, action.getArtifactId() ); assertEquals( TEST_SNAPSHOT_VERSION, action.getVersion() ); @@ -182,14 +163,11 @@ public class ShowArtifactActionTest } public void testGetArtifactUniqueSnapshotTimestamped() - throws ArchivaDatabaseException { - List<ArchivaArtifact> artifacts = - Collections.singletonList( createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_TS_SNAPSHOT_VERSION ) ); - MockControl artifactDaoMockControl = createArtifactDaoMock( artifacts, TEST_TS_SNAPSHOT_VERSION, 2 ); - MockControl projectDaoMockControl = - createProjectDaoMock( createProjectModel( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_TS_SNAPSHOT_VERSION ) ); - archivaDao.setVersions( ALL_TEST_SNAPSHOT_VERSIONS ); + metadataResolver.setProjectVersion( TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, + createProjectModel( TEST_TS_SNAPSHOT_VERSION ) ); + metadataResolver.setArtifactVersions( TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_TS_SNAPSHOT_VERSION, + ALL_TEST_SNAPSHOT_VERSIONS ); action.setGroupId( TEST_GROUP_ID ); action.setArtifactId( TEST_ARTIFACT_ID ); @@ -199,9 +177,6 @@ public class ShowArtifactActionTest assertActionSuccess( action, result ); - artifactDaoMockControl.verify(); - projectDaoMockControl.verify(); - assertEquals( TEST_GROUP_ID, action.getGroupId() ); assertEquals( TEST_ARTIFACT_ID, action.getArtifactId() ); assertEquals( TEST_TS_SNAPSHOT_VERSION, action.getVersion() ); @@ -219,71 +194,49 @@ public class ShowArtifactActionTest } public void testGetMissingProject() - throws ArchivaDatabaseException { - MockControl artifactDaoMockControl = createArtifactDaoMock( Collections.<ArchivaArtifact>emptyList(), 1 ); - setActionParameters(); String result = action.artifact(); assertError( result ); - artifactDaoMockControl.verify(); - assertActionParameters( action ); assertNoOutputFields(); } public void testGetArtifactNoObservableRepos() - throws ArchivaDatabaseException { setObservableRepos( Collections.<String>emptyList() ); setActionParameters(); - try - { - action.artifact(); - - // Actually, it'd be better to have an error: -// assertError( result ); -// assertActionParameters( action ); -// assertNoOutputFields(); - fail(); - } - catch ( ArchivaDatabaseException e ) - { - assertTrue( true ); - } + String result = action.artifact(); + + // Actually, it'd be better to have an error: + assertError( result ); + assertActionParameters( action ); + assertNoOutputFields(); } public void testGetArtifactNotInObservableRepos() - throws ArchivaDatabaseException { - List<ArchivaArtifact> artifacts = Collections.singletonList( - createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION, OTHER_TEST_REPO ) ); - MockControl artifactDaoMockControl = createArtifactDaoMock( artifacts, 1 ); + metadataResolver.setProjectVersion( OTHER_TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, + createProjectModel( TEST_VERSION ) ); setActionParameters(); String result = action.artifact(); assertError( result ); - artifactDaoMockControl.verify(); - assertActionParameters( action ); assertNoOutputFields(); } public void testGetArtifactOnlySeenInSecondObservableRepo() - throws ArchivaDatabaseException { setObservableRepos( Arrays.asList( OTHER_TEST_REPO, TEST_REPO ) ); - List<ArchivaArtifact> artifacts = - Collections.singletonList( createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ) ); - MockControl artifactDaoMockControl = createArtifactDaoMock( artifacts, 2 ); - MockControl projectDaoMockControl = - createProjectDaoMock( createProjectModel( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ) ); + metadataResolver.setProjectVersion( TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, + createProjectModel( TEST_VERSION ) ); setActionParameters(); @@ -291,9 +244,6 @@ public class ShowArtifactActionTest assertActionSuccess( action, result ); - artifactDaoMockControl.verify(); - projectDaoMockControl.verify(); - assertActionParameters( action ); ArchivaProjectModel model = action.getModel(); assertDefaultModel( model ); @@ -303,19 +253,16 @@ public class ShowArtifactActionTest assertNull( action.getDependees() ); assertNull( action.getDependencies() ); assertNull( action.getMailingLists() ); - assertNull( action.getSnapshotVersions() ); + assertTrue( action.getSnapshotVersions().isEmpty() ); } public void testGetArtifactSeenInBothObservableRepo() - throws ArchivaDatabaseException { - setObservableRepos( Arrays.asList( OTHER_TEST_REPO, TEST_REPO ) ); - List<ArchivaArtifact> artifacts = - Arrays.asList( createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ), - createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION, OTHER_TEST_REPO ) ); - MockControl artifactDaoMockControl = createArtifactDaoMock( artifacts, 2 ); - MockControl projectDaoMockControl = - createProjectDaoMock( createProjectModel( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ) ); + setObservableRepos( Arrays.asList( TEST_REPO, OTHER_TEST_REPO ) ); + metadataResolver.setProjectVersion( TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, + createProjectModel( TEST_VERSION ) ); + metadataResolver.setProjectVersion( OTHER_TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, + createProjectModel( TEST_VERSION ) ); setActionParameters(); @@ -323,9 +270,6 @@ public class ShowArtifactActionTest assertActionSuccess( action, result ); - artifactDaoMockControl.verify(); - projectDaoMockControl.verify(); - assertActionParameters( action ); ArchivaProjectModel model = action.getModel(); assertDefaultModel( model ); @@ -335,19 +279,16 @@ public class ShowArtifactActionTest assertNull( action.getDependees() ); assertNull( action.getDependencies() ); assertNull( action.getMailingLists() ); - assertNull( action.getSnapshotVersions() ); + assertTrue( action.getSnapshotVersions().isEmpty() ); } public void testGetArtifactCanOnlyObserveInOneOfTwoRepos() - throws ArchivaDatabaseException { setObservableRepos( Arrays.asList( TEST_REPO ) ); - List<ArchivaArtifact> artifacts = - Arrays.asList( createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION, OTHER_TEST_REPO ), - createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ) ); - MockControl artifactDaoMockControl = createArtifactDaoMock( artifacts, 2 ); - MockControl projectDaoMockControl = - createProjectDaoMock( createProjectModel( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ) ); + metadataResolver.setProjectVersion( OTHER_TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, + createProjectModel( TEST_VERSION ) ); + metadataResolver.setProjectVersion( TEST_REPO, TEST_GROUP_ID, TEST_ARTIFACT_ID, + createProjectModel( TEST_VERSION ) ); setActionParameters(); @@ -355,9 +296,6 @@ public class ShowArtifactActionTest assertActionSuccess( action, result ); - artifactDaoMockControl.verify(); - projectDaoMockControl.verify(); - assertActionParameters( action ); ArchivaProjectModel model = action.getModel(); assertDefaultModel( model ); @@ -367,7 +305,7 @@ public class ShowArtifactActionTest assertNull( action.getDependees() ); assertNull( action.getDependencies() ); assertNull( action.getMailingLists() ); - assertNull( action.getSnapshotVersions() ); + assertTrue( action.getSnapshotVersions().isEmpty() ); } private void assertNoOutputFields() @@ -376,7 +314,7 @@ public class ShowArtifactActionTest assertNull( action.getDependees() ); assertNull( action.getDependencies() ); assertNull( action.getMailingLists() ); - assertNull( action.getSnapshotVersions() ); + assertTrue( action.getSnapshotVersions().isEmpty() ); } private void assertError( String result ) @@ -401,22 +339,18 @@ public class ShowArtifactActionTest assertEquals( TEST_GROUP_ID, model.getGroupId() ); assertEquals( TEST_ARTIFACT_ID, model.getArtifactId() ); assertEquals( version, model.getVersion() ); - assertEquals( TEST_PACKAGING, model.getPackaging() ); assertEquals( TEST_URL, model.getUrl() ); assertEquals( TEST_NAME, model.getName() ); assertEquals( TEST_DESCRIPTION, model.getDescription() ); assertEquals( TEST_ORGANIZATION_NAME, model.getOrganization().getName() ); assertEquals( TEST_ORGANIZATION_URL, model.getOrganization().getUrl() ); assertEquals( 2, model.getLicenses().size() ); - License l = model.getLicenses().get( 0 ); + org.apache.maven.archiva.model.License l = model.getLicenses().get( 0 ); assertEquals( TEST_LICENSE_NAME, l.getName() ); assertEquals( TEST_LICENSE_URL, l.getUrl() ); l = model.getLicenses().get( 1 ); assertEquals( TEST_LICENSE_NAME_2, l.getName() ); assertEquals( TEST_LICENSE_URL_2, l.getUrl() ); - assertEquals( TEST_PARENT_GROUP_ID, model.getParentProject().getGroupId() ); - assertEquals( TEST_PARENT_ARTIFACT_ID, model.getParentProject().getArtifactId() ); - assertEquals( TEST_PARENT_VERSION, model.getParentProject().getVersion() ); assertEquals( TEST_ISSUE_SYSTEM, model.getIssueManagement().getSystem() ); assertEquals( TEST_ISSUE_URL, model.getIssueManagement().getUrl() ); assertEquals( TEST_CI_SYSTEM, model.getCiManagement().getSystem() ); @@ -424,6 +358,11 @@ public class ShowArtifactActionTest assertEquals( TEST_SCM_CONNECTION, model.getScm().getConnection() ); assertEquals( TEST_SCM_DEV_CONNECTION, model.getScm().getDeveloperConnection() ); assertEquals( TEST_SCM_URL, model.getScm().getUrl() ); + + assertEquals( TEST_PACKAGING, model.getPackaging() ); + assertEquals( TEST_PARENT_GROUP_ID, model.getParentProject().getGroupId() ); + assertEquals( TEST_PARENT_ARTIFACT_ID, model.getParentProject().getArtifactId() ); + assertEquals( TEST_PARENT_VERSION, model.getParentProject().getVersion() ); } private void setActionParameters() @@ -447,21 +386,13 @@ public class ShowArtifactActionTest assertTrue( action.getActionMessages().isEmpty() ); } - private ArchivaProjectModel createProjectModel( String groupId, String artifactId, String version ) + private ProjectVersionMetadata createProjectModel( String version ) { - ArchivaProjectModel model = new ArchivaProjectModel(); - model.setGroupId( groupId ); - model.setArtifactId( artifactId ); - model.setVersion( version ); - model.setPackaging( TEST_PACKAGING ); + ProjectVersionMetadata model = new ProjectVersionMetadata(); + model.setId( version ); model.setUrl( TEST_URL ); model.setName( TEST_NAME ); model.setDescription( TEST_DESCRIPTION ); - VersionedReference parent = new VersionedReference(); - parent.setGroupId( TEST_PARENT_GROUP_ID ); - parent.setArtifactId( TEST_PARENT_ARTIFACT_ID ); - parent.setVersion( TEST_PARENT_VERSION ); - model.setParentProject( parent ); CiManagement ci = new CiManagement(); ci.setSystem( TEST_CI_SYSTEM ); ci.setUrl( TEST_CI_URL ); @@ -470,10 +401,10 @@ public class ShowArtifactActionTest issue.setSystem( TEST_ISSUE_SYSTEM ); issue.setUrl( TEST_ISSUE_URL ); model.setIssueManagement( issue ); - Organization org = new Organization(); - org.setName( TEST_ORGANIZATION_NAME ); - org.setUrl( TEST_ORGANIZATION_URL ); - model.setOrganization( org ); + Organization organization = new Organization(); + organization.setName( TEST_ORGANIZATION_NAME ); + organization.setUrl( TEST_ORGANIZATION_URL ); + model.setOrganization( organization ); License l = new License(); l.setName( TEST_LICENSE_NAME ); l.setUrl( TEST_LICENSE_URL ); @@ -487,59 +418,18 @@ public class ShowArtifactActionTest scm.setDeveloperConnection( TEST_SCM_DEV_CONNECTION ); scm.setUrl( TEST_SCM_URL ); model.setScm( scm ); - return model; - } - - private MockControl createArtifactDaoMock( List<ArchivaArtifact> artifacts, int count ) - throws ArchivaDatabaseException - { - return createArtifactDaoMock( artifacts, TEST_VERSION, count ); - } - - private MockControl createArtifactDaoMock( List<ArchivaArtifact> artifacts, String version, int count ) - throws ArchivaDatabaseException - { - // testing deeper than normal with the mocks as we intend to replace RepositoryBrowsing, not just the database - // underneath it - those sections will be adjusted with a mock content repository later - MockControl control = MockControl.createNiceControl( ArtifactDAO.class ); - ArtifactDAO dao = (ArtifactDAO) control.getMock(); - archivaDao.setArtifactDao( dao ); - - ArtifactsRelatedConstraint c = new ArtifactsRelatedConstraint( TEST_GROUP_ID, TEST_ARTIFACT_ID, version ); - dao.queryArtifacts( c ); - control.setReturnValue( artifacts, count ); - - control.replay(); - return control; - } - private MockControl createProjectDaoMock( ArchivaProjectModel project ) - throws ArchivaDatabaseException - { - MockControl control = MockControl.createNiceControl( ProjectModelDAO.class ); - ProjectModelDAO dao = (ProjectModelDAO) control.getMock(); - archivaDao.setProjectDao( dao ); - - control.expectAndReturn( - dao.getProjectModel( project.getGroupId(), project.getArtifactId(), project.getVersion() ), project ); - - control.replay(); - return control; - } - - private ArchivaArtifact createArtifact( String groupId, String artifactId, String version ) - { - return createArtifact( groupId, artifactId, version, TEST_REPO ); - } - - private ArchivaArtifact createArtifact( String groupId, String artifactId, String version, String repoId ) - { - ArchivaArtifactModel model = new ArchivaArtifactModel(); - model.setGroupId( groupId ); - model.setArtifactId( artifactId ); - model.setVersion( version ); - model.setRepositoryId( repoId ); - return new ArchivaArtifact( model ); + MavenProjectFacet mavenProjectFacet = new MavenProjectFacet(); + mavenProjectFacet.setGroupId( TEST_GROUP_ID ); + mavenProjectFacet.setArtifactId( TEST_ARTIFACT_ID ); + mavenProjectFacet.setPackaging( TEST_PACKAGING ); + MavenProjectParent parent = new MavenProjectParent(); + parent.setGroupId( TEST_PARENT_GROUP_ID ); + parent.setArtifactId( TEST_PARENT_ARTIFACT_ID ); + parent.setVersion( TEST_PARENT_VERSION ); + mavenProjectFacet.setParent( parent ); + model.addFacet( mavenProjectFacet ); + return model; } protected void setUp() @@ -547,6 +437,6 @@ public class ShowArtifactActionTest { super.setUp(); action = (ShowArtifactAction) lookup( Action.class, ACTION_HINT ); - archivaDao = (ArchivaDAOStub) lookup( ArchivaDAO.class, "jdo" ); + metadataResolver = (TestMetadataResolver) action.getMetadataResolver(); } } diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/UploadActionTest.java b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/UploadActionTest.java index f86660c56..9131af530 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/UploadActionTest.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/UploadActionTest.java @@ -23,8 +23,10 @@ import java.io.File; import java.io.IOException; import java.util.ArrayList; +import com.opensymphony.xwork2.Action; import org.apache.archiva.checksum.ChecksumAlgorithm; import org.apache.archiva.checksum.ChecksummedFile; +import org.apache.archiva.scheduler.ArchivaTaskScheduler; import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; import org.apache.maven.archiva.configuration.ArchivaConfiguration; @@ -36,13 +38,10 @@ import org.apache.maven.archiva.repository.RepositoryContentFactory; import org.apache.maven.archiva.repository.RepositoryNotFoundException; import org.apache.maven.archiva.repository.content.ManagedDefaultRepositoryContent; import org.apache.maven.archiva.repository.metadata.MetadataTools; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; import org.codehaus.plexus.spring.PlexusInSpringTestCase; import org.easymock.MockControl; import org.easymock.classextension.MockClassControl; -import com.opensymphony.xwork2.Action; - /** * UploadActionTest */ diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/database/DatabaseActionTest.java b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/database/DatabaseActionTest.java index a47535ea5..361c1dd4b 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/database/DatabaseActionTest.java +++ b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/database/DatabaseActionTest.java @@ -72,7 +72,6 @@ public class DatabaseActionTest config.setDatabaseScanning( databaseScanningConfig ); setUpEnabledUnproccessedConsumers(); - setUpEnabledCleanupConsumers(); action.setArchivaConfiguration( archivaConfig ); } @@ -101,24 +100,6 @@ public class DatabaseActionTest assertEquals( 3, results.size() ); } - public void testUpdateCleanUpConsumers() - throws Exception - { - archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config ); - archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config ); - archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config ); - - archivaConfig.save( config ); - archivaConfigControl.replay(); - - String returnString = action.updateCleanupConsumers(); - - List<String> results = config.getDatabaseScanning().getCleanupConsumers(); - - assertEquals( action.SUCCESS, returnString ); - assertEquals( 3, results.size() ); - } - public void testDisableAllUnprocessedConsumers( ) throws Exception { @@ -139,26 +120,6 @@ public class DatabaseActionTest assertEquals( 0, results.size() ); } - public void testDisableAllCleanupConsumers( ) - throws Exception - { - archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config ); - archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config ); - archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config ); - - archivaConfig.save( config ); - archivaConfigControl.replay(); - - action.setEnabledCleanupConsumers( null ); - - String returnString = action.updateCleanupConsumers(); - - List<String> results = config.getDatabaseScanning().getCleanupConsumers(); - - assertEquals( action.SUCCESS, returnString ); - assertEquals( 0, results.size() ); - } - private void setUpEnabledUnproccessedConsumers( ) { List<String> enabledUnprocessedConsumer = new ArrayList<String>(); @@ -168,17 +129,5 @@ public class DatabaseActionTest enabledUnprocessedConsumer.add( "validate-repository-metadata" ); action.setEnabledUnprocessedConsumers( enabledUnprocessedConsumer ); - } - - private void setUpEnabledCleanupConsumers( ) - { - List<String> enabledCleanupConsumers = new ArrayList<String>(); - - enabledCleanupConsumers.add( "not-present-remove-db-artifact" ); - enabledCleanupConsumers.add( "not-present-remove-db-project" ); - enabledCleanupConsumers.add( "not-present-remove-indexed" ); - - action.setEnabledCleanupConsumers( enabledCleanupConsumers ); - } - + } } diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/RepositoryProblemDAOStub.java b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/RepositoryProblemDAOStub.java new file mode 100644 index 000000000..8203c0d3d --- /dev/null +++ b/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/RepositoryProblemDAOStub.java @@ -0,0 +1,55 @@ +package org.apache.maven.archiva.web.action.admin.repositories; + +import java.util.List; + +import org.apache.maven.archiva.database.ArchivaDatabaseException; +import org.apache.maven.archiva.database.Constraint; +import org.apache.maven.archiva.database.ObjectNotFoundException; +import org.apache.maven.archiva.database.RepositoryProblemDAO; +import org.apache.maven.archiva.model.RepositoryProblem; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/** + * Stub class for Archiva DAO to avoid having to set up a database for tests. + * + * @todo a mock would be better, but that won't play nicely with Plexus injection. + */ +public class RepositoryProblemDAOStub + implements RepositoryProblemDAO +{ + public List<RepositoryProblem> queryRepositoryProblems( Constraint constraint ) + throws ObjectNotFoundException, ArchivaDatabaseException + { + throw new UnsupportedOperationException( "not implemented for stub" ); + } + + public RepositoryProblem saveRepositoryProblem( RepositoryProblem problem ) + throws ArchivaDatabaseException + { + throw new UnsupportedOperationException( "not implemented for stub" ); + } + + public void deleteRepositoryProblem( RepositoryProblem problem ) + throws ArchivaDatabaseException + { + throw new UnsupportedOperationException( "not implemented for stub" ); + } +}
\ No newline at end of file diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/resources/org/apache/maven/archiva/web/action/DeleteArtifactActionTest.xml b/archiva-modules/archiva-web/archiva-webapp/src/test/resources/org/apache/maven/archiva/web/action/DeleteArtifactActionTest.xml new file mode 100644 index 000000000..e2ebee50c --- /dev/null +++ b/archiva-modules/archiva-web/archiva-webapp/src/test/resources/org/apache/maven/archiva/web/action/DeleteArtifactActionTest.xml @@ -0,0 +1,54 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<plexus> + <components> + <component> + <role>org.apache.maven.archiva.database.ArchivaDAO</role> + <role-hint>jdo</role-hint> + <implementation>org.apache.maven.archiva.web.action.admin.repositories.ArchivaDAOStub</implementation> + <requirements> + <requirement> + <role>org.apache.maven.archiva.configuration.ArchivaConfiguration</role> + <field-name>configuration</field-name> + </requirement> + </requirements> + </component> + <component> + <role>org.apache.maven.archiva.database.RepositoryProblemDAO</role> + <role-hint>jdo</role-hint> + <implementation>org.apache.maven.archiva.web.action.admin.repositories.RepositoryProblemDAOStub</implementation> + </component> + <component> + <role>org.apache.maven.archiva.database.ProjectModelDAO</role> + <role-hint>jdo</role-hint> + <implementation>org.apache.maven.archiva.web.action.admin.repositories.ProjectModelDAOStub</implementation> + </component> + <component> + <role>org.apache.maven.archiva.database.ArtifactDAO</role> + <role-hint>jdo</role-hint> + <implementation>org.apache.maven.archiva.web.action.admin.repositories.ArtifactDAOStub</implementation> + </component> + <component> + <role>org.apache.maven.archiva.security.UserRepositories</role> + <role-hint>default</role-hint> + <implementation>org.apache.maven.archiva.security.UserRepositoriesStub</implementation> + </component> + </components> +</plexus> diff --git a/archiva-modules/archiva-web/archiva-webapp/src/test/resources/org/apache/maven/archiva/web/action/ShowArtifactActionTest.xml b/archiva-modules/archiva-web/archiva-webapp/src/test/resources/org/apache/maven/archiva/web/action/ShowArtifactActionTest.xml index d51572b7f..aab8338b6 100644 --- a/archiva-modules/archiva-web/archiva-webapp/src/test/resources/org/apache/maven/archiva/web/action/ShowArtifactActionTest.xml +++ b/archiva-modules/archiva-web/archiva-webapp/src/test/resources/org/apache/maven/archiva/web/action/ShowArtifactActionTest.xml @@ -35,5 +35,11 @@ <role-hint>default</role-hint> <implementation>org.apache.maven.archiva.security.UserRepositoriesStub</implementation> </component> + <component> + <role>org.apache.archiva.metadata.repository.MetadataResolver</role> + <role-hint>default</role-hint> + <implementation>org.apache.archiva.metadata.repository.memory.TestMetadataResolver</implementation> + <instantiation-strategy>per-lookup</instantiation-strategy> + </component> </components> </plexus> diff --git a/archiva-modules/archiva-web/archiva-webdav/pom.xml b/archiva-modules/archiva-web/archiva-webdav/pom.xml index 743f14045..95341522e 100644 --- a/archiva-modules/archiva-web/archiva-webdav/pom.xml +++ b/archiva-modules/archiva-web/archiva-webdav/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-web</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-webdav</artifactId> @@ -36,11 +36,11 @@ </dependency> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-repository-layer</artifactId> + <artifactId>archiva-repository-scanner</artifactId> </dependency> <dependency> - <groupId>org.apache.archiva</groupId> - <artifactId>archiva-scheduled</artifactId> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-repository-layer</artifactId> </dependency> <dependency> <groupId>org.apache.archiva</groupId> diff --git a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java index 113aba0e5..eff87127e 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java @@ -25,9 +25,11 @@ import java.io.FileOutputStream; import java.io.IOException; import java.util.ArrayList; import java.util.List; - import javax.servlet.http.HttpServletResponse; +import org.apache.archiva.scheduler.ArchivaTaskScheduler; +import org.apache.archiva.scheduler.repository.RepositoryArchivaTaskScheduler; +import org.apache.archiva.scheduler.repository.RepositoryTask; import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; import org.apache.jackrabbit.util.Text; @@ -56,9 +58,6 @@ import org.apache.jackrabbit.webdav.property.ResourceType; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.repository.audit.AuditEvent; import org.apache.maven.archiva.repository.audit.AuditListener; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; import org.apache.maven.archiva.webdav.util.IndexWriter; import org.apache.maven.archiva.webdav.util.MimeTypes; import org.codehaus.plexus.taskqueue.TaskQueueException; @@ -108,7 +107,7 @@ public class ArchivaDavResource public ArchivaDavResource( String localResource, String logicalResource, ManagedRepositoryConfiguration repository, DavSession session, ArchivaDavResourceLocator locator, DavResourceFactory factory, MimeTypes mimeTypes, List<AuditListener> auditListeners, - ArchivaTaskScheduler scheduler ) + RepositoryArchivaTaskScheduler scheduler ) { this.localResource = new File( localResource ); this.logicalResource = logicalResource; @@ -128,7 +127,7 @@ public class ArchivaDavResource public ArchivaDavResource( String localResource, String logicalResource, ManagedRepositoryConfiguration repository, String remoteAddr, String principal, DavSession session, ArchivaDavResourceLocator locator, DavResourceFactory factory, MimeTypes mimeTypes, List<AuditListener> auditListeners, - ArchivaTaskScheduler scheduler ) + RepositoryArchivaTaskScheduler scheduler ) { this( localResource, logicalResource, repository, session, locator, factory, mimeTypes, auditListeners, scheduler ); @@ -645,11 +644,15 @@ public class ArchivaDavResource private void queueRepositoryTask( File localFile ) { - RepositoryTask task = TaskCreator.createRepositoryTask( repository.getId(), localFile, false, true ); - + RepositoryTask task = new RepositoryTask(); + task.setRepositoryId( repository.getId() ); + task.setResourceFile( localFile ); + task.setUpdateRelatedArtifacts( false ); + task.setScanAll( true ); + try { - scheduler.queueRepositoryTask( task ); + scheduler.queueTask( task ); } catch ( TaskQueueException e ) { diff --git a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java index a297659f5..c1cd85cf3 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java @@ -25,9 +25,9 @@ import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; import java.util.List; - import javax.servlet.http.HttpServletResponse; +import org.apache.archiva.scheduler.repository.RepositoryArchivaTaskScheduler; import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; import org.apache.jackrabbit.webdav.DavException; @@ -61,7 +61,6 @@ import org.apache.maven.archiva.repository.metadata.RepositoryMetadataException; import org.apache.maven.archiva.repository.metadata.RepositoryMetadataMerge; import org.apache.maven.archiva.repository.metadata.RepositoryMetadataReader; import org.apache.maven.archiva.repository.metadata.RepositoryMetadataWriter; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; import org.apache.maven.archiva.security.ServletAuthenticator; import org.apache.maven.archiva.webdav.util.MimeTypes; import org.apache.maven.archiva.webdav.util.RepositoryPathUtil; @@ -165,9 +164,9 @@ public class ArchivaDavResourceFactory private Digester digestMd5; /** - * @plexus.requirement + * @plexus.requirement role="org.apache.archiva.scheduler.ArchivaTaskScheduler" role-hint="repository" */ - private ArchivaTaskScheduler scheduler; + private RepositoryArchivaTaskScheduler scheduler; public DavResource createResource( final DavResourceLocator locator, final DavServletRequest request, final DavServletResponse response ) @@ -1069,7 +1068,7 @@ public class ArchivaDavResourceFactory this.httpAuth = httpAuth; } - public void setScheduler( ArchivaTaskScheduler scheduler ) + public void setScheduler( RepositoryArchivaTaskScheduler scheduler ) { this.scheduler = scheduler; } diff --git a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/DavResourceTest.java b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/DavResourceTest.java index 937907585..8b656d8ec 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/DavResourceTest.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/DavResourceTest.java @@ -38,11 +38,9 @@ import org.apache.jackrabbit.webdav.lock.SimpleLockManager; import org.apache.jackrabbit.webdav.lock.Type; import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.repository.audit.AuditListener; -import org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers; import org.apache.maven.archiva.webdav.util.MimeTypes; import org.codehaus.plexus.spring.PlexusInSpringTestCase; import org.codehaus.plexus.spring.PlexusToSpringUtils; -import org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor; public class DavResourceTest extends PlexusInSpringTestCase diff --git a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/StubRepositoryContentConsumers.java b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/StubRepositoryContentConsumers.java index 573895c58..2105b3b45 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/StubRepositoryContentConsumers.java +++ b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/StubRepositoryContentConsumers.java @@ -1,11 +1,30 @@ package org.apache.maven.archiva.webdav; -import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer; -import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers; +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ import java.util.List; + +import org.apache.archiva.repository.scanner.RepositoryContentConsumers; import org.apache.maven.archiva.configuration.ArchivaConfiguration; +import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer; +import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; public class StubRepositoryContentConsumers extends RepositoryContentConsumers diff --git a/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletSecurityTest.xml b/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletSecurityTest.xml index bd9196bdf..520a10d36 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletSecurityTest.xml +++ b/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletSecurityTest.xml @@ -131,6 +131,10 @@ <field-name>httpAuth</field-name> </requirement> <requirement> + <role>org.apache.archiva.repository.scanner.RepositoryContentConsumers</role> + <role-hint>default</role-hint> + </requirement> + <requirement> <role>org.codehaus.plexus.digest.ChecksumFile</role> <field-name>checksum</field-name> </requirement> @@ -145,7 +149,8 @@ <field-name>digestMd5</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletTest.xml b/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletTest.xml index 74a63e922..78bdb75ab 100644 --- a/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletTest.xml +++ b/archiva-modules/archiva-web/archiva-webdav/src/test/resources/org/apache/maven/archiva/webdav/RepositoryServletTest.xml @@ -143,6 +143,10 @@ <field-name>httpAuth</field-name> </requirement> <requirement> + <role>org.apache.archiva.repository.scanner.RepositoryContentConsumers</role> + <role-hint>default</role-hint> + </requirement> + <requirement> <role>org.codehaus.plexus.digest.ChecksumFile</role> <field-name>checksum</field-name> </requirement> @@ -157,7 +161,8 @@ <field-name>digestMd5</field-name> </requirement> <requirement> - <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role> + <role>org.apache.archiva.scheduler.ArchivaTaskScheduler</role> + <role-hint>repository</role-hint> <field-name>scheduler</field-name> </requirement> </requirements> diff --git a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-api/pom.xml b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-api/pom.xml index 3a2f625ba..8a190a1e2 100644 --- a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-api/pom.xml +++ b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-api/pom.xml @@ -4,7 +4,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-xmlrpc</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-xmlrpc-api</artifactId> <name>Archiva Web :: XML-RPC API</name> diff --git a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-client/pom.xml b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-client/pom.xml index 98723d9ed..492d5b8d4 100644 --- a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-client/pom.xml +++ b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-client/pom.xml @@ -19,7 +19,7 @@ <parent> <artifactId>archiva-xmlrpc</artifactId> <groupId>org.apache.archiva</groupId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-xmlrpc-client</artifactId> @@ -63,7 +63,7 @@ <mainClass>org.apache.archiva.web.xmlrpc.client.SampleClient</mainClass> <arguments> <!-- - URL: ex. http://127.0.0.1:8080/archiva/xmlrpc + URL: ex. http://127.0.0.1:9091/xmlrpc USERNAME & PASSWORD: Archiva credentials --> <argument>${archiva.url}/xmlrpc</argument> diff --git a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-security/pom.xml b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-security/pom.xml index 22391115a..62d2859a0 100644 --- a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-security/pom.xml +++ b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-security/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-xmlrpc</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-xmlrpc-security</artifactId> <name>Archiva Web :: XML-RPC Security</name> diff --git a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/pom.xml b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/pom.xml index 5a545c48c..d960bdab9 100644 --- a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/pom.xml +++ b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-xmlrpc</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-xmlrpc-services</artifactId> <name>Archiva Web :: XML-RPC Services</name> @@ -52,7 +52,15 @@ </dependency> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-scheduled</artifactId> + <artifactId>archiva-repository-scanner</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduler-repository</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduler-database</artifactId> </dependency> <dependency> <groupId>org.apache.archiva</groupId> diff --git a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/main/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImpl.java b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/main/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImpl.java index 385db320a..c2aceb607 100644 --- a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/main/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImpl.java +++ b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/main/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImpl.java @@ -23,6 +23,11 @@ import java.util.ArrayList; import java.util.Collection; import java.util.List; +import org.apache.archiva.repository.scanner.RepositoryContentConsumers; +import org.apache.archiva.scheduler.database.DatabaseArchivaTaskScheduler; +import org.apache.archiva.scheduler.database.DatabaseTask; +import org.apache.archiva.scheduler.repository.RepositoryArchivaTaskScheduler; +import org.apache.archiva.scheduler.repository.RepositoryTask; import org.apache.archiva.web.xmlrpc.api.AdministrationService; import org.apache.archiva.web.xmlrpc.api.beans.ManagedRepository; import org.apache.archiva.web.xmlrpc.api.beans.RemoteRepository; @@ -38,7 +43,6 @@ import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; import org.apache.maven.archiva.database.ArchivaDatabaseException; import org.apache.maven.archiva.database.ArtifactDAO; import org.apache.maven.archiva.database.constraints.ArtifactVersionsConstraint; -import org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer; import org.apache.maven.archiva.database.updater.DatabaseConsumers; import org.apache.maven.archiva.database.updater.DatabaseUnprocessedArtifactConsumer; import org.apache.maven.archiva.model.ArchivaArtifact; @@ -49,42 +53,40 @@ import org.apache.maven.archiva.repository.RepositoryContentFactory; import org.apache.maven.archiva.repository.RepositoryException; import org.apache.maven.archiva.repository.RepositoryNotFoundException; import org.apache.maven.archiva.repository.events.RepositoryListener; -import org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; -import org.apache.maven.archiva.scheduled.tasks.DatabaseTask; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; -import org.apache.maven.archiva.scheduled.tasks.TaskCreator; import org.codehaus.plexus.registry.RegistryException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * AdministrationServiceImpl - * + * * @version $Id: AdministrationServiceImpl.java */ public class AdministrationServiceImpl implements AdministrationService -{ +{ protected Logger log = LoggerFactory.getLogger( getClass() ); private ArchivaConfiguration archivaConfiguration; - + private RepositoryContentConsumers repoConsumersUtil; - + private DatabaseConsumers dbConsumersUtil; - + private RepositoryContentFactory repoFactory; - + private ArtifactDAO artifactDAO; - - private ArchivaTaskScheduler taskScheduler; - + + private DatabaseArchivaTaskScheduler databaseTaskScheduler; + + private RepositoryArchivaTaskScheduler repositoryTaskScheduler; + private Collection<RepositoryListener> listeners; public AdministrationServiceImpl( ArchivaConfiguration archivaConfig, RepositoryContentConsumers repoConsumersUtil, DatabaseConsumers dbConsumersUtil, RepositoryContentFactory repoFactory, - ArtifactDAO artifactDAO, ArchivaTaskScheduler taskScheduler, + ArtifactDAO artifactDAO, DatabaseArchivaTaskScheduler databaseTaskScheduler, + RepositoryArchivaTaskScheduler repositoryTaskScheduler, Collection<RepositoryListener> listeners ) { this.archivaConfiguration = archivaConfig; @@ -92,63 +94,43 @@ public class AdministrationServiceImpl this.dbConsumersUtil = dbConsumersUtil; this.repoFactory = repoFactory; this.artifactDAO = artifactDAO; - this.taskScheduler = taskScheduler; + this.databaseTaskScheduler = databaseTaskScheduler; + this.repositoryTaskScheduler = repositoryTaskScheduler; this.listeners = listeners; } - + /** * @see AdministrationService#configureDatabaseConsumer(String, boolean) */ public Boolean configureDatabaseConsumer( String consumerId, boolean enable ) throws Exception { - List<DatabaseCleanupConsumer> cleanupConsumers = dbConsumersUtil.getAvailableCleanupConsumers(); List<DatabaseUnprocessedArtifactConsumer> unprocessedConsumers = dbConsumersUtil.getAvailableUnprocessedConsumers(); - + boolean found = false; - boolean isCleanupConsumer = false; - for( DatabaseCleanupConsumer consumer : cleanupConsumers ) + + for( DatabaseUnprocessedArtifactConsumer consumer : unprocessedConsumers ) { if( consumer.getId().equals( consumerId ) ) { found = true; - isCleanupConsumer = true; break; } } - - if( !found ) - { - for( DatabaseUnprocessedArtifactConsumer consumer : unprocessedConsumers ) - { - if( consumer.getId().equals( consumerId ) ) - { - found = true; - break; - } - } - } - + if( !found ) { throw new Exception( "Invalid database consumer." ); } - + Configuration config = archivaConfiguration.getConfiguration(); DatabaseScanningConfiguration dbScanningConfig = config.getDatabaseScanning(); - - if( isCleanupConsumer ) - { - dbScanningConfig.addCleanupConsumer( consumerId ); - } - else - { - dbScanningConfig.addUnprocessedConsumer( consumerId ); - } - - config.setDatabaseScanning( dbScanningConfig ); + + dbScanningConfig.addUnprocessedConsumer( consumerId ); + + config.setDatabaseScanning( dbScanningConfig ); saveConfiguration( config ); - + return new Boolean( true ); } @@ -159,10 +141,10 @@ public class AdministrationServiceImpl throws Exception { // TODO use repoId once consumers are configured per repository! (MRM-930) - + List<KnownRepositoryContentConsumer> knownConsumers = repoConsumersUtil.getAvailableKnownConsumers(); List<InvalidRepositoryContentConsumer> invalidConsumers = repoConsumersUtil.getAvailableInvalidConsumers(); - + boolean found = false; boolean isKnownContentConsumer = false; for( KnownRepositoryContentConsumer consumer : knownConsumers ) @@ -174,7 +156,7 @@ public class AdministrationServiceImpl break; } } - + if( !found ) { for( InvalidRepositoryContentConsumer consumer : invalidConsumers ) @@ -186,15 +168,15 @@ public class AdministrationServiceImpl } } } - + if( !found ) { throw new Exception( "Invalid repository consumer." ); } - + Configuration config = archivaConfiguration.getConfiguration(); RepositoryScanningConfiguration repoScanningConfig = config.getRepositoryScanning(); - + if( isKnownContentConsumer ) { repoScanningConfig.addKnownContentConsumer( consumerId ); @@ -203,13 +185,13 @@ public class AdministrationServiceImpl { repoScanningConfig.addInvalidContentConsumer( consumerId ); } - - config.setRepositoryScanning( repoScanningConfig ); + + config.setRepositoryScanning( repoScanningConfig ); saveConfiguration( config ); - + return new Boolean( true ); } - + /** * @see AdministrationService#deleteArtifact(String, String, String, String) */ @@ -218,26 +200,26 @@ public class AdministrationServiceImpl { Configuration config = archivaConfiguration.getConfiguration(); ManagedRepositoryConfiguration repoConfig = config.findManagedRepositoryById( repoId ); - + if( repoConfig == null ) { throw new Exception( "Repository does not exist." ); } - + try { - ManagedRepositoryContent repoContent = repoFactory.getManagedRepositoryContent( repoId ); + ManagedRepositoryContent repoContent = repoFactory.getManagedRepositoryContent( repoId ); VersionedReference ref = new VersionedReference(); ref.setGroupId( groupId ); ref.setArtifactId( artifactId ); ref.setVersion( version ); - + // delete from file system repoContent.deleteVersion( ref ); - + ArtifactVersionsConstraint constraint = new ArtifactVersionsConstraint( repoId, groupId, artifactId, false ); List<ArchivaArtifact> artifacts = null; - + try { artifacts = artifactDAO.queryArtifacts( constraint ); @@ -245,8 +227,8 @@ public class AdministrationServiceImpl catch ( ArchivaDatabaseException e ) { throw new Exception( "Error occurred while cleaning up database." ); - } - + } + if ( artifacts != null ) { for ( ArchivaArtifact artifact : artifacts ) @@ -273,7 +255,7 @@ public class AdministrationServiceImpl { throw new Exception( "Repository exception occurred." ); } - + return new Boolean( true ); } @@ -282,16 +264,16 @@ public class AdministrationServiceImpl */ public Boolean executeDatabaseScanner() throws Exception { - if ( taskScheduler.isProcessingDatabaseTask() ) + if ( databaseTaskScheduler.isProcessingDatabaseTask() ) { return false; } log.info( "Queueing database task on request from administration service" ); DatabaseTask task = new DatabaseTask(); - - taskScheduler.queueDatabaseTask( task ); - + + databaseTaskScheduler.queueTask( task ); + return new Boolean( true ); } @@ -305,16 +287,17 @@ public class AdministrationServiceImpl { throw new Exception( "Repository does not exist." ); } - - if ( taskScheduler.isProcessingRepositoryTask( repoId ) ) + + if ( repositoryTaskScheduler.isProcessingRepositoryTask( repoId ) ) { return false; } - RepositoryTask task = TaskCreator.createRepositoryTask( repoId ); + RepositoryTask task = new RepositoryTask(); + task.setRepositoryId( repoId ); + + repositoryTaskScheduler.queueTask( task ); - taskScheduler.queueRepositoryTask( task ); - return new Boolean( true ); } @@ -324,20 +307,14 @@ public class AdministrationServiceImpl public List<String> getAllDatabaseConsumers() { List<String> consumers = new ArrayList<String>(); - - List<DatabaseCleanupConsumer> cleanupConsumers = dbConsumersUtil.getAvailableCleanupConsumers(); + List<DatabaseUnprocessedArtifactConsumer> unprocessedConsumers = dbConsumersUtil.getAvailableUnprocessedConsumers(); - - for( DatabaseCleanupConsumer consumer : cleanupConsumers ) - { - consumers.add( consumer.getId() ); - } - + for( DatabaseUnprocessedArtifactConsumer consumer : unprocessedConsumers ) { consumers.add( consumer.getId() ); - } - + } + return consumers; } @@ -347,15 +324,15 @@ public class AdministrationServiceImpl public List<String> getAllRepositoryConsumers() { List<String> consumers = new ArrayList<String>(); - + List<KnownRepositoryContentConsumer> knownConsumers = repoConsumersUtil.getAvailableKnownConsumers(); List<InvalidRepositoryContentConsumer> invalidConsumers = repoConsumersUtil.getAvailableInvalidConsumers(); - + for( KnownRepositoryContentConsumer consumer : knownConsumers ) { consumers.add( consumer.getId() ); } - + for( InvalidRepositoryContentConsumer consumer : invalidConsumers ) { consumers.add( consumer.getId() ); @@ -370,19 +347,19 @@ public class AdministrationServiceImpl public List<ManagedRepository> getAllManagedRepositories() { List<ManagedRepository> managedRepos = new ArrayList<ManagedRepository>(); - + Configuration config = archivaConfiguration.getConfiguration(); List<ManagedRepositoryConfiguration> managedRepoConfigs = config.getManagedRepositories(); - + for( ManagedRepositoryConfiguration repoConfig : managedRepoConfigs ) { // TODO fix resolution of repo url! ManagedRepository repo = new ManagedRepository( repoConfig.getId(), repoConfig.getName(), "URL", repoConfig.getLayout(), - repoConfig.isSnapshots(), repoConfig.isReleases() ); + repoConfig.isSnapshots(), repoConfig.isReleases() ); managedRepos.add( repo ); } - + return managedRepos; } @@ -392,10 +369,10 @@ public class AdministrationServiceImpl public List<RemoteRepository> getAllRemoteRepositories() { List<RemoteRepository> remoteRepos = new ArrayList<RemoteRepository>(); - + Configuration config = archivaConfiguration.getConfiguration(); List<RemoteRepositoryConfiguration> remoteRepoConfigs = config.getRemoteRepositories(); - + for( RemoteRepositoryConfiguration repoConfig : remoteRepoConfigs ) { RemoteRepository repo = @@ -403,7 +380,7 @@ public class AdministrationServiceImpl repoConfig.getLayout() ); remoteRepos.add( repo ); } - + return remoteRepos; } @@ -420,7 +397,7 @@ public class AdministrationServiceImpl } catch ( IndeterminateConfigurationException e ) { - throw new Exception( "Error occurred while saving the configuration." ); + throw new Exception( "Error occurred while saving the configuration." ); } } } diff --git a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/test/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImplTest.java b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/test/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImplTest.java index 5089b289b..022f35cc9 100644 --- a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/test/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImplTest.java +++ b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/test/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImplTest.java @@ -25,6 +25,11 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; +import org.apache.archiva.repository.scanner.RepositoryContentConsumers; +import org.apache.archiva.scheduler.database.DatabaseArchivaTaskScheduler; +import org.apache.archiva.scheduler.database.DatabaseTask; +import org.apache.archiva.scheduler.repository.RepositoryArchivaTaskScheduler; +import org.apache.archiva.scheduler.repository.RepositoryTask; import org.apache.archiva.web.xmlrpc.api.beans.ManagedRepository; import org.apache.archiva.web.xmlrpc.api.beans.RemoteRepository; import org.apache.commons.io.FileUtils; @@ -39,7 +44,6 @@ 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.database.ArtifactDAO; -import org.apache.maven.archiva.database.updater.DatabaseCleanupConsumer; import org.apache.maven.archiva.database.updater.DatabaseConsumers; import org.apache.maven.archiva.database.updater.DatabaseUnprocessedArtifactConsumer; import org.apache.maven.archiva.model.ArchivaArtifact; @@ -51,10 +55,6 @@ import org.apache.maven.archiva.repository.content.ManagedLegacyRepositoryConten import org.apache.maven.archiva.repository.content.PathParser; import org.apache.maven.archiva.repository.events.RepositoryListener; import org.apache.maven.archiva.repository.layout.LayoutException; -import org.apache.maven.archiva.repository.scanner.RepositoryContentConsumers; -import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler; -import org.apache.maven.archiva.scheduled.tasks.DatabaseTask; -import org.apache.maven.archiva.scheduled.tasks.RepositoryTask; import org.codehaus.plexus.spring.PlexusInSpringTestCase; import org.easymock.MockControl; import org.easymock.classextension.MockClassControl; @@ -77,10 +77,14 @@ public class AdministrationServiceImplTest private AdministrationServiceImpl service; - private MockControl taskSchedulerControl; + private MockControl repositoryTaskSchedulerControl; + + private MockControl databaseTaskSchedulerControl; - private ArchivaTaskScheduler taskScheduler; + private RepositoryArchivaTaskScheduler repositoryTaskScheduler; + private DatabaseArchivaTaskScheduler databaseTaskScheduler; + // repository consumers private MockControl repoConsumerUtilsControl; @@ -122,10 +126,6 @@ public class AdministrationServiceImplTest private RepositoryListener listener; - private DatabaseCleanupConsumer cleanupIndexConsumer; - - private DatabaseCleanupConsumer cleanupDbConsumer; - private MockControl cleanupConsumersControl; protected void setUp() @@ -139,9 +139,12 @@ public class AdministrationServiceImplTest configControl = MockClassControl.createControl( Configuration.class ); config = ( Configuration ) configControl.getMock(); - taskSchedulerControl = MockControl.createControl( ArchivaTaskScheduler.class ); - taskScheduler = ( ArchivaTaskScheduler ) taskSchedulerControl.getMock(); + databaseTaskSchedulerControl = MockClassControl.createControl( DatabaseArchivaTaskScheduler.class ); + databaseTaskScheduler = (DatabaseArchivaTaskScheduler) databaseTaskSchedulerControl.getMock(); + repositoryTaskSchedulerControl = MockClassControl.createControl( RepositoryArchivaTaskScheduler.class ); + repositoryTaskScheduler = (RepositoryArchivaTaskScheduler) repositoryTaskSchedulerControl.getMock(); + // repo consumers repoConsumerUtilsControl = MockClassControl.createControl( RepositoryContentConsumers.class ); repoConsumersUtil = ( RepositoryContentConsumers ) repoConsumerUtilsControl.getMock(); @@ -158,10 +161,6 @@ public class AdministrationServiceImplTest dbConsumersUtilControl = MockClassControl.createControl( DatabaseConsumers.class ); dbConsumersUtil = ( DatabaseConsumers ) dbConsumersUtilControl.getMock(); - cleanupConsumersControl = MockControl.createControl( DatabaseCleanupConsumer.class ); - cleanupIndexConsumer = (DatabaseCleanupConsumer) cleanupConsumersControl.getMock(); - cleanupDbConsumer = (DatabaseCleanupConsumer) cleanupConsumersControl.getMock(); - unprocessedConsumersControl = MockControl.createControl( DatabaseUnprocessedArtifactConsumer.class ); processArtifactConsumer = ( DatabaseUnprocessedArtifactConsumer ) unprocessedConsumersControl.getMock(); processPomConsumer = ( DatabaseUnprocessedArtifactConsumer ) unprocessedConsumersControl.getMock(); @@ -178,7 +177,8 @@ public class AdministrationServiceImplTest service = new AdministrationServiceImpl( archivaConfig, repoConsumersUtil, dbConsumersUtil, repositoryFactory, - artifactDao, taskScheduler, Collections.singletonList( listener ) ); + artifactDao, databaseTaskScheduler, repositoryTaskScheduler, + Collections.singletonList( listener ) ); } /* Tests for database consumers */ @@ -189,19 +189,15 @@ public class AdministrationServiceImplTest recordDbConsumers(); dbConsumersUtilControl.replay(); - cleanupConsumersControl.replay(); unprocessedConsumersControl.replay(); List<String> dbConsumers = service.getAllDatabaseConsumers(); dbConsumersUtilControl.verify(); - cleanupConsumersControl.verify(); unprocessedConsumersControl.verify(); assertNotNull( dbConsumers ); - assertEquals( 4, dbConsumers.size() ); - assertTrue( dbConsumers.contains( "cleanup-index" ) ); - assertTrue( dbConsumers.contains( "cleanup-database" ) ); + assertEquals( 2, dbConsumers.size() ); assertTrue( dbConsumers.contains( "process-artifact" ) ); assertTrue( dbConsumers.contains( "process-pom" ) ); } @@ -228,7 +224,6 @@ public class AdministrationServiceImplTest archivaConfigControl.setVoidCallable(); dbConsumersUtilControl.replay(); - cleanupConsumersControl.replay(); unprocessedConsumersControl.replay(); archivaConfigControl.replay(); configControl.replay(); @@ -244,14 +239,12 @@ public class AdministrationServiceImplTest } dbConsumersUtilControl.verify(); - cleanupConsumersControl.verify(); unprocessedConsumersControl.verify(); archivaConfigControl.verify(); configControl.verify(); // test disable "process-pom" db consumer dbConsumersUtilControl.reset(); - cleanupConsumersControl.reset(); unprocessedConsumersControl.reset(); archivaConfigControl.reset(); configControl.reset(); @@ -271,7 +264,6 @@ public class AdministrationServiceImplTest archivaConfigControl.setVoidCallable(); dbConsumersUtilControl.replay(); - cleanupConsumersControl.replay(); unprocessedConsumersControl.replay(); archivaConfigControl.replay(); configControl.replay(); @@ -287,7 +279,6 @@ public class AdministrationServiceImplTest } dbConsumersUtilControl.verify(); - cleanupConsumersControl.verify(); unprocessedConsumersControl.verify(); archivaConfigControl.verify(); configControl.verify(); @@ -299,7 +290,6 @@ public class AdministrationServiceImplTest recordDbConsumers(); dbConsumersUtilControl.replay(); - cleanupConsumersControl.replay(); unprocessedConsumersControl.replay(); try @@ -313,7 +303,6 @@ public class AdministrationServiceImplTest } dbConsumersUtilControl.verify(); - cleanupConsumersControl.verify(); unprocessedConsumersControl.verify(); } @@ -642,15 +631,15 @@ public class AdministrationServiceImplTest RepositoryTask task = new RepositoryTask(); - taskSchedulerControl.expectAndReturn( taskScheduler.isProcessingRepositoryTask( "internal" ), false ); + repositoryTaskSchedulerControl.expectAndReturn( repositoryTaskScheduler.isProcessingRepositoryTask( "internal" ), false ); - taskScheduler.queueRepositoryTask( task ); - taskSchedulerControl.setMatcher( MockControl.ALWAYS_MATCHER ); - taskSchedulerControl.setVoidCallable(); + repositoryTaskScheduler.queueTask( task ); + repositoryTaskSchedulerControl.setMatcher( MockControl.ALWAYS_MATCHER ); + repositoryTaskSchedulerControl.setVoidCallable(); archivaConfigControl.replay(); configControl.replay(); - taskSchedulerControl.replay(); + repositoryTaskSchedulerControl.replay(); try { @@ -664,7 +653,7 @@ public class AdministrationServiceImplTest archivaConfigControl.verify(); configControl.verify(); - taskSchedulerControl.verify(); + repositoryTaskSchedulerControl.verify(); } public void testExecuteRepoScannerRepoExistsButBeingScanned() @@ -674,11 +663,11 @@ public class AdministrationServiceImplTest configControl.expectAndReturn( config.findManagedRepositoryById( "internal" ), createManagedRepo( "internal", "default", "Internal Repository", true, false ) ); - taskSchedulerControl.expectAndReturn( taskScheduler.isProcessingRepositoryTask( "internal" ), true); + repositoryTaskSchedulerControl.expectAndReturn( repositoryTaskScheduler.isProcessingRepositoryTask( "internal" ), true); archivaConfigControl.replay(); configControl.replay(); - taskSchedulerControl.replay(); + repositoryTaskSchedulerControl.replay(); try { @@ -692,7 +681,7 @@ public class AdministrationServiceImplTest archivaConfigControl.verify(); configControl.verify(); - taskSchedulerControl.verify(); + repositoryTaskSchedulerControl.verify(); } public void testExecuteRepoScannerRepoDoesNotExist() @@ -725,17 +714,17 @@ public class AdministrationServiceImplTest { DatabaseTask task = new DatabaseTask(); - taskSchedulerControl.expectAndReturn( taskScheduler.isProcessingDatabaseTask(), false ); + databaseTaskSchedulerControl.expectAndReturn( databaseTaskScheduler.isProcessingDatabaseTask(), false ); - taskScheduler.queueDatabaseTask( task ); - taskSchedulerControl.setMatcher( MockControl.ALWAYS_MATCHER ); - taskSchedulerControl.setVoidCallable(); + databaseTaskScheduler.queueTask( task ); + databaseTaskSchedulerControl.setMatcher( MockControl.ALWAYS_MATCHER ); + databaseTaskSchedulerControl.setVoidCallable(); - taskSchedulerControl.replay(); + databaseTaskSchedulerControl.replay(); boolean success = service.executeDatabaseScanner(); - taskSchedulerControl.verify(); + databaseTaskSchedulerControl.verify(); assertTrue( success ); } @@ -743,13 +732,13 @@ public class AdministrationServiceImplTest public void testExecuteDbScannerDbIsBeingScanned() throws Exception { - taskSchedulerControl.expectAndReturn( taskScheduler.isProcessingDatabaseTask(), true ); + databaseTaskSchedulerControl.expectAndReturn( databaseTaskScheduler.isProcessingDatabaseTask(), true ); - taskSchedulerControl.replay(); + databaseTaskSchedulerControl.replay(); boolean success = service.executeDatabaseScanner(); - taskSchedulerControl.verify(); + databaseTaskSchedulerControl.verify(); assertFalse( success ); } @@ -873,19 +862,11 @@ public class AdministrationServiceImplTest private void recordDbConsumers() { - List<DatabaseCleanupConsumer> cleanupConsumers = new ArrayList<DatabaseCleanupConsumer>(); - cleanupConsumers.add( cleanupIndexConsumer ); - cleanupConsumers.add( cleanupDbConsumer ); - List<DatabaseUnprocessedArtifactConsumer> unprocessedConsumers = new ArrayList<DatabaseUnprocessedArtifactConsumer>(); unprocessedConsumers.add( processArtifactConsumer ); unprocessedConsumers.add( processPomConsumer ); - dbConsumersUtilControl.expectAndReturn( dbConsumersUtil.getAvailableCleanupConsumers(), cleanupConsumers ); - cleanupConsumersControl.expectAndReturn( cleanupIndexConsumer.getId(), "cleanup-index" ); - cleanupConsumersControl.expectAndReturn( cleanupDbConsumer.getId(), "cleanup-database" ); - dbConsumersUtilControl.expectAndReturn( dbConsumersUtil.getAvailableUnprocessedConsumers(), unprocessedConsumers ); unprocessedConsumersControl.expectAndReturn( processArtifactConsumer.getId(), "process-artifact" ); unprocessedConsumersControl.expectAndReturn( processPomConsumer.getId(), "process-pom" ); diff --git a/archiva-modules/archiva-web/archiva-xmlrpc/pom.xml b/archiva-modules/archiva-web/archiva-xmlrpc/pom.xml index 6ada36255..923bd525c 100644 --- a/archiva-modules/archiva-web/archiva-xmlrpc/pom.xml +++ b/archiva-modules/archiva-web/archiva-xmlrpc/pom.xml @@ -22,7 +22,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-web</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-xmlrpc</artifactId> <name>Archiva Web :: XML-RPC</name> diff --git a/archiva-modules/archiva-web/pom.xml b/archiva-modules/archiva-web/pom.xml index ef7076a30..c65901d1a 100644 --- a/archiva-modules/archiva-web/pom.xml +++ b/archiva-modules/archiva-web/pom.xml @@ -20,7 +20,7 @@ <parent> <groupId>org.apache.archiva</groupId> <artifactId>archiva-modules</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <artifactId>archiva-web</artifactId> diff --git a/archiva-modules/metadata/content-model.txt b/archiva-modules/metadata/content-model.txt new file mode 100644 index 000000000..6f9511572 --- /dev/null +++ b/archiva-modules/metadata/content-model.txt @@ -0,0 +1,58 @@ +The following is the intended content model for the metadata content repository: + +. +`-- repositories/ + `-- central/ + |-- config/ + | |-- name= + | |-- storageUrl= + | `-- uri= + |-- content/ + | `-- org/ + | `-- apache/ + | `-- archiva/ + | `-- platform/ -- these are known as the namespace, of arbitrary depth. Equiv to groupId in Maven + | `-- scanner/ -- this is the project - equivalent to artifactId in Maven + | |-- 1.0-SNAPSHOT/ -- this is the version best used to describe the project ("marketed version") + | | |-- scanner-1.0-20091120.012345-1.pom/ -- filename is a node, each is distinct except for checksums, etc. + | | | |-- asc= + | | | |-- created= + | | | |-- maven:buildNumber= + | | | |-- maven:packaging= + | | | |-- maven:timestamp= + | | | |-- md5= + | | | |-- sha1= + | | | |-- size= + | | | |-- updated= + | | | `-- version= -- the actual version of the file, 1.0-20091120.012345-1 + | | |-- created= + | | |-- description= + | | |-- name= + | | |-- organization.name= + | | |-- organization.url= + | | `-- updated= + | |-- maven:artifactId= + | `-- maven:groupId= + `-- metadata/ + +(To update - run "tree --dirstfirst -F" on the unpacked content-model.zip from the sandbox) + +Notes: + +1) Projects are just a single code project. They do not have subprojects - if such modeling needs to be done, then we can create a products +tree that will map what "Archiva 1.0" contains from the other repositories. + +2) There is not Maven-native information here, other than that in the maven: namespace. pom & other files are not treated as special - they are +each stored and it is up to the reader to interpret + +3) artifact data is not stored in the content repository (there is no data= property on the file). The information here is enough to locate the +file in the original storageUrl when it is requested + +4) The API will still use separate namespace and project identifiers (the namespace can be null if there isn't one). This is chosen to allow +splitting the namespace on '.', and also allowing '.' in the project identifier without splitting + +5) properties with '.' may be nested in other representations such as Java models or XML, if appropriate + +6) we only keep one set of project information for a "version" - this differs from Maven's storage of one POM per snapshot. The Maven 2 module will + take the latest. Those that need Maven's behaviour should retrieve the POM directly. Implementations are also free to store as much information + as desired within the artifact node in addition to whatever is shared in the project version node.
\ No newline at end of file diff --git a/archiva-modules/metadata/metadata-model/pom.xml b/archiva-modules/metadata/metadata-model/pom.xml new file mode 100644 index 000000000..ccd593426 --- /dev/null +++ b/archiva-modules/metadata/metadata-model/pom.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>metadata</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>metadata-model</artifactId> + <name>Archiva Metadata Model</name> +</project> diff --git a/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ArtifactMetadata.java b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ArtifactMetadata.java new file mode 100644 index 000000000..51e6a550a --- /dev/null +++ b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ArtifactMetadata.java @@ -0,0 +1,78 @@ +package org.apache.archiva.metadata.model; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.util.Date; + +public class ArtifactMetadata +{ + private String id; + + private Date updated; + + private long size; + + private String version; + + public String getId() + { + return id; + } + + public void setId( String id ) + { + this.id = id; + } + + public Date getUpdated() + { + return updated; + } + + public void setUpdated( Date updated ) + { + this.updated = updated; + } + + public void setUpdated( long updated ) + { + this.updated = new Date( updated ); + } + + public long getSize() + { + return size; + } + + public void setSize( long size ) + { + this.size = size; + } + + public String getVersion() + { + return version; + } + + public void setVersion( String version ) + { + this.version = version; + } +} diff --git a/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/CiManagement.java b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/CiManagement.java new file mode 100644 index 000000000..bb0bc7c1b --- /dev/null +++ b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/CiManagement.java @@ -0,0 +1,47 @@ +package org.apache.archiva.metadata.model; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +public class CiManagement +{ + private String system; + + private String url; + + public String getUrl() + { + return url; + } + + public void setUrl( String url ) + { + this.url = url; + } + + public String getSystem() + { + return system; + } + + public void setSystem( String system ) + { + this.system = system; + } +} diff --git a/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/IssueManagement.java b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/IssueManagement.java new file mode 100644 index 000000000..22f7290be --- /dev/null +++ b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/IssueManagement.java @@ -0,0 +1,47 @@ +package org.apache.archiva.metadata.model; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +public class IssueManagement +{ + private String system; + + private String url; + + public String getUrl() + { + return url; + } + + public void setUrl( String url ) + { + this.url = url; + } + + public String getSystem() + { + return system; + } + + public void setSystem( String system ) + { + this.system = system; + } +} diff --git a/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/License.java b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/License.java new file mode 100644 index 000000000..456d63951 --- /dev/null +++ b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/License.java @@ -0,0 +1,47 @@ +package org.apache.archiva.metadata.model; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +public class License +{ + private String name; + + private String url; + + public String getName() + { + return name; + } + + public void setName( String name ) + { + this.name = name; + } + + public String getUrl() + { + return url; + } + + public void setUrl( String url ) + { + this.url = url; + } +} diff --git a/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Organization.java b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Organization.java new file mode 100644 index 000000000..f3d841d4c --- /dev/null +++ b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Organization.java @@ -0,0 +1,47 @@ +package org.apache.archiva.metadata.model; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +public class Organization +{ + private String name; + + private String url; + + public String getUrl() + { + return url; + } + + public void setUrl( String url ) + { + this.url = url; + } + + public String getName() + { + return name; + } + + public void setName( String name ) + { + this.name = name; + } +} diff --git a/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectMetadata.java b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectMetadata.java new file mode 100644 index 000000000..8db1f0116 --- /dev/null +++ b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectMetadata.java @@ -0,0 +1,47 @@ +package org.apache.archiva.metadata.model; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +public class ProjectMetadata +{ + private String namespace; + + private String id; + + public void setId( String id ) + { + this.id = id; + } + + public String getId() + { + return id; + } + + public String getNamespace() + { + return namespace; + } + + public void setNamespace( String namespace ) + { + this.namespace = namespace; + } +} diff --git a/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionFacet.java b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionFacet.java new file mode 100644 index 000000000..8cb109fcb --- /dev/null +++ b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionFacet.java @@ -0,0 +1,25 @@ +package org.apache.archiva.metadata.model; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +public interface ProjectVersionFacet +{ + String getFacetId(); +} diff --git a/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionMetadata.java b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionMetadata.java new file mode 100644 index 000000000..c2add5b4f --- /dev/null +++ b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionMetadata.java @@ -0,0 +1,161 @@ +package org.apache.archiva.metadata.model; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class ProjectVersionMetadata +{ + private String id; + + private String url; + + private String name; + + private String description; + + private Organization organization; + + private IssueManagement issueManagement; + + private Scm scm; + + private CiManagement ciManagement; + + private List<License> licenses; + + private Map<String, ProjectVersionFacet> facets; + + public String getId() + { + return id; + } + + public void setId( String id ) + { + this.id = id; + } + + public void setUrl( String url ) + { + this.url = url; + } + + public void setName( String name ) + { + this.name = name; + } + + public void setDescription( String description ) + { + this.description = description; + } + + public String getDescription() + { + return description; + } + + public String getUrl() + { + return url; + } + + public String getName() + { + return name; + } + + public Organization getOrganization() + { + return organization; + } + + public void setOrganization( Organization organization ) + { + this.organization = organization; + } + + public IssueManagement getIssueManagement() + { + return issueManagement; + } + + public void setIssueManagement( IssueManagement issueManagement ) + { + this.issueManagement = issueManagement; + } + + public Scm getScm() + { + return scm; + } + + public void setScm( Scm scm ) + { + this.scm = scm; + } + + public CiManagement getCiManagement() + { + return ciManagement; + } + + public void setCiManagement( CiManagement ciManagement ) + { + this.ciManagement = ciManagement; + } + + public List<License> getLicenses() + { + return licenses; + } + + public void setLicenses( List<License> licenses ) + { + this.licenses = licenses; + } + + public void addLicense( License license ) + { + if ( this.licenses == null ) + { + this.licenses = new ArrayList<License>(); + } + this.licenses.add( license ); + } + + public void addFacet( ProjectVersionFacet mavenProjectFacet ) + { + if ( this.facets == null ) + { + this.facets = new HashMap<String, ProjectVersionFacet>(); + } + this.facets.put( mavenProjectFacet.getFacetId(), mavenProjectFacet ); + } + + public ProjectVersionFacet getFacet( String facetId ) + { + return this.facets.get( facetId ); + } +} diff --git a/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/DatabaseCleanupConsumer.java b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/RepositoryMetadata.java index ac301b86a..d1448f24f 100644 --- a/archiva-modules/archiva-database/src/main/java/org/apache/maven/archiva/database/updater/DatabaseCleanupConsumer.java +++ b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/RepositoryMetadata.java @@ -1,4 +1,4 @@ -package org.apache.maven.archiva.database.updater; +package org.apache.archiva.metadata.model; /* * Licensed to the Apache Software Foundation (ASF) under one @@ -9,7 +9,7 @@ package org.apache.maven.archiva.database.updater; * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an @@ -20,12 +20,9 @@ package org.apache.maven.archiva.database.updater; */ /** - * DatabaseCleanupConsumer - * - * @version $Id$ + * Information about the repository as a whole. */ -public interface DatabaseCleanupConsumer - extends ArchivaArtifactConsumer +public class RepositoryMetadata { - + // TODO } diff --git a/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Scm.java b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Scm.java new file mode 100644 index 000000000..a3d8158fb --- /dev/null +++ b/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Scm.java @@ -0,0 +1,59 @@ +package org.apache.archiva.metadata.model; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +public class Scm +{ + private String connection; + + private String developerConnection; + + private String url; + + public String getUrl() + { + return url; + } + + public void setUrl( String url ) + { + this.url = url; + } + + public String getDeveloperConnection() + { + return developerConnection; + } + + public void setDeveloperConnection( String developerConnection ) + { + this.developerConnection = developerConnection; + } + + public String getConnection() + { + return connection; + } + + public void setConnection( String connection ) + { + this.connection = connection; + } +} diff --git a/archiva-modules/metadata/metadata-repository-api/pom.xml b/archiva-modules/metadata/metadata-repository-api/pom.xml new file mode 100644 index 000000000..8bfac606b --- /dev/null +++ b/archiva-modules/metadata/metadata-repository-api/pom.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>metadata</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>metadata-repository-api</artifactId> + <name>Archiva Metadata Repository API</name> + <dependencies> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-model</artifactId> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/DefaultMetadataResolver.java b/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/DefaultMetadataResolver.java new file mode 100644 index 000000000..0fb3cbabb --- /dev/null +++ b/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/DefaultMetadataResolver.java @@ -0,0 +1,69 @@ +package org.apache.archiva.metadata.repository; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.util.Collection; + +import org.apache.archiva.metadata.model.ProjectMetadata; +import org.apache.archiva.metadata.model.ProjectVersionMetadata; + +/** + * @plexus.component role="org.apache.archiva.metadata.repository.MetadataResolver" + */ +public class DefaultMetadataResolver + implements MetadataResolver +{ + /** + * @plexus.requirement + */ + private MetadataRepository metadataRepository; + + /** + * FIXME: this needs to be configurable based on storage type, and availability of proxy module + * ... could be a different type since we need methods to modify the storage metadata + * @plexus.requirement role-hint="maven2" + */ + private MetadataResolver storageResolver; + + public ProjectMetadata getProject( String repoId, String namespace, String projectId ) + { + // TODO: intercept + return metadataRepository.getProject( repoId, namespace, projectId ); + } + + public ProjectVersionMetadata getProjectVersion( String repoId, String namespace, String projectId, String projectVersion ) + { + ProjectVersionMetadata metadata = metadataRepository.getProjectVersion( repoId, namespace, projectId, projectVersion ); + // TODO: do we want to detect changes as well by comparing timestamps? isProjectVersionNewerThan(updated) + // in such cases we might also remove/update stale metadata, including adjusting plugin-based facets + if ( metadata == null ) + { + metadata = storageResolver.getProjectVersion( repoId, namespace, projectId, projectVersion ); + metadataRepository.updateProjectVersion( repoId, namespace, projectId, metadata ); + } + return metadata; + } + + public Collection<String> getArtifactVersions( String repoId, String namespace, String projectId, String projectVersion ) + { + // TODO: intercept + return metadataRepository.getArtifactVersions( repoId, namespace, projectId, projectVersion ); + } +} diff --git a/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataRepository.java b/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataRepository.java new file mode 100644 index 000000000..7b4e23737 --- /dev/null +++ b/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataRepository.java @@ -0,0 +1,42 @@ +package org.apache.archiva.metadata.repository; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.apache.archiva.metadata.model.ArtifactMetadata; +import org.apache.archiva.metadata.model.ProjectMetadata; +import org.apache.archiva.metadata.model.ProjectVersionMetadata; + +public interface MetadataRepository + extends MetadataResolver +{ + /** + * Update metadata for a particular project in the metadata repository, or create it if it does not already exist. + * + * @param project the project metadata to create or update + */ + void updateProject( String repoId, ProjectMetadata project ); + + void updateArtifact( String repoId, String namespace, String projectId, String projectVersion, + ArtifactMetadata artifactMeta ); + + void updateProjectVersion( String repoId, String namespace, String projectId, + ProjectVersionMetadata versionMetadata ); + +} diff --git a/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataResolver.java b/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataResolver.java new file mode 100644 index 000000000..7050b0552 --- /dev/null +++ b/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataResolver.java @@ -0,0 +1,34 @@ +package org.apache.archiva.metadata.repository; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.util.Collection; + +import org.apache.archiva.metadata.model.ProjectVersionMetadata; +import org.apache.archiva.metadata.model.ProjectMetadata; + +public interface MetadataResolver +{ + ProjectMetadata getProject( String repoId, String namespace, String projectId ); + + ProjectVersionMetadata getProjectVersion( String repoId, String namespace, String projectId, String projectVersion ); + + Collection<String> getArtifactVersions( String repoId, String namespace, String projectId, String projectVersion ); +} diff --git a/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/storage/RepositoryPathTranslator.java b/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/storage/RepositoryPathTranslator.java new file mode 100644 index 000000000..f7a50e7d5 --- /dev/null +++ b/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/storage/RepositoryPathTranslator.java @@ -0,0 +1,29 @@ +package org.apache.archiva.metadata.repository.storage; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.io.File; + +public interface RepositoryPathTranslator +{ + File toFile( File basedir, String namespace, String projectId, String projectVersion, String filename ); + + String toPath( String namespace, String projectId, String projectVersion, String filename ); +} diff --git a/archiva-modules/metadata/pom.xml b/archiva-modules/metadata/pom.xml new file mode 100644 index 000000000..3e7159b5a --- /dev/null +++ b/archiva-modules/metadata/pom.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>archiva-modules</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>metadata</artifactId> + <name>Archiva Metadata</name> + <packaging>pom</packaging> + <modules> + <module>metadata-model</module> + <module>metadata-repository-api</module> + </modules> +</project> diff --git a/archiva-modules/plugins/maven2-repository/pom.xml b/archiva-modules/plugins/maven2-repository/pom.xml new file mode 100644 index 000000000..0256af235 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/pom.xml @@ -0,0 +1,78 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. +--> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>plugins</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>maven2-repository</artifactId> + <name>Maven 2.x Repository Support</name> + <dependencies> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-model</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-repository-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-spring</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>commons-logging</groupId> + <artifactId>commons-logging-api</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-simple</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-model-builder</artifactId> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-configuration</artifactId> + </dependency> + <!-- TODO: aim to remove this dependency --> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-xml-tools</artifactId> + </dependency> + </dependencies> + <dependencyManagement> + <dependencies> + <!-- TODO: this is to override the top level dependency management - we need to rationalise these --> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-model</artifactId> + <version>3.0-alpha-4</version> + </dependency> + </dependencies> + </dependencyManagement> +</project> diff --git a/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/DummyLifecycleBindingsInjector.java b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/DummyLifecycleBindingsInjector.java new file mode 100644 index 000000000..15b0d01f3 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/DummyLifecycleBindingsInjector.java @@ -0,0 +1,39 @@ +package org.apache.archiva.metadata.repository.storage.maven2; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.apache.maven.model.Model; +import org.apache.maven.model.building.ModelBuildingRequest; +import org.apache.maven.model.building.ModelProblemCollector; +import org.apache.maven.model.plugin.LifecycleBindingsInjector; + +/** + * Required as plexus-spring doesn't understand the optional = true argument added to Plexus and used here. + * + * @plexus.component role="org.apache.maven.model.plugin.LifecycleBindingsInjector" + */ +public class DummyLifecycleBindingsInjector + implements LifecycleBindingsInjector +{ + public void injectLifecycleBindings( Model model, ModelBuildingRequest modelBuildingRequest, ModelProblemCollector modelProblemCollector ) + { + // left intentionally blank + } +} diff --git a/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryMetadataResolver.java b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryMetadataResolver.java new file mode 100644 index 000000000..c8fed1011 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryMetadataResolver.java @@ -0,0 +1,141 @@ +package org.apache.archiva.metadata.repository.storage.maven2; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.io.File; +import java.util.Collection; + +import org.apache.archiva.metadata.model.ProjectMetadata; +import org.apache.archiva.metadata.model.ProjectVersionMetadata; +import org.apache.archiva.metadata.repository.MetadataResolver; +import org.apache.archiva.metadata.repository.storage.RepositoryPathTranslator; +import org.apache.maven.archiva.common.utils.VersionUtil; +import org.apache.maven.archiva.configuration.ArchivaConfiguration; +import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; +import org.apache.maven.archiva.xml.XMLException; +import org.apache.maven.model.Model; +import org.apache.maven.model.building.DefaultModelBuildingRequest; +import org.apache.maven.model.building.ModelBuilder; +import org.apache.maven.model.building.ModelBuildingException; +import org.apache.maven.model.building.ModelBuildingRequest; + +/** + * @plexus.component role="org.apache.archiva.metadata.repository.MetadataResolver" role-hint="maven2" + */ +public class Maven2RepositoryMetadataResolver + implements MetadataResolver +{ + /** + * @plexus.requirement + */ + private ModelBuilder builder; + + /** + * @plexus.requirement + */ + private ArchivaConfiguration archivaConfiguration; + + /** + * @plexus.requirement role-hint="maven2" + */ + private RepositoryPathTranslator pathTranslator; + + public ProjectMetadata getProject( String repoId, String namespace, String projectId ) + { + throw new UnsupportedOperationException(); + } + + public ProjectVersionMetadata getProjectVersion( String repoId, String namespace, String projectId, + String projectVersion ) + { + // TODO: artifactVersion translation + + ManagedRepositoryConfiguration repositoryConfiguration = + archivaConfiguration.getConfiguration().findManagedRepositoryById( repoId ); + + String artifactVersion = projectVersion; + + File basedir = new File( repositoryConfiguration.getLocation() ); + if ( VersionUtil.isSnapshot( projectVersion ) ) + { + // TODO: need much error handling here for incorrect metadata + try + { + MavenRepositoryMetadata metadata = MavenRepositoryMetadataReader.read( + pathTranslator.toFile( basedir, namespace, projectId, projectVersion, "maven-metadata.xml" ) ); + + artifactVersion = + artifactVersion.substring( 0, artifactVersion.length() - 8 ); // remove SNAPSHOT from end + MavenRepositoryMetadata.Snapshot snapshotVersion = metadata.getSnapshotVersion(); + artifactVersion = + artifactVersion + snapshotVersion.getTimestamp() + "-" + snapshotVersion.getBuildNumber(); + } + catch ( XMLException e ) + { + // TODO: handle it + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } + } + + File file = pathTranslator.toFile( basedir, namespace, projectId, projectVersion, + projectId + "-" + artifactVersion + ".pom" ); + + ModelBuildingRequest req = new DefaultModelBuildingRequest(); + req.setProcessPlugins( false ); + req.setPomFile( file ); + req.setModelResolver( new RepositoryModelResolver( basedir, pathTranslator ) ); + + Model model; + try + { + model = builder.build( req ).getEffectiveModel(); + } + catch ( ModelBuildingException e ) + { + // TODO: handle it + throw new RuntimeException( e ); + } + + MavenProjectFacet facet = new MavenProjectFacet(); + facet.setGroupId( model.getGroupId() != null ? model.getGroupId() : model.getParent().getGroupId() ); + facet.setArtifactId( model.getArtifactId() ); + facet.setPackaging( model.getPackaging() ); + if ( model.getParent() != null ) + { + MavenProjectParent parent = new MavenProjectParent(); + parent.setGroupId( model.getParent().getGroupId() ); + parent.setArtifactId( model.getParent().getArtifactId() ); + parent.setVersion( model.getParent().getVersion() ); + facet.setParent( parent ); + } + ProjectVersionMetadata metadata = new ProjectVersionMetadata(); + metadata.setUrl( model.getUrl() ); + metadata.addFacet( facet ); + // TODO: convert project + + return metadata; + } + + public Collection<String> getArtifactVersions( String repoId, String namespace, String projectId, + String projectVersion ) + { + throw new UnsupportedOperationException(); + } +} diff --git a/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryPathTranslator.java b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryPathTranslator.java new file mode 100644 index 000000000..3f5bcc83d --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryPathTranslator.java @@ -0,0 +1,57 @@ +package org.apache.archiva.metadata.repository.storage.maven2; + +import java.io.File; + +import org.apache.archiva.metadata.repository.storage.RepositoryPathTranslator; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/** + * @plexus.component role="org.apache.archiva.metadata.repository.storage.RepositoryPathTranslator" role-hint="maven2" + */ +public class Maven2RepositoryPathTranslator + implements RepositoryPathTranslator +{ + private static final char PATH_SEPARATOR = '/'; + + private static final char GROUP_SEPARATOR = '.'; + + public File toFile( File basedir, String namespace, String projectId, String projectVersion, String filename ) + { + return new File( basedir, toPath( namespace, projectId, projectVersion, filename ) ); + } + + public String toPath( String namespace, String projectId, String projectVersion, String filename ) + { + StringBuilder path = new StringBuilder(); + + path.append( formatAsDirectory( namespace ) ).append( PATH_SEPARATOR ); + path.append( projectId ).append( PATH_SEPARATOR ); + path.append( projectVersion ).append( PATH_SEPARATOR ); + path.append( filename ); + + return path.toString(); + } + + private String formatAsDirectory( String directory ) + { + return directory.replace( GROUP_SEPARATOR, PATH_SEPARATOR ); + } +} diff --git a/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenProjectFacet.java b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenProjectFacet.java new file mode 100644 index 000000000..fbcc31b75 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenProjectFacet.java @@ -0,0 +1,81 @@ +package org.apache.archiva.metadata.repository.storage.maven2; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.apache.archiva.metadata.model.ProjectVersionFacet; + +public class MavenProjectFacet + implements ProjectVersionFacet +{ + private String groupId; + + private String artifactId; + + private MavenProjectParent parent; + + private String packaging; + + public static final String FACET_ID = "org.apache.archiva.metadata.repository.storage.maven2"; + + public String getGroupId() + { + return groupId; + } + + public void setGroupId( String groupId ) + { + this.groupId = groupId; + } + + public String getArtifactId() + { + return artifactId; + } + + public void setArtifactId( String artifactId ) + { + this.artifactId = artifactId; + } + + public MavenProjectParent getParent() + { + return parent; + } + + public void setParent( MavenProjectParent parent ) + { + this.parent = parent; + } + + public String getPackaging() + { + return packaging; + } + + public void setPackaging( String packaging ) + { + this.packaging = packaging; + } + + public String getFacetId() + { + return FACET_ID; + } +} diff --git a/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenProjectParent.java b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenProjectParent.java new file mode 100644 index 000000000..d9757d716 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenProjectParent.java @@ -0,0 +1,59 @@ +package org.apache.archiva.metadata.repository.storage.maven2; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +public class MavenProjectParent +{ + private String groupId; + + private String artifactId; + + private String version; + + public String getVersion() + { + return version; + } + + public void setVersion( String version ) + { + this.version = version; + } + + public String getArtifactId() + { + return artifactId; + } + + public void setArtifactId( String artifactId ) + { + this.artifactId = artifactId; + } + + public String getGroupId() + { + return groupId; + } + + public void setGroupId( String groupId ) + { + this.groupId = groupId; + } +} diff --git a/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenRepositoryMetadata.java b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenRepositoryMetadata.java new file mode 100644 index 000000000..b5ef400a4 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenRepositoryMetadata.java @@ -0,0 +1,200 @@ +package org.apache.archiva.metadata.repository.storage.maven2; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.util.ArrayList; +import java.util.List; + +public class MavenRepositoryMetadata +{ + private String groupId; + + private String artifactId; + + private String version; + + private String lastUpdated; + + private String latestVersion; + + private String releasedVersion; + + private List<String> availableVersions; + + private Snapshot snapshotVersion; + + private List<Plugin> plugins = new ArrayList<Plugin>(); + + public List<Plugin> getPlugins() + { + return plugins; + } + + public void setGroupId( String groupId ) + { + this.groupId = groupId; + } + + public void setArtifactId( String artifactId ) + { + this.artifactId = artifactId; + } + + public void setVersion( String version ) + { + this.version = version; + } + + public void setLastUpdated( String lastUpdated ) + { + this.lastUpdated = lastUpdated; + } + + public void setLatestVersion( String latestVersion ) + { + this.latestVersion = latestVersion; + } + + public void setReleasedVersion( String releasedVersion ) + { + this.releasedVersion = releasedVersion; + } + + public void setAvailableVersions( List<String> availableVersions ) + { + this.availableVersions = availableVersions; + } + + public void setSnapshotVersion( Snapshot snapshotVersion ) + { + this.snapshotVersion = snapshotVersion; + } + + public void addPlugin( Plugin plugin ) + { + this.plugins.add( plugin ); + } + + public String getGroupId() + { + return groupId; + } + + public String getArtifactId() + { + return artifactId; + } + + public String getVersion() + { + return version; + } + + public String getLastUpdated() + { + return lastUpdated; + } + + public String getLatestVersion() + { + return latestVersion; + } + + public String getReleasedVersion() + { + return releasedVersion; + } + + public List<String> getAvailableVersions() + { + return availableVersions; + } + + public Snapshot getSnapshotVersion() + { + return snapshotVersion; + } + + public static class Snapshot + { + private String timestamp; + + private int buildNumber; + + public void setTimestamp( String timestamp ) + { + this.timestamp = timestamp; + } + + public void setBuildNumber( int buildNumber ) + { + this.buildNumber = buildNumber; + } + + public int getBuildNumber() + { + return buildNumber; + } + + public String getTimestamp() + { + return timestamp; + } + } + + public static class Plugin + { + private String prefix; + + private String artifactId; + + private String name; + + public void setPrefix( String prefix ) + { + this.prefix = prefix; + } + + public void setArtifactId( String artifactId ) + { + this.artifactId = artifactId; + } + + public void setName( String name ) + { + this.name = name; + } + + public String getPrefix() + { + return prefix; + } + + public String getArtifactId() + { + return artifactId; + } + + public String getName() + { + return name; + } + } +} diff --git a/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenRepositoryMetadataReader.java b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenRepositoryMetadataReader.java new file mode 100644 index 000000000..a56f0befd --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/MavenRepositoryMetadataReader.java @@ -0,0 +1,90 @@ +package org.apache.archiva.metadata.repository.storage.maven2; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.io.File; + +import org.apache.commons.lang.math.NumberUtils; +import org.apache.maven.archiva.xml.XMLException; +import org.apache.maven.archiva.xml.XMLReader; +import org.dom4j.Element; + +/** + * RepositoryMetadataReader - read maven-metadata.xml files. + * + * TODO: we should improve on this, ideally using the Maven standard libraries (which are unfortunately baked into + * maven-core now) + */ +public final class MavenRepositoryMetadataReader +{ + private MavenRepositoryMetadataReader() + { + } + + /** + * Read and return the {@link MavenRepositoryMetadata} object from the provided xml file. + * + * @param metadataFile the maven-metadata.xml file to read. + * @return the archiva repository metadata object that represents the provided file contents. + * @throws org.apache.maven.archiva.xml.XMLException + */ + public static MavenRepositoryMetadata read( File metadataFile ) + throws XMLException + { + XMLReader xml = new XMLReader( "metadata", metadataFile ); + // invoke this to remove namespaces, see MRM-1136 + xml.removeNamespaces(); + + MavenRepositoryMetadata metadata = new MavenRepositoryMetadata(); + + metadata.setGroupId( xml.getElementText( "//metadata/groupId" ) ); + metadata.setArtifactId( xml.getElementText( "//metadata/artifactId" ) ); + metadata.setVersion( xml.getElementText( "//metadata/version" ) ); + + metadata.setLastUpdated( xml.getElementText( "//metadata/versioning/lastUpdated" ) ); + metadata.setLatestVersion( xml.getElementText( "//metadata/versioning/latest" ) ); + metadata.setReleasedVersion( xml.getElementText( "//metadata/versioning/release" ) ); + metadata.setAvailableVersions( xml.getElementListText( "//metadata/versioning/versions/version" ) ); + + Element snapshotElem = xml.getElement( "//metadata/versioning/snapshot" ); + if ( snapshotElem != null ) + { + MavenRepositoryMetadata.Snapshot snapshot = new MavenRepositoryMetadata.Snapshot(); + snapshot.setTimestamp( snapshotElem.elementTextTrim( "timestamp" ) ); + String tmp = snapshotElem.elementTextTrim( "buildNumber" ); + if ( NumberUtils.isNumber( tmp ) ) + { + snapshot.setBuildNumber( NumberUtils.toInt( tmp ) ); + } + metadata.setSnapshotVersion( snapshot ); + } + + for ( Element plugin : xml.getElementList( "//metadata/plugins/plugin" ) ) + { + MavenRepositoryMetadata.Plugin p = new MavenRepositoryMetadata.Plugin(); + p.setPrefix( plugin.elementTextTrim( "prefix" ) ); + p.setArtifactId( plugin.elementTextTrim( "artifactId" ) ); + p.setName( plugin.elementTextTrim( "name" ) ); + metadata.addPlugin( p ); + } + + return metadata; + } +}
\ No newline at end of file diff --git a/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/RepositoryModelResolver.java b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/RepositoryModelResolver.java new file mode 100644 index 000000000..b76d8740d --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/RepositoryModelResolver.java @@ -0,0 +1,66 @@ +package org.apache.archiva.metadata.repository.storage.maven2; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.io.File; + +import org.apache.archiva.metadata.repository.storage.RepositoryPathTranslator; +import org.apache.maven.model.Repository; +import org.apache.maven.model.building.FileModelSource; +import org.apache.maven.model.building.ModelSource; +import org.apache.maven.model.resolution.InvalidRepositoryException; +import org.apache.maven.model.resolution.ModelResolver; +import org.apache.maven.model.resolution.UnresolvableModelException; + +public class RepositoryModelResolver + implements ModelResolver +{ + private File basedir; + + private RepositoryPathTranslator pathTranslator; + + public RepositoryModelResolver( File basedir, RepositoryPathTranslator pathTranslator ) + { + this.basedir = basedir; + + this.pathTranslator = pathTranslator; + } + + public ModelSource resolveModel( String groupId, String artifactId, String version ) + throws UnresolvableModelException + { + String filename = artifactId + "-" + version + ".pom"; + // TODO: we need to convert 1.0-20091120.112233-1 type paths to baseVersion for the below call - add a test + return new FileModelSource( pathTranslator.toFile( basedir, groupId, artifactId, version, filename ) ); + } + + public void addRepository( Repository repository ) + throws InvalidRepositoryException + { + // we just ignore repositories outside of the current one for now + // TODO: it'd be nice to look them up from Archiva's set, but we want to do that by URL / mapping, not just the + // ID since they will rarely match + } + + public ModelResolver newCopy() + { + return new RepositoryModelResolver( basedir, pathTranslator ); + } +} diff --git a/archiva-modules/plugins/maven2-repository/src/test/java/org/apache/archiva/configuration/TestConfiguration.java b/archiva-modules/plugins/maven2-repository/src/test/java/org/apache/archiva/configuration/TestConfiguration.java new file mode 100644 index 000000000..ca6dfed53 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/java/org/apache/archiva/configuration/TestConfiguration.java @@ -0,0 +1,64 @@ +package org.apache.archiva.configuration; + +import org.apache.maven.archiva.configuration.ArchivaConfiguration; +import org.apache.maven.archiva.configuration.Configuration; +import org.apache.maven.archiva.configuration.ConfigurationListener; +import org.apache.maven.archiva.configuration.IndeterminateConfigurationException; +import org.codehaus.plexus.registry.RegistryException; +import org.codehaus.plexus.registry.RegistryListener; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +public class TestConfiguration + implements ArchivaConfiguration +{ + private Configuration configuration; + + public Configuration getConfiguration() + { + return configuration; + } + + public void save( Configuration configuration ) + throws RegistryException, IndeterminateConfigurationException + { + this.configuration = configuration; + } + + public boolean isDefaulted() + { + return false; + } + + public void addListener( ConfigurationListener listener ) + { + throw new UnsupportedOperationException(); + } + + public void removeListener( ConfigurationListener listener ) + { + throw new UnsupportedOperationException(); + } + + public void addChangeListener( RegistryListener listener ) + { + throw new UnsupportedOperationException(); + } +} diff --git a/archiva-modules/plugins/maven2-repository/src/test/java/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryMetadataResolverTest.java b/archiva-modules/plugins/maven2-repository/src/test/java/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryMetadataResolverTest.java new file mode 100644 index 000000000..b82c95c33 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/java/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryMetadataResolverTest.java @@ -0,0 +1,71 @@ +package org.apache.archiva.metadata.repository.storage.maven2; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.apache.archiva.metadata.model.ProjectVersionMetadata; +import org.apache.archiva.metadata.repository.MetadataResolver; +import org.apache.maven.archiva.configuration.ArchivaConfiguration; +import org.apache.maven.archiva.configuration.Configuration; +import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; +import org.codehaus.plexus.spring.PlexusInSpringTestCase; + +public class Maven2RepositoryMetadataResolverTest + extends PlexusInSpringTestCase +{ + private Maven2RepositoryMetadataResolver resolver; + + private static final String TEST_REPO_ID = "test"; + + public void setUp() + throws Exception + { + super.setUp(); + + ArchivaConfiguration configuration = (ArchivaConfiguration) lookup( ArchivaConfiguration.class ); + Configuration c = new Configuration(); + ManagedRepositoryConfiguration testRepo = new ManagedRepositoryConfiguration(); + testRepo.setId( TEST_REPO_ID ); + testRepo.setLocation( getTestPath( "src/test/repositories/test" ) ); + c.addManagedRepository( testRepo ); + configuration.save( c ); + + resolver = (Maven2RepositoryMetadataResolver) lookup( MetadataResolver.class, "maven2" ); + } + + public void testGetProjectVersionMetadata() + { + ProjectVersionMetadata metadata = + resolver.getProjectVersion( TEST_REPO_ID, "org.apache.archiva", "archiva-common", "1.2.1" ); + MavenProjectFacet facet = (MavenProjectFacet) metadata.getFacet( MavenProjectFacet.FACET_ID ); + assertEquals( "jar", facet.getPackaging() ); + assertEquals( "http://archiva.apache.org/ref/1.2.1/archiva-base/archiva-common", metadata.getUrl() ); + // TODO: more testing + } + + public void testGetProjectVersionMetadataForTimestampedSnapshot() + { + ProjectVersionMetadata metadata = + resolver.getProjectVersion( TEST_REPO_ID, "org.apache", "apache", "5-SNAPSHOT" ); + MavenProjectFacet facet = (MavenProjectFacet) metadata.getFacet( MavenProjectFacet.FACET_ID ); + assertEquals( "pom", facet.getPackaging() ); + assertEquals( "http://www.apache.org/", metadata.getUrl() ); + // TODO: more testing + } +} diff --git a/archiva-modules/plugins/maven2-repository/src/test/java/org/apache/archiva/metadata/repository/storage/maven2/MavenRepositoryMetadataReaderTest.java b/archiva-modules/plugins/maven2-repository/src/test/java/org/apache/archiva/metadata/repository/storage/maven2/MavenRepositoryMetadataReaderTest.java new file mode 100644 index 000000000..b88036f37 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/java/org/apache/archiva/metadata/repository/storage/maven2/MavenRepositoryMetadataReaderTest.java @@ -0,0 +1,73 @@ +package org.apache.archiva.metadata.repository.storage.maven2; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.io.File; +import java.util.Arrays; + +import org.apache.maven.archiva.xml.XMLException; +import org.codehaus.plexus.spring.PlexusInSpringTestCase; + +/** + * RepositoryMetadataReaderTest + * + * @version $Id$ + */ +public class MavenRepositoryMetadataReaderTest + extends PlexusInSpringTestCase +{ + public void testProjectMetadata() + throws XMLException + { + File defaultRepoDir = new File( getBasedir(), "src/test/repositories/test" ); + File metadataFile = new File( defaultRepoDir, "org/apache/maven/shared/maven-downloader/maven-metadata.xml" ); + + MavenRepositoryMetadata metadata = MavenRepositoryMetadataReader.read( metadataFile ); + + assertNotNull( metadata ); + assertEquals( "org.apache.maven.shared", metadata.getGroupId() ); + assertEquals( "maven-downloader", metadata.getArtifactId() ); + assertEquals( "1.1", metadata.getReleasedVersion() ); + assertNull( metadata.getLatestVersion() ); + assertEquals( Arrays.asList( "1.0", "1.1" ), metadata.getAvailableVersions() ); + assertNull( metadata.getSnapshotVersion() ); + assertEquals( "20061212214311", metadata.getLastUpdated() ); + } + + public void testProjectVersionMetadata() + throws XMLException + { + File defaultRepoDir = new File( getBasedir(), "src/test/repositories/test" ); + File metadataFile = new File( defaultRepoDir, "org/apache/apache/5-SNAPSHOT/maven-metadata.xml" ); + + MavenRepositoryMetadata metadata = MavenRepositoryMetadataReader.read( metadataFile ); + + assertNotNull( metadata ); + assertEquals( "org.apache", metadata.getGroupId() ); + assertEquals( "apache", metadata.getArtifactId() ); + assertNull( metadata.getReleasedVersion() ); + assertNull( metadata.getLatestVersion() ); + assertTrue( metadata.getAvailableVersions().isEmpty() ); + assertNotNull( metadata.getSnapshotVersion() ); + assertEquals( "20080801.151215", metadata.getSnapshotVersion().getTimestamp() ); + assertEquals( 1, metadata.getSnapshotVersion().getBuildNumber() ); + assertEquals( "20080801151215", metadata.getLastUpdated() ); + } +}
\ No newline at end of file diff --git a/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/apache/4/apache-4.pom b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/apache/4/apache-4.pom new file mode 100644 index 000000000..8d202b8b1 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/apache/4/apache-4.pom @@ -0,0 +1,113 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <!-- Shared parent. Doesn't define a lot of things about Apache like general mailing lists, but does + define the settings common to all projects at Apache --> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>4</version> + <packaging>pom</packaging> + <name>The Apache Software Foundation</name> + <description> + The Apache Software Foundation provides support for the Apache community of open-source software projects. + The Apache projects are characterized by a collaborative, consensus based development process, an open and + pragmatic software license, and a desire to create high quality software that leads the way in its field. + We consider ourselves not simply a group of projects sharing a server, but rather a community of developers + and users. + </description> + <licenses> + <license> + <name>The Apache Software License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + <organization> + <name>The Apache Software Foundation</name> + <url>http://www.apache.org/</url> + </organization> + <url>http://www.apache.org/</url> + <repositories> + <repository> + <id>apache.snapshots</id> + <name>Apache Snapshot Repository</name> + <url>http://people.apache.org/repo/m2-snapshot-repository</url> + <releases> + <enabled>false</enabled> + </releases> + </repository> + </repositories> + <distributionManagement> + <!-- Site omitted - each project must provide their own --> + <repository> + <id>apache.releases</id> + <name>Apache Release Distribution Repository</name> + <url>scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache.snapshots</id> + <name>Apache Development Snapshot Repository</name> + <url>scp://people.apache.org/www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <mailingLists> + <mailingList> + <name>Apache Announce List</name> + <subscribe>announce-subscribe@apache.org</subscribe> + <unsubscribe>announce-unsubscribe@apache.org</unsubscribe> + <post>announce@apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/www-announce/</archive> + </mailingList> + </mailingLists> + <properties> + <organization.logo>http://www.apache.org/images/asf_logo_wide.gif</organization.logo> + </properties> + <!-- + <build> + <plugins> + <plugin> + <artifactId>maven-remote-resources-plugin</artifactId> + <configuration> + <artifacts> + <artifact>org.apache:apache-distribution-resources:1.0-SNAPSHOT</artifact> + </artifacts> + </configuration> + <executions> + <execution> + <goals> + <goal>process</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + --> + <scm> + <connection>scm:svn:http://svn.apache.org/repos/asf/maven/pom/tags/apache-4</connection> + <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/pom/tags/apache-4</developerConnection> + <url>http://svn.apache.org/viewvc/maven/pom/tags/apache-4</url> + </scm> +</project> + diff --git a/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/apache/5-SNAPSHOT/apache-5-20080801.151215-1.pom b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/apache/5-SNAPSHOT/apache-5-20080801.151215-1.pom new file mode 100644 index 000000000..df85cfa77 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/apache/5-SNAPSHOT/apache-5-20080801.151215-1.pom @@ -0,0 +1,113 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <!-- Shared parent. Doesn't define a lot of things about Apache like general mailing lists, but does + define the settings common to all projects at Apache --> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>5-SNAPSHOT</version> + <packaging>pom</packaging> + <name>The Apache Software Foundation</name> + <description> + The Apache Software Foundation provides support for the Apache community of open-source software projects. + The Apache projects are characterized by a collaborative, consensus based development process, an open and + pragmatic software license, and a desire to create high quality software that leads the way in its field. + We consider ourselves not simply a group of projects sharing a server, but rather a community of developers + and users. + </description> + <licenses> + <license> + <name>The Apache Software License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + <organization> + <name>The Apache Software Foundation</name> + <url>http://www.apache.org/</url> + </organization> + <url>http://www.apache.org/</url> + <repositories> + <repository> + <id>apache.snapshots</id> + <name>Apache Snapshot Repository</name> + <url>http://people.apache.org/repo/m2-snapshot-repository</url> + <releases> + <enabled>false</enabled> + </releases> + </repository> + </repositories> + <distributionManagement> + <!-- Site omitted - each project must provide their own --> + <repository> + <id>apache.releases</id> + <name>Apache Release Distribution Repository</name> + <url>scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> + </repository> + <snapshotRepository> + <id>apache.snapshots</id> + <name>Apache Development Snapshot Repository</name> + <url>scp://people.apache.org/www/people.apache.org/repo/m2-snapshot-repository</url> + </snapshotRepository> + </distributionManagement> + <mailingLists> + <mailingList> + <name>Apache Announce List</name> + <subscribe>announce-subscribe@apache.org</subscribe> + <unsubscribe>announce-unsubscribe@apache.org</unsubscribe> + <post>announce@apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/www-announce/</archive> + </mailingList> + </mailingLists> + <properties> + <organization.logo>http://www.apache.org/images/asf_logo_wide.gif</organization.logo> + </properties> + <!-- + <build> + <plugins> + <plugin> + <artifactId>maven-remote-resources-plugin</artifactId> + <configuration> + <artifacts> + <artifact>org.apache:apache-distribution-resources:1.0-SNAPSHOT</artifact> + </artifacts> + </configuration> + <executions> + <execution> + <goals> + <goal>process</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + --> + <scm> + <connection>scm:svn:http://svn.apache.org/repos/asf/maven/pom/trunk/asf</connection> + <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/pom/trunk/asf</developerConnection> + <url>http://svn.apache.org/viewvc/maven/pom/trunk/asf</url> + </scm> +</project> + diff --git a/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/apache/5-SNAPSHOT/maven-metadata.xml b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/apache/5-SNAPSHOT/maven-metadata.xml new file mode 100644 index 000000000..46dc46ee0 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/apache/5-SNAPSHOT/maven-metadata.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<metadata> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>5-SNAPSHOT</version> + <versioning> + <snapshot> + <buildNumber>1</buildNumber> + <timestamp>20080801.151215</timestamp> + </snapshot> + <lastUpdated>20080801151215</lastUpdated> + </versioning> +</metadata> diff --git a/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-base/1.2.1/archiva-base-1.2.1.pom b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-base/1.2.1/archiva-base-1.2.1.pom new file mode 100644 index 000000000..326f6ff95 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-base/1.2.1/archiva-base-1.2.1.pom @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Copyright 2005-2006 The Apache Software Foundation. + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-modules</artifactId> + <version>1.2.1</version> + </parent> + + <artifactId>archiva-base</artifactId> + <name>Archiva Base</name> + <packaging>pom</packaging> + + <modules> + <module>archiva-checksum</module> + <module>archiva-common</module> + <module>archiva-policies</module> + <module>archiva-configuration</module> + <module>archiva-consumers</module> + <module>archiva-indexer</module> + <module>archiva-model</module> + <module>archiva-dependency-graph</module> + <module>archiva-repository-layer</module> + <module>archiva-xml-tools</module> + <module>archiva-proxy</module> + <module>archiva-transaction</module> + <module>archiva-artifact-converter</module> + <module>archiva-converter</module> + </modules> +</project> diff --git a/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-common/1.2.1/archiva-common-1.2.1.pom b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-common/1.2.1/archiva-common-1.2.1.pom new file mode 100644 index 000000000..bddde3bb7 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-common/1.2.1/archiva-common-1.2.1.pom @@ -0,0 +1,78 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-base</artifactId> + <version>1.2.1</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-common</artifactId> + <name>Archiva Base :: Common</name> + <dependencies> + <!-- TO OTHER DEVELOPERS: + This module should depend on NO OTHER ARCHIVA MODULES. + If you feel tempted to add one, discuss it first in the + archiva-dev@maven.apache.org mailing-list. + joakime@apache.org + --> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-spring</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>xalan</groupId> + <artifactId>xalan</artifactId> + <version>2.7.0</version> + </dependency> + <dependency> + <groupId>dom4j</groupId> + <artifactId>dom4j</artifactId> + <version>1.6.1</version> + <scope>test</scope> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-metadata</artifactId> + </plugin> + </plugins> + </build> +</project> diff --git a/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-modules/1.2.1/archiva-modules-1.2.1.pom b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-modules/1.2.1/archiva-modules-1.2.1.pom new file mode 100644 index 000000000..48dafcd3f --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-modules/1.2.1/archiva-modules-1.2.1.pom @@ -0,0 +1,207 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <artifactId>archiva</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.2.1</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>archiva-modules</artifactId> + <packaging>pom</packaging> + <name>Archiva :: Modules</name> + <url>http://archiva.apache.org/ref/${project.version}</url> + <modules> + <module>archiva-base</module> + <module>archiva-database</module> + <module>archiva-reporting</module> + <module>archiva-scheduled</module> + <module>archiva-web</module> + </modules> + <reporting> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + <version>2.2</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <version>2.1</version> + <configuration> + <includeTestSourceDirectory>true</includeTestSourceDirectory> + <configLocation>config/maven_checks.xml</configLocation> + <!-- TODO: enable when archiva-build-resources is active (released?) + <configLocation>checkstyle.xml</configLocation> + <headerLocation>header.txt</headerLocation> + --> + </configuration> + </plugin> +<!-- TODO: OOME + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>findbugs-maven-plugin</artifactId> + <version>1.1.1</version> + </plugin> +--> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>changelog-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>taglist-maven-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-jxr-plugin</artifactId> + <configuration> + <aggregate>true</aggregate> + </configuration> + </plugin> + <plugin> + <artifactId>maven-surefire-report-plugin</artifactId> + <version>2.4.2</version> + </plugin> + <plugin> + <artifactId>maven-javadoc-plugin</artifactId> + <version>2.4</version> + <configuration> + <source>1.5</source> + <aggregate>true</aggregate> + <doclet>gr.spinellis.umlgraph.doclet.UmlGraphDoc</doclet> + <docletArtifact> + <groupId>gr.spinellis</groupId> + <artifactId>UmlGraph</artifactId> + <version>4.6</version> + </docletArtifact> + <additionalparam> + -inferrel -inferdep -quiet -hide java.* + -collpackages java.util.* -qualify + -postfixpackage -nodefontsize 9 + -nodefontpackagesize 7 + </additionalparam> + <links> + <link>http://java.sun.com/j2se/1.4.2/docs/api</link> + <link>http://java.sun.com/j2ee/1.4/docs/api</link> + <link>http://java.sun.com/j2se/1.5.0/docs/api</link> + <link>http://commons.apache.org/collections/apidocs-COLLECTIONS_3_0/</link> + <link>http://commons.apache.org/dbcp/apidocs/</link> + <link>http://commons.apache.org/fileupload/apidocs/</link> + <link>http://commons.apache.org/httpclient/apidocs/</link> + <link>http://commons.apache.org/logging/apidocs/</link> + <link>http://commons.apache.org/pool/apidocs/</link> + <link>http://junit.sourceforge.net/javadoc/</link> + <link>http://logging.apache.org/log4j/1.2/apidocs/</link> + <link>http://jakarta.apache.org/regexp/apidocs/</link> + <link>http://velocity.apache.org/engine/releases/velocity-1.5/apidocs/</link> + </links> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + <!-- TODO: choose appropriate rulesets --> + <configuration> + <targetJdk>1.5</targetJdk> + </configuration> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>clirr-maven-plugin</artifactId> + </plugin> + </plugins> + </reporting> + <profiles> + <profile> + <id>ci</id> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + <executions> + <execution> + <goals> + <!-- TODO: after rules are set + <goal>check</goal> + --> + <goal>cpd-check</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <executions> + <execution> + <goals> + <!-- TODO: reformat first, and correct the checks (some are not consistent with the Maven style) + <goal>check</goal> + --> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>cobertura-maven-plugin</artifactId> + <version>2.2</version> + <configuration> + <check> + <!-- TODO: raise to 85/100 --> + <totalLineRate>77</totalLineRate> + <totalBranchRate>95</totalBranchRate> + </check> + <instrumentation> + <excludes> + <exclude>**/*$*</exclude> + </excludes> + </instrumentation> + </configuration> + <executions> + <execution> + <id>clean</id> + <goals> + <goal>clean</goal> + </goals> + </execution> + <execution> + <id>check</id> + <goals> + <goal>check</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <distributionManagement> + <site> + <id>apache.website</id> + <url>${siteBaseDeployment}/ref/${project.version}</url> + </site> + </distributionManagement> +</project> diff --git a/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-parent/3/archiva-parent-3.pom b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-parent/3/archiva-parent-3.pom new file mode 100644 index 000000000..4624a80c0 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva-parent/3/archiva-parent-3.pom @@ -0,0 +1,456 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>4</version> + </parent> + + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-parent</artifactId> + <packaging>pom</packaging> + <name>Archiva Common Parent Project</name> + <version>3</version> + <inceptionYear>2006</inceptionYear> + <description> + Archiva is an application for managing one or more remote + repositories, including administration, artifact handling, + browsing and searching. + </description> + <issueManagement> + <system>jira</system> + <url>http://jira.codehaus.org/browse/MRM</url> + </issueManagement> + <mailingLists> + <mailingList> + <name>Archiva User List</name> + <subscribe>users-subscribe@archiva.apache.org</subscribe> + <unsubscribe>users-unsubscribe@archiva.apache.org</unsubscribe> + <post>users@archiva.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/archiva-users/</archive> + <otherArchives> + <otherArchive>http://www.mail-archive.com/users@archiva.apache.org</otherArchive> + <otherArchive>http://www.nabble.com/archiva-users-f16426.html</otherArchive> + <otherArchive>http://markmail.org/list/org.apache.archiva.users</otherArchive> + </otherArchives> + </mailingList> + <mailingList> + <name>Archiva Developer List</name> + <subscribe>dev-subscribe@archiva.apache.org</subscribe> + <unsubscribe>dev-unsubscribe@archiva.apache.org</unsubscribe> + <post>dev@archiva.apache.org</post> + <archive>http://mail-archives.apache.org/mod_mbox/archiva-dev</archive> + <otherArchives> + <otherArchive>http://www.mail-archive.com/dev@archiva.apache.org</otherArchive> + <otherArchive>http://www.nabble.com/archiva-dev-f16427.html</otherArchive> + <otherArchive>http://markmail.org/list/org.apache.archiva.dev</otherArchive> + </otherArchives> + </mailingList> + <mailingList> + <name>Archiva Commits List</name> + <subscribe>commits-subscribe@archiva.apache.org</subscribe> + <unsubscribe>commits-unsubscribe@archiva.apache.org</unsubscribe> + <archive>http://mail-archives.apache.org/mod_mbox/archiva-commits</archive> + <otherArchives> + <otherArchive>http://www.mail-archive.com/commits@archiva.apache.org</otherArchive> + <otherArchive>http://markmail.org/list/org.apache.archiva.commits</otherArchive> + </otherArchives> + </mailingList> + <mailingList> + <name>Archiva Issues List</name> + <subscribe>issues-subscribe@archiva.apache.org</subscribe> + <unsubscribe>issues-unsubscribe@archiva.apache.org</unsubscribe> + <archive>http://mail-archives.apache.org/mod_mbox/archiva-issues</archive> + <otherArchives> + <otherArchive>http://www.mail-archive.com/issues@archiva.apache.org</otherArchive> + <otherArchive>http://www.nabble.com/Archiva---Issues-f29617.html</otherArchive> + </otherArchives> + </mailingList> + </mailingLists> + <scm> + <connection>scm:svn:http://svn.apache.org/repos/asf/archiva/tags/archiva-parent-3</connection> + <developerConnection>scm:svn:https://svn.apache.org/repos/asf/archiva/tags/archiva-parent-3</developerConnection> + <url>http://svn.apache.org/viewcvs.cgi/archiva/tags/archiva-parent-3</url> + </scm> + <properties> + <siteBaseDeployment>scp://people.apache.org/www/archiva.apache.org</siteBaseDeployment> + </properties> + <ciManagement> + <system>continuum</system> + <url>http://vmbuild.apache.org/continuum</url> + </ciManagement> + <profiles> + <profile> + <id>release</id> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-gpg-plugin</artifactId> + <configuration> + <passphrase>${gpg.passphrase}</passphrase> + </configuration> + <executions> + <execution> + <goals> + <goal>sign</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-source-plugin</artifactId> + <executions> + <execution> + <id>attach-sources</id> + <goals> + <goal>jar</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <executions> + <execution> + <id>attach-javadocs</id> + <goals> + <goal>jar</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-deploy-plugin</artifactId> + <configuration> + <altDeploymentRepository>${deploy.altRepository}</altDeploymentRepository> + <updateReleaseInfo>true</updateReleaseInfo> + </configuration> + </plugin> + </plugins> + </build> + </profile> + </profiles> + + <build> + <plugins> + <!-- We want to package up license resources in the JARs produced --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-remote-resources-plugin</artifactId> + <executions> + <execution> + <goals> + <goal>process</goal> + </goals> + <configuration> + <resourceBundles> + <resourceBundle>org.apache:apache-jar-resource-bundle:1.3</resourceBundle> + </resourceBundles> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + <pluginManagement> + <plugins> + <!-- set versions of common plugins for reproducibility, ordered alphabetically --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-clean-plugin</artifactId> + <version>2.2</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-gpg-plugin</artifactId> + <version>1.0-alpha-4</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <version>2.3</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-release-plugin</artifactId> + <version>2.0-beta-7</version> + <configuration> + <tagBase>https://svn.apache.org/repos/asf/archiva/tags/</tagBase> + <useReleaseProfile>false</useReleaseProfile> + <arguments>-Prelease</arguments> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <version>2.0-beta-5</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-source-plugin</artifactId> + <version>2.0.3</version> + </plugin> + </plugins> + </pluginManagement> + </build> + + <!-- Developers listed by PMC Chair, PMC, Committers, Contributers, all alphabetical--> + <developers> + <developer> + <id>oching</id> + <name>Maria Odea B. Ching</name> + <email>oching@apache.org</email> + <roles> + <role>PMC Chair</role> + </roles> + <timezone>+8</timezone> + </developer> + <developer> + <id>aheritier</id> + <name>Arnaud Heritier</name> + <email>aheritier@apache.org</email> + <organization>OCTO Technology</organization> + <organizationUrl>http://www.octo.com</organizationUrl> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>bellingard</id> + <name>Fabrice Bellingard</name> + <roles> + <role>PMC Member</role> + </roles> + </developer> + <developer> + <id>brett</id> + <name>Brett Porter</name> + <email>brett@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+10</timezone> + </developer> + <developer> + <id>carlos</id> + <name>Carlos Sanchez</name> + <email>carlos@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>epunzalan</id> + <name>Edwin Punzalan</name> + <email>epunzalan@apache.org</email> + <roles> + <role>PMC Member</role> + </roles> + <timezone>-8</timezone> + </developer> + <developer> + <id>evenisse</id> + <name>Emmanuel Venisse</name> + <email>evenisse@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>joakime</id> + <name>Joakim Erdfelt</name> + <email>joakime@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>-5</timezone> + </developer> + <developer> + <id>jtolentino</id> + <name>Ernesto Tolentino Jr.</name> + <email>jtolentino@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+8</timezone> + </developer> + <developer> + <id>jmcconnell</id> + <name>Jesse McConnell</name> + <email>jmcconnell@apache.org</email> + <organization>ASF</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>-6</timezone> + </developer> + <developer> + <id>nicolas</id> + <name>Nicolas De Loof</name> + <email>nicolas@apache.org</email> + <organization>Capgemini</organization> + <roles> + <role>PMC Member</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>wsmoak</id> + <name>Wendy Smoak</name> + <email>wsmoak@apache.org</email> + <roles> + <role>PMC Member</role> + </roles> + <timezone>-7</timezone> + </developer> + <!--Committers--> + <developer> + <id>dennisl</id> + <name>Dennis Lundberg</name> + <email>dennisl@apache.org</email> + <organization>ASF</organization> + <roles> + <role>Committer</role> + </roles> + <timezone>+1</timezone> + </developer> + <developer> + <id>jdumay</id> + <name>James William Dumay</name> + <email>james@atlassian.com</email> + <organization>Atlassian</organization> + <roles> + <roles>Committer</roles> + </roles> + <timezone>+11</timezone> + </developer> + <!-- Emeritus Committers --> + <developer> + <id>jvanzyl</id> + <name>Jason van Zyl</name> + <roles> + <role>Emeritus</role> + </roles> + </developer> + <developer> + <id>bayard</id> + <name>Henri Yandell</name> + <roles> + <role>Emeritus</role> + </roles> + </developer> + <developer> + <id>kenney</id> + <name>Kenney Westerhof</name> + <roles> + <role>Emeritus</role> + </roles> + </developer> + </developers> + + <contributors> + <contributor> + <name>Steffen Grunwald</name> + </contributor> + <contributor> + <name>Stefan Prange</name> + </contributor> + <contributor> + <name>John Michael Luy</name> + </contributor> + <contributor> + <name>Martin Höller</name> + </contributor> + <contributor> + <name>Stephen Gargan</name> + </contributor> + <contributor> + <name>Dario Oliveros</name> + </contributor> + <contributor> + <name>james ahlborn</name> + </contributor> + <contributor> + <name>Jim Jackson</name> + </contributor> + <contributor> + <name>Daniel Harvey</name> + </contributor> + <contributor> + <name>Aleksandr Tarutin</name> + </contributor> + <contributor> + <name>Teodoro Cue Jr.</name> + </contributor> + <contributor> + <name>Jan Ancajas</name> + </contributor> + <contributor> + <name>Jens Mühlenhoff</name> + </contributor> + <contributor> + <name>Dawn Angelito</name> + </contributor> + <contributor> + <name>Nap Ramirez</name> + </contributor> + <contributor> + <name>Henry Isidro</name> + </contributor> + <contributor> + <name>Antoine Veret</name> + </contributor> + <contributor> + <name>Christian Gruber</name> + </contributor> + <contributor> + <name>Allan Ramirez</name> + </contributor> + <contributor> + <name>Pete Marvin King</name> + </contributor> + <contributor> + <name>Joel Sudiacal</name> + </contributor> + <contributor> + <name>Milos Kleint</name> + </contributor> + <contributor> + <name>Nick Gonzalez</name> + </contributor> + </contributors> + +</project> + diff --git a/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva/1.2.1/archiva-1.2.1.pom b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva/1.2.1/archiva-1.2.1.pom new file mode 100644 index 000000000..cccf51781 --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/archiva/archiva/1.2.1/archiva-1.2.1.pom @@ -0,0 +1,1199 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <prerequisites> + <maven>2.0.6</maven> + </prerequisites> + + <parent> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-parent</artifactId> + <version>3</version> + <relativePath>../parent/pom.xml</relativePath> + </parent> + <name>Archiva</name> + <artifactId>archiva</artifactId> + <packaging>pom</packaging> + <version>1.2.1</version> + <url>http://archiva.apache.org</url> + <scm> + <connection>scm:svn:http://svn.apache.org/repos/asf/archiva/tags/archiva-1.2.1</connection> + <developerConnection>scm:svn:https://svn.apache.org/repos/asf/archiva/tags/archiva-1.2.1</developerConnection> + <url>http://svn.apache.org/viewvc/archiva/tags/archiva-1.2.1</url> + </scm> + + <build> + <plugins> + <!-- We want to package up license resources in the JARs produced --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-remote-resources-plugin</artifactId> + <executions> + <execution> + <goals> + <goal>process</goal> + </goals> + <configuration> + <resourceBundles> + <resourceBundle>org.apache:apache-jar-resource-bundle:1.3</resourceBundle> + </resourceBundles> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <version>1.0-alpha-4</version> + <executions> + <execution> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <bannedDependencies> + <excludes> + <exclude>org.codehaus.plexus:plexus-container-default</exclude> + <exclude>org.codehaus.plexus:plexus-log4j-logging</exclude> + <exclude>commons-logging:commons-logging</exclude> + <exclude>velocity:velocity-dep</exclude> + <exclude>classworlds:classworlds</exclude> + <exclude>javax.transaction:jta</exclude> + <exclude>javax.sql:jdbc-stdext</exclude> + <exclude>ant:ant-optional</exclude> + <exclude>xom:xom</exclude> + <exclude>org.codehaus.plexus:plexus-xwork-integration</exclude> + </excludes> + </bannedDependencies> + </rules> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-metadata</artifactId> + <version>1.0-beta-3.0.5</version> + <executions> + <execution> + <id>generate</id> + <goals> + <goal>generate-metadata</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.codehaus.modello</groupId> + <artifactId>modello-maven-plugin</artifactId> + <version>1.0</version> + <configuration> + <useJava5>true</useJava5> + </configuration> + <dependencies> + <dependency> + <groupId>org.codehaus.modello</groupId> + <artifactId>modello-plugin-plexus-registry</artifactId> + <version>1.0-alpha-21</version> + </dependency> + <dependency> + <groupId>org.codehaus.modello</groupId> + <artifactId>modello-plugin-jpox</artifactId> + <version>1.0-alpha-21</version> + </dependency> + </dependencies> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-assembly-plugin</artifactId> + <version>2.2-beta-3</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>2.0.2</version> + <configuration> + <source>1.5</source> + <target>1.5</target> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-remote-resources-plugin</artifactId> + <version>1.0-beta-2</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-deploy-plugin</artifactId> + <version>2.3</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-gpg-plugin</artifactId> + <version>1.0-alpha-4</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-install-plugin</artifactId> + <version>2.2</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jar-plugin</artifactId> + <version>2.2</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-release-plugin</artifactId> + <version>2.0-beta-7</version> + <configuration> + <tagBase>https://svn.apache.org/repos/asf/archiva/tags</tagBase> + <useReleaseProfile>false</useReleaseProfile> + <goals>deploy</goals> + <preparationGoals>clean install</preparationGoals> + <arguments>-Prelease</arguments> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-resources-plugin</artifactId> + <version>2.2</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.4.2</version> + <configuration> + <redirectTestOutputToFile>true</redirectTestOutputToFile> + </configuration> + </plugin> + <plugin> + <artifactId>maven-idea-plugin</artifactId> + <configuration> + <jdkLevel>1.5</jdkLevel> + </configuration> + </plugin> + </plugins> + </pluginManagement> + </build> + <modules> + <module>archiva-cli</module> + <module>archiva-docs</module> + <module>archiva-jetty</module> + <module>archiva-modules</module> + </modules> + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>easymock</groupId> + <artifactId>easymock</artifactId> + <version>1.2_Java1.3</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>easymock</groupId> + <artifactId>easymockclassextension</artifactId> + <version>1.2</version> + <scope>test</scope> + </dependency> + </dependencies> + <dependencyManagement> + <dependencies> + <dependency> + <groupId>httpunit</groupId> + <artifactId>httpunit</artifactId> + <version>1.6.2</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.apache.jackrabbit</groupId> + <artifactId>jackrabbit-webdav</artifactId> + <version>1.5.0</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>xerces</groupId> + <artifactId>xercesImpl</artifactId> + <version>2.8.1</version> + </dependency> + <dependency> + <groupId>org.sonatype.nexus</groupId> + <artifactId>nexus-indexer</artifactId> + <version>2.0.0</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + <exclusion> + <groupId>classworlds</groupId> + <artifactId>classworlds</artifactId> + </exclusion> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + <exclusion> + <groupId>velocity</groupId> + <artifactId>velocity-dep</artifactId> + </exclusion> + <exclusion> + <groupId>org.apache.maven</groupId> + <artifactId>maven-plugin-registry</artifactId> + </exclusion> + <exclusion> + <groupId>org.apache.maven</groupId> + <artifactId>maven-settings</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>javax.activation</groupId> + <artifactId>activation</artifactId> + <version>1.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-applet</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-artifact-converter</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-artifact-reports</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-checksum</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-common</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-configuration</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-consumer-api</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-converter</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-dependency-graph</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-core</artifactId> + <version>1.2-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-core-consumers</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-database</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-database-consumers</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-indexer</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-lucene-consumers</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-model</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-policies</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-proxy</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-report-manager</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-repository-layer</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduled</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-security</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-signature-consumers</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-transaction</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-docs</artifactId> + <version>1.2.1</version> + <type>zip</type> + <classifier>docs</classifier> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-webapp</artifactId> + <version>1.2.1</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-xml-tools</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-webdav</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-rss</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-xmlrpc-api</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-xmlrpc-services</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-xmlrpc-security</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-spring</artifactId> + <version>1.2</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>stax</groupId> + <artifactId>stax</artifactId> + <version>1.2.0</version> + </dependency> + <dependency> + <groupId>commons-codec</groupId> + <artifactId>commons-codec</artifactId> + <version>1.3</version> + </dependency> + <dependency> + <groupId>commons-collections</groupId> + <artifactId>commons-collections</artifactId> + <version>3.2</version> + </dependency> + <dependency> + <groupId>commons-fileupload</groupId> + <artifactId>commons-fileupload</artifactId> + <version>1.2</version> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + <version>1.4</version> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + <version>2.2</version> + </dependency> + <dependency> + <groupId>org.apache.derby</groupId> + <artifactId>derby</artifactId> + <version>10.1.3.1</version> + </dependency> + <dependency> + <groupId>org.apache.derby</groupId> + <artifactId>derbytools</artifactId> + <version>10.1.3.1</version> + </dependency> + <dependency> + <groupId>dom4j</groupId> + <artifactId>dom4j</artifactId> + <version>1.6.1</version> + </dependency> + <dependency> + <groupId>hsqldb</groupId> + <artifactId>hsqldb</artifactId> + <version>1.8.0.7</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>jaxen</groupId> + <artifactId>jaxen</artifactId> + <version>1.1</version> + <exclusions> + <exclusion> + <groupId>xom</groupId> + <artifactId>xom</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>javax.jdo</groupId> + <artifactId>jdo2-api</artifactId> + <version>2.0</version> + </dependency> + <dependency> + <groupId>jpox</groupId> + <artifactId>jpox</artifactId> + <version>1.1.9</version> + <exclusions> + <exclusion> + <groupId>javax.transaction</groupId> + <artifactId>jta</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>jsp-api</artifactId> + <version>2.0</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>jstl</artifactId> + <version>1.1.2</version> + </dependency> + <dependency> + <groupId>log4j</groupId> + <artifactId>log4j</artifactId> + <version>1.2.14</version> + </dependency> + <dependency> + <groupId>org.apache.lucene</groupId> + <artifactId>lucene-core</artifactId> + <version>2.4.0</version> + </dependency> + <dependency> + <groupId>org.apache.lucene</groupId> + <artifactId>lucene-queries</artifactId> + <version>2.4.0</version> + </dependency> + <dependency> + <groupId>javax.mail</groupId> + <artifactId>mail</artifactId> + <version>1.4</version> + </dependency> + <dependency> + <groupId>org.apache.xmlrpc</groupId> + <artifactId>xmlrpc-server</artifactId> + <version>3.1</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact-manager</artifactId> + <version>${maven.version}</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-model</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-repository-metadata</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-api</artifactId> + <version>1.0-alpha-22</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-digest</artifactId> + <version>1.1</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-expression-evaluator</artifactId> + <version>1.0-rc1</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-i18n</artifactId> + <version>1.0-beta-6</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-jdo2</artifactId> + <version>1.0-alpha-8</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-quartz</artifactId> + <version>1.0-alpha-3</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-slf4j-logging</artifactId> + <version>1.1-alpha-1</version> + <exclusions> + <exclusion> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-simple</artifactId> + </exclusion> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-taskqueue</artifactId> + <version>1.0-alpha-8</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + <version>1.4.5</version> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.cache</groupId> + <artifactId>plexus-cache-api</artifactId> + <version>1.0-alpha-2</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.cache</groupId> + <artifactId>plexus-cache-ehcache</artifactId> + <version>1.0-alpha-2</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + + <!-- redback --> + + <dependency> + <groupId>org.codehaus.redback</groupId> + <artifactId>redback-rbac-memory</artifactId> + <version>${redback.version}</version> + <scope>test</scope> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.redback</groupId> + <artifactId>redback-users-memory</artifactId> + <version>${redback.version}</version> + <scope>test</scope> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.redback</groupId> + <artifactId>redback-keys-memory</artifactId> + <version>${redback.version}</version> + <scope>test</scope> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.redback</groupId> + <artifactId>redback-rbac-model</artifactId> + <version>${redback.version}</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.redback</groupId> + <artifactId>redback-authorization-rbac</artifactId> + <version>${redback.version}</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.redback</groupId> + <artifactId>redback-rbac-role-manager</artifactId> + <version>${redback.version}</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.redback</groupId> + <artifactId>redback-system</artifactId> + <version>${redback.version}</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.redback</groupId> + <artifactId>redback-common-integrations</artifactId> + <version>${redback.version}</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.redback</groupId> + <artifactId>redback-struts2-content</artifactId> + <version>${redback.version}</version> + <type>war</type> + <exclusions> + <exclusion> + <groupId>classworlds</groupId> + <artifactId>classworlds</artifactId> + </exclusion> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.redback</groupId> + <artifactId>redback-struts2-integration</artifactId> + <version>${redback.version}</version> + <exclusions> + <exclusion> + <groupId>classworlds</groupId> + <artifactId>classworlds</artifactId> + </exclusion> + <exclusion> + <groupId>velocity</groupId> + <artifactId>velocity-dep</artifactId> + </exclusion> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + + <!-- redback --> + + <dependency> + <groupId>org.codehaus.plexus.registry</groupId> + <artifactId>plexus-registry-api</artifactId> + <version>1.0-alpha-2</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.codehaus.plexus.registry</groupId> + <artifactId>plexus-registry-commons</artifactId> + <version>1.0-alpha-2</version> + <exclusions> + <exclusion> + <groupId>ant</groupId> + <artifactId>ant-optional</artifactId> + </exclusion> + <exclusion> + <groupId>jdom</groupId> + <artifactId>jdom</artifactId> + </exclusion> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging-api</artifactId> + </exclusion> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + <version>2.4</version> + </dependency> + <dependency> + <groupId>opensymphony</groupId> + <artifactId>sitemesh</artifactId> + <version>2.2.1</version> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>jcl104-over-slf4j</artifactId> + <version>1.5.0</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + <version>1.5.0</version> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-simple</artifactId> + <version>1.5.0</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-log4j12</artifactId> + <version>1.5.0</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>taglibs</groupId> + <artifactId>standard</artifactId> + <version>1.1.2</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-file</artifactId> + <version>${wagon.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-http-lightweight</artifactId> + <version>${wagon.version}</version> + <exclusions> + <exclusion> + <groupId>nekohtml</groupId> + <artifactId>xercesMinimal</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.apache.maven.wagon</groupId> + <artifactId>wagon-provider-api</artifactId> + <version>${wagon.version}</version> + </dependency> + <dependency> + <groupId>org.apache.struts</groupId> + <artifactId>struts2-core</artifactId> + <version>2.0.11.2</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.apache.struts</groupId> + <artifactId>struts2-spring-plugin</artifactId> + <version>2.0.11.2</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>xmlunit</groupId> + <artifactId>xmlunit</artifactId> + <version>1.0</version> + </dependency> + <dependency> + <groupId>joda-time</groupId> + <artifactId>joda-time</artifactId> + <version>1.5.2</version> + </dependency> + <dependency> + <groupId>org.mortbay.jetty</groupId> + <artifactId>jetty</artifactId> + <version>${jetty.version}</version> + </dependency> + + <!-- xmlrpc --> + <dependency> + <groupId>com.atlassian.xmlrpc</groupId> + <artifactId>atlassian-xmlrpc-binder-annotations</artifactId> + <version>${binder.version}</version> + </dependency> + <dependency> + <groupId>com.atlassian.xmlrpc</groupId> + <artifactId>atlassian-xmlrpc-binder-server-spring</artifactId> + <version>${binder.version}</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>com.atlassian.xmlrpc</groupId> + <artifactId>atlassian-xmlrpc-binder</artifactId> + <version>${binder.version}</version> + </dependency> + <dependency> + <groupId>com.atlassian.xmlrpc</groupId> + <artifactId>atlassian-xmlrpc-binder-testing</artifactId> + <version>${binder.version}</version> + <scope>test</scope> + </dependency> + + <!-- Transitive versions to manage --> + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring-context</artifactId> + <version>${spring.version}</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring-web</artifactId> + <version>${spring.version}</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring-beans</artifactId> + <version>${spring.version}</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <!-- use spring test in xmlrpc? + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring-test</artifactId> + <version>2.5.1</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + --> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-artifact</artifactId> + <version>${maven.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-project</artifactId> + <version>${maven.version}</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>jdom</groupId> + <artifactId>jdom</artifactId> + <version>1.0</version> + </dependency> + <dependency> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-model-converter</artifactId> + <version>2.1</version> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>net.sf.ehcache</groupId> + <artifactId>ehcache</artifactId> + <version>1.3.0</version> + <exclusions> + <exclusion> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + </dependencies> + </dependencyManagement> + <properties> + <maven.version>2.0.8</maven.version> + <wagon.version>1.0-beta-5</wagon.version> + <redback.version>1.2.1</redback.version> + <jetty.version>6.1.6</jetty.version> + <binder.version>0.9</binder.version> + <spring.version>2.5.6</spring.version> + </properties> + <profiles> + <profile> + <id>release</id> + <build> + <plugins> + <plugin> + <artifactId>maven-assembly-plugin</artifactId> + <inherited>false</inherited> + <configuration> + <descriptors> + <descriptor>src/main/assembly/src.xml</descriptor> + </descriptors> + <tarLongFileMode>gnu</tarLongFileMode> + <finalName>apache-archiva-${project.version}-src</finalName> + </configuration> + <executions> + <execution> + <id>make-assembly</id> + <phase>package</phase> + <goals> + <goal>single</goal> + </goals> + </execution> + </executions> + </plugin> + <!-- We want to sign the artifact, the POM, and all attached artifacts --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-gpg-plugin</artifactId> + <configuration> + <passphrase>${gpg.passphrase}</passphrase> + </configuration> + <executions> + <execution> + <goals> + <goal>sign</goal> + </goals> + </execution> + </executions> + </plugin> + <!-- We want to deploy the artifact to a staging location for perusal --> + <plugin> + <inherited>true</inherited> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-deploy-plugin</artifactId> + <configuration> + <altDeploymentRepository>${deploy.altRepository}</altDeploymentRepository> + <updateReleaseInfo>true</updateReleaseInfo> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-source-plugin</artifactId> + <version>2.0.4</version> + <executions> + <execution> + <id>attach-sources</id> + <goals> + <goal>jar</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <version>2.4</version> + <executions> + <execution> + <id>attach-javadocs</id> + <goals> + <goal>jar</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <repositories> + <repository> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + <id>sonatype.public</id> + <name>Sonatype Public Repo</name> + <url>http://repository.sonatype.org/content/repositories/sonatype-apache-releases</url> + </repository> + <repository> + <releases> + <enabled>false</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>codehaus.org.snapshots</id> + <name>Codehaus Snapshots Repository</name> + <url>http://snapshots.repository.codehaus.org</url> + </repository> + </repositories> +</project> diff --git a/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/maven/shared/maven-downloader/maven-metadata.xml b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/maven/shared/maven-downloader/maven-metadata.xml new file mode 100644 index 000000000..5a7970a2e --- /dev/null +++ b/archiva-modules/plugins/maven2-repository/src/test/repositories/test/org/apache/maven/shared/maven-downloader/maven-metadata.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> + +<metadata> + <groupId>org.apache.maven.shared</groupId> + <artifactId>maven-downloader</artifactId> + <version>1.0</version> + <versioning> + <release>1.1</release> + <versions> + <version>1.0</version> + <version>1.1</version> + </versions> + <lastUpdated>20061212214311</lastUpdated> + </versioning> +</metadata> diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/resources/org/apache/archiva/consumers/lucene/LuceneConsumersTest.xml b/archiva-modules/plugins/maven2-repository/src/test/resources/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryMetadataResolverTest.xml index 4b3f8e25b..d8ea35f56 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/test/resources/org/apache/archiva/consumers/lucene/LuceneConsumersTest.xml +++ b/archiva-modules/plugins/maven2-repository/src/test/resources/org/apache/archiva/metadata/repository/storage/maven2/Maven2RepositoryMetadataResolverTest.xml @@ -20,9 +20,8 @@ <component-set> <components> <component> - <role>org.apache.maven.archiva.database.ArchivaDAO</role> - <role-hint>jdo</role-hint> - <implementation>org.apache.archiva.consumers.lucene.stubs.ArchivaDAOStub</implementation> + <role>org.apache.maven.archiva.configuration.ArchivaConfiguration</role> + <implementation>org.apache.archiva.configuration.TestConfiguration</implementation> </component> </components> </component-set>
\ No newline at end of file diff --git a/archiva-modules/plugins/metadata-repository-file/pom.xml b/archiva-modules/plugins/metadata-repository-file/pom.xml new file mode 100644 index 000000000..ad8019b75 --- /dev/null +++ b/archiva-modules/plugins/metadata-repository-file/pom.xml @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>plugins</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>metadata-repository-file</artifactId> + <name>File System Backed Metadata Repository</name> + <dependencies> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-repository-api</artifactId> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency> + </dependencies> +</project> diff --git a/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java b/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java new file mode 100644 index 000000000..0e4eb70c6 --- /dev/null +++ b/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java @@ -0,0 +1,195 @@ +package org.apache.archiva.metadata.repository.file; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.Properties; + +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.commons.io.IOUtils; + +/** + * @plexus.component role="org.apache.archiva.metadata.repository.MetadataRepository" + */ +public class FileMetadataRepository + implements MetadataRepository +{ + /** + * TODO: this isn't suitable for production use + * + * @plexus.configuration + */ + private File directory = new File( System.getProperty( "user.home" ), ".archiva-metadata" ); + + public void updateProject( String repoId, ProjectMetadata project ) + { + // TODO: this is a more braindead implementation than we would normally expect, for prototyping purposes + try + { + File projectDirectory = + new File( this.directory, repoId + "/" + project.getNamespace() + "/" + project.getId() ); + Properties properties = new Properties(); + properties.setProperty( "namespace", project.getNamespace() ); + properties.setProperty( "id", project.getId() ); + writeProperties( properties, projectDirectory ); + } + catch ( IOException e ) + { + // TODO! + e.printStackTrace(); + } + } + + public void updateProjectVersion( String repoId, String namespace, String projectId, + ProjectVersionMetadata versionMetadata ) + { + File directory = new File( this.directory, repoId + "/" + namespace + "/" + projectId ); + + Properties properties = new Properties(); + properties.setProperty( "id", versionMetadata.getId() ); + + try + { + writeProperties( properties, new File( directory, versionMetadata.getId() ) ); + } + catch ( IOException e ) + { + // TODO + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } + } + + public void updateArtifact( String repoId, String namespace, String projectId, String projectVersion, + ArtifactMetadata artifact ) + { + File directory = new File( this.directory, repoId + "/" + namespace + "/" + projectId + "/" + projectVersion ); + + Properties properties = readProperties( directory ); + + properties.setProperty( "updated:" + artifact.getId(), Long.toString( artifact.getUpdated().getTime() ) ); + properties.setProperty( "size:" + artifact.getId(), Long.toString( artifact.getSize() ) ); + properties.setProperty( "version:" + artifact.getId(), artifact.getVersion() ); + + try + { + writeProperties( properties, directory ); + } + catch ( IOException e ) + { + // TODO + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } + } + + private Properties readProperties( File directory ) + { + Properties properties = new Properties(); + FileInputStream in = null; + try + { + in = new FileInputStream( new File( directory, "metadata.xml" ) ); + properties.load( in ); + } + catch ( FileNotFoundException e ) + { + // skip - use blank properties + } + catch ( IOException e ) + { + // TODO + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } + finally + { + IOUtils.closeQuietly( in ); + } + return properties; + } + + public ProjectMetadata getProject( String repoId, String groupId, String projectId ) + { + File directory = new File( this.directory, repoId + "/" + projectId ); + + Properties properties = readProperties( directory ); + + ProjectMetadata project = new ProjectMetadata(); + project.setNamespace( properties.getProperty( "namespace" ) ); + project.setId( properties.getProperty( "id" ) ); + return project; + } + + public ProjectVersionMetadata getProjectVersion( String repoId, String groupId, String projectId, + String projectVersion ) + { + File directory = new File( this.directory, repoId + "/" + projectId + "/" + projectVersion ); + + Properties properties = readProperties( directory ); + + ProjectVersionMetadata versionMetadata = new ProjectVersionMetadata(); + versionMetadata.setId( properties.getProperty( "id" ) ); + return versionMetadata; + } + + public Collection<String> getArtifactVersions( String repoId, String namespace, String projectId, + String projectVersion ) + { + File directory = new File( this.directory, repoId + "/" + projectId + "/" + projectVersion ); + + Properties properties = readProperties( directory ); + + List<String> versions = new ArrayList<String>(); + for ( Map.Entry entry : properties.entrySet() ) + { + String name = (String) entry.getKey(); + if ( name.startsWith( "version:" ) ) + { + versions.add( (String) entry.getValue() ); + } + } + return versions; + } + + private void writeProperties( Properties properties, File directory ) + throws IOException + { + directory.mkdirs(); + FileOutputStream os = new FileOutputStream( new File( directory, "metadata.xml" ) ); + try + { + properties.storeToXML( os, null ); + } + finally + { + IOUtils.closeQuietly( os ); + } + } + +} diff --git a/archiva-modules/plugins/pom.xml b/archiva-modules/plugins/pom.xml new file mode 100644 index 000000000..d290c6ba8 --- /dev/null +++ b/archiva-modules/plugins/pom.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>archiva-modules</artifactId> + <groupId>org.apache.archiva</groupId> + <version>1.3-SNAPSHOT</version> + </parent> + <artifactId>plugins</artifactId> + <name>Archiva Core Plugins</name> + <packaging>pom</packaging> + <modules> + <module>metadata-repository-file</module> + <module>maven2-repository</module> + </modules> +</project>
\ No newline at end of file diff --git a/archiva-modules/pom.xml b/archiva-modules/pom.xml index 76fb71efa..226b3a880 100644 --- a/archiva-modules/pom.xml +++ b/archiva-modules/pom.xml @@ -1,5 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> - <!-- ~ Licensed to the Apache Software Foundation (ASF) under one ~ or more contributor license agreements. See the NOTICE file @@ -17,13 +16,11 @@ ~ KIND, either express or implied. See the License for the ~ specific language governing permissions and limitations ~ under the License. - --> - -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <parent> <artifactId>archiva</artifactId> <groupId>org.apache.archiva</groupId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>archiva-modules</artifactId> @@ -34,8 +31,10 @@ <module>archiva-base</module> <module>archiva-database</module> <module>archiva-reporting</module> - <module>archiva-scheduled</module> + <module>archiva-scheduler</module> <module>archiva-web</module> + <module>metadata</module> + <module>plugins</module> </modules> <reporting> <plugins> @@ -34,7 +34,7 @@ <name>Archiva</name> <artifactId>archiva</artifactId> <packaging>pom</packaging> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> <url>http://archiva.apache.org</url> <scm> <connection>scm:svn:http://svn.apache.org/repos/asf/archiva/trunk</connection> @@ -290,161 +290,196 @@ </dependency> <dependency> <groupId>org.apache.archiva</groupId> + <artifactId>metadata-model</artifactId> + <version>1.3-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-repository-api</artifactId> + <version>1.3-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>metadata-repository-file</artifactId> + <version>1.3-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> <artifactId>archiva-applet</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-artifact-converter</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-artifact-reports</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-checksum</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-common</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-configuration</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-consumer-api</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-converter</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-dependency-graph</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-core-consumers</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-database</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-database-consumers</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-indexer</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-lucene-consumers</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-model</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-policies</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-proxy</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-report-manager</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-repository-layer</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-repository-scanner</artifactId> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> - <artifactId>archiva-scheduled</artifactId> - <version>1.2.3-SNAPSHOT</version> + <artifactId>archiva-scheduler-api</artifactId> + <version>1.3-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduler-repository</artifactId> + <version>1.3-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduler-database</artifactId> + <version>1.3-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.archiva</groupId> + <artifactId>archiva-scheduler-indexing</artifactId> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-security</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-signature-consumers</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-transaction</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-docs</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> <type>zip</type> <classifier>docs</classifier> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-webapp</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> <type>war</type> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-xml-tools</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-webdav</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-rss</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-xmlrpc-api</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-xmlrpc-services</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.archiva</groupId> <artifactId>archiva-xmlrpc-security</artifactId> - <version>1.2.3-SNAPSHOT</version> + <version>1.3-SNAPSHOT</version> </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> @@ -589,6 +624,11 @@ </dependency> <dependency> <groupId>org.apache.maven</groupId> + <artifactId>maven-model-builder</artifactId> + <version>${maven3x.version}</version> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> <artifactId>maven-repository-metadata</artifactId> <version>${maven.version}</version> </dependency> @@ -1098,6 +1138,7 @@ </dependencyManagement> <properties> <maven.version>2.0.8</maven.version> + <maven3x.version>3.0-alpha-4</maven3x.version> <wagon.version>1.0-beta-5</wagon.version> <redback.version>1.2.2</redback.version> <jetty.version>6.1.19</jetty.version> |