Return-Path: Delivered-To: apmail-archiva-commits-archive@www.apache.org Received: (qmail 61496 invoked from network); 17 Feb 2009 22:44:16 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 17 Feb 2009 22:44:16 -0000 Received: (qmail 13557 invoked by uid 500); 17 Feb 2009 22:44:16 -0000 Delivered-To: apmail-archiva-commits-archive@archiva.apache.org Received: (qmail 13526 invoked by uid 500); 17 Feb 2009 22:44:16 -0000 Mailing-List: contact commits-help@archiva.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@archiva.apache.org Delivered-To: mailing list commits@archiva.apache.org Received: (qmail 13517 invoked by uid 99); 17 Feb 2009 22:44:15 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 17 Feb 2009 14:44:15 -0800 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 17 Feb 2009 22:44:07 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 79605238899E; Tue, 17 Feb 2009 22:43:47 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r745282 - in /archiva/branches/archiva-with-new-repoapi/archiva-modules: archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/ archiva-base/archiva-consumers/archiva-core-consumers/src/... Date: Tue, 17 Feb 2009 22:43:45 -0000 To: commits@archiva.apache.org From: jdumay@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20090217224347.79605238899E@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: jdumay Date: Tue Feb 17 22:43:44 2009 New Revision: 745282 URL: http://svn.apache.org/viewvc?rev=745282&view=rev Log: Added legacy repository support. ManagedRepositoryContent now uses the Repository interface. Added: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/LegacyRepositoryManager.java Removed: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepository.java Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/MetadataUpdaterConsumer.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/AbstractRepositoryPurge.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/CleanupReleasedSnapshotsRepositoryPurge.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/DaysOldRepositoryPurge.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/RetentionCountRepositoryPurge.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/ArtifactUpdateDatabaseConsumer.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumer.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumer.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/maven/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumer.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/ProxyConnector.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/ProxyRepositoryManager.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/resources/META-INF/spring-context.xml archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/AbstractProxyTestCase.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/HttpProxyTransferTest.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/MutableResourceContext.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/RepositoryManagerException.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/pom.xml archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/ManagedRepositoryContent.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedDefaultRepositoryContent.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedLegacyRepositoryContent.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/metadata/MetadataTools.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/metadata/MetadataToolsTest.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/pom.xml archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepositoryFactory.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/resources/META-INF/spring-context.xml archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/main/java/org/apache/archiva/web/servlet/RepositoryServlet.java archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/test/java/org/apache/archiva/web/servlet/AbstractRepositoryServletTestCase.java Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/MetadataUpdaterConsumer.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/MetadataUpdaterConsumer.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/MetadataUpdaterConsumer.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/MetadataUpdaterConsumer.java Tue Feb 17 22:43:44 2009 @@ -129,7 +129,7 @@ try { this.repository = repositoryFactory.getManagedRepositoryContent( repoConfig.getId() ); - this.repositoryDir = new File( repository.getRepoRoot() ); + this.repositoryDir = repository.getLocalPath(); this.scanStartTimestamp = System.currentTimeMillis(); } catch ( RepositoryNotFoundException e ) Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/AbstractRepositoryPurge.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/AbstractRepositoryPurge.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/AbstractRepositoryPurge.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/AbstractRepositoryPurge.java Tue Feb 17 22:43:44 2009 @@ -65,9 +65,9 @@ protected String toRelativePath( File artifactFile ) { String artifactPath = artifactFile.getAbsolutePath(); - if ( artifactPath.startsWith( repository.getRepoRoot() ) ) + if ( artifactPath.startsWith( repository.getLocalPath().getAbsolutePath() ) ) { - artifactPath = artifactPath.substring( repository.getRepoRoot().length() ); + artifactPath = artifactPath.substring( repository.getLocalPath().getAbsolutePath().length() ); } return artifactPath; Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/CleanupReleasedSnapshotsRepositoryPurge.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/CleanupReleasedSnapshotsRepositoryPurge.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/CleanupReleasedSnapshotsRepositoryPurge.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/CleanupReleasedSnapshotsRepositoryPurge.java Tue Feb 17 22:43:44 2009 @@ -92,7 +92,7 @@ { try { - File artifactFile = new File( repository.getRepoRoot(), path ); + File artifactFile = new File( repository.getLocalPath(), path ); if ( !artifactFile.exists() ) { Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/DaysOldRepositoryPurge.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/DaysOldRepositoryPurge.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/DaysOldRepositoryPurge.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/DaysOldRepositoryPurge.java Tue Feb 17 22:43:44 2009 @@ -68,7 +68,7 @@ { try { - File artifactFile = new File( repository.getRepoRoot(), path ); + File artifactFile = new File( repository.getLocalPath(), path ); if ( !artifactFile.exists() ) { Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/RetentionCountRepositoryPurge.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/RetentionCountRepositoryPurge.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/RetentionCountRepositoryPurge.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/repository/RetentionCountRepositoryPurge.java Tue Feb 17 22:43:44 2009 @@ -55,7 +55,7 @@ { try { - File artifactFile = new File( repository.getRepoRoot(), path ); + File artifactFile = new File( repository.getLocalPath(), path ); if ( !artifactFile.exists() ) { Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/ArtifactUpdateDatabaseConsumer.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/ArtifactUpdateDatabaseConsumer.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/ArtifactUpdateDatabaseConsumer.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/ArtifactUpdateDatabaseConsumer.java Tue Feb 17 22:43:44 2009 @@ -143,7 +143,7 @@ try { this.repository = repositoryFactory.getManagedRepositoryContent( repo.getId() ); - this.repositoryDir = new File( repository.getRepoRoot() ); + this.repositoryDir = repository.getLocalPath(); this.whenGathered = whenGathered; } catch(RepositoryException e) Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumer.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumer.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumer.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveArtifactConsumer.java Tue Feb 17 22:43:44 2009 @@ -99,7 +99,7 @@ ManagedRepositoryContent repositoryContent = repositoryFactory.getManagedRepositoryContent( artifact.getModel().getRepositoryId() ); - File file = new File( repositoryContent.getRepoRoot(), repositoryContent.toPath( artifact ) ); + File file = new File( repositoryContent.getLocalPath(), repositoryContent.toPath( artifact ) ); if( !file.exists() ) { Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumer.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumer.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumer.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-database-consumers/src/main/java/org/apache/maven/archiva/consumers/database/DatabaseCleanupRemoveProjectConsumer.java Tue Feb 17 22:43:44 2009 @@ -104,7 +104,7 @@ ManagedRepositoryContent repositoryContent = repositoryFactory.getManagedRepositoryContent( artifact.getModel().getRepositoryId() ); - File file = new File( repositoryContent.getRepoRoot(), repositoryContent.toPath( artifact ) ); + File file = new File( repositoryContent.getLocalPath(), repositoryContent.toPath( artifact ) ); if ( !file.exists() ) { Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/maven/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumer.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/maven/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumer.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/maven/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumer.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-consumers/archiva-lucene-consumers/src/main/java/org/apache/maven/archiva/consumers/lucene/LuceneCleanupRemoveIndexedConsumer.java Tue Feb 17 22:43:44 2009 @@ -87,7 +87,7 @@ ManagedRepositoryContent repoContent = repoFactory.getManagedRepositoryContent( artifact.getModel().getRepositoryId() ); - File file = new File( repoContent.getRepoRoot(), repoContent.toPath( artifact ) ); + File file = new File( repoContent.getLocalPath(), repoContent.toPath( artifact ) ); if( !file.exists() ) { Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/DefaultRepositoryProxyConnectors.java Tue Feb 17 22:43:44 2009 @@ -210,7 +210,7 @@ File workingDir = createWorkingDirectory(repository); try { - File localFile = new File( repository.getRepoRoot(), path ); + File localFile = new File( repository.getLocalPath(), path ); // no update policies for these paths if ( localFile.exists() ) @@ -279,7 +279,7 @@ File workingDir = createWorkingDirectory(repository); try { - File localFile = new File(repository.getRepoRoot(), logicalPath); + File localFile = new File(repository.getLocalPath(), logicalPath); Properties requestProperties = new Properties(); requestProperties.setProperty( "filetype", "metadata" ); @@ -384,7 +384,7 @@ String targetPath ) { String repoPath = metadataTools.getRepositorySpecificName( targetRepository, targetPath ); - return new File( repository.getRepoRoot(), repoPath ); + return new File( repository.getLocalPath(), repoPath ); } /** @@ -861,7 +861,7 @@ //TODO: This is ugly - lets actually clean this up when we get the new repository api try { - File tmpDir = File.createTempFile(".workingdirectory", null, new File(repository.getRepoRoot())); + File tmpDir = File.createTempFile(".workingdirectory", null, repository.getLocalPath()); tmpDir.delete(); tmpDir.mkdirs(); return tmpDir; Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/ProxyConnector.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/ProxyConnector.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/ProxyConnector.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/ProxyConnector.java Tue Feb 17 22:43:44 2009 @@ -127,7 +127,7 @@ StringBuffer sb = new StringBuffer(); sb.append( "ProxyConnector[\n" ); - sb.append( " source: [managed] " ).append( this.sourceRepository.getRepoRoot() ).append( "\n" ); + sb.append( " source: [managed] " ).append( this.sourceRepository.getLocalPath() ).append( "\n" ); sb.append( " target: [remote] " ).append( this.targetRepository.getRepository().getUrl() ).append( "\n" ); sb.append( " proxyId:" ).append( this.proxyId ).append( "\n" ); Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/ProxyRepositoryManager.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/ProxyRepositoryManager.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/ProxyRepositoryManager.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/maven/archiva/proxy/ProxyRepositoryManager.java Tue Feb 17 22:43:44 2009 @@ -35,8 +35,6 @@ import org.apache.archiva.repository.api.ResourceContext; import org.apache.archiva.repository.api.Status; import org.apache.archiva.repository.api.SystemRepositoryManager; -import org.apache.maven.archiva.configuration.ConfigurationEvent; -import org.apache.maven.archiva.configuration.ConfigurationListener; import org.apache.maven.archiva.model.ArtifactReference; import org.apache.maven.archiva.policies.ProxyDownloadException; import org.apache.maven.archiva.repository.ManagedRepositoryContent; @@ -96,12 +94,14 @@ public List stat(ResourceContext context) { + final MutableResourceContext resourceContext = new MutableResourceContext(context); + //Return the stat() result from the system repository if we are simply getting a collection ManagedRepositoryContent managedRepository = null; try { - managedRepository = repositoryFactory.getManagedRepositoryContent(context.getRepositoryId()); + managedRepository = repositoryFactory.getManagedRepositoryContent(resourceContext.getRepositoryId()); } catch (RepositoryNotFoundException e) { @@ -116,13 +116,13 @@ boolean isCollection = false; try { - this.repositoryRequest.toArtifactReference(context.getLogicalPath()); + this.repositoryRequest.toArtifactReference(resourceContext.getLogicalPath()); } catch (LayoutException e) { try { - repositoryRequest.toNativePath(context.getLogicalPath(), managedRepository); + repositoryRequest.toNativePath(resourceContext.getLogicalPath(), managedRepository); } catch (LayoutException ex) { @@ -135,7 +135,7 @@ return repositoryManager.stat(context); } - final Status status = doProxy(managedRepository, context); + final Status status = doProxy(managedRepository, resourceContext); if (status != null) { return Arrays.asList(status); @@ -148,10 +148,11 @@ return repositoryManager.write(context, is); } - private Status doProxy( ManagedRepositoryContent managedRepository, ResourceContext context ) + private Status doProxy( ManagedRepositoryContent managedRepository, MutableResourceContext context ) throws RepositoryManagerException { - File resourceFile = new File( managedRepository.getRepoRoot(), context.getLogicalPath() ); + File resourceFile = new File( managedRepository.getLocalPath(), context.getLogicalPath() ); + final boolean previouslyExisted = resourceFile.exists(); // At this point the incoming request can either be in default or // legacy layout format. @@ -166,7 +167,11 @@ } catch ( LayoutException e ) { - return Status.fromFile(resourceFile); + if (previouslyExisted) + { + return Status.fromFile(resourceFile); + } + return null; } // Attempt to fetch the resource from any defined proxy. @@ -180,7 +185,7 @@ return status; } - private Status fetchContentFromProxies( ManagedRepositoryContent managedRepository, ResourceContext context ) + private Status fetchContentFromProxies( ManagedRepositoryContent managedRepository, MutableResourceContext context ) throws RepositoryManagerException { if ( repositoryRequest.isSupportFile( context.getLogicalPath() ) ) @@ -214,9 +219,7 @@ applyServerSideRelocation( managedRepository, artifact ); File proxiedFile = repositoryProxyConnectors.fetchFromProxies( managedRepository, artifact ); - - MutableResourceContext resourceContext = new MutableResourceContext(context); - resourceContext.setLogicalPath(managedRepository.toPath( artifact )); + context.setLogicalPath(managedRepository.toPath( artifact )); if (proxiedFile != null) { @@ -233,7 +236,7 @@ throw new RepositoryManagerException(e.getMessage(), e); } - File resourceFile = new File(managedRepository.getRepoRoot(), context.getLogicalPath()); + File resourceFile = new File(managedRepository.getLocalPath(), context.getLogicalPath()); if (resourceFile.exists()) { return Status.fromFile(resourceFile); Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/resources/META-INF/spring-context.xml URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/resources/META-INF/spring-context.xml?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/resources/META-INF/spring-context.xml (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/main/resources/META-INF/spring-context.xml Tue Feb 17 22:43:44 2009 @@ -28,7 +28,7 @@ value="org.apache.maven.archiva.proxy.WagonFactory" /> - + Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/AbstractProxyTestCase.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/AbstractProxyTestCase.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/AbstractProxyTestCase.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/AbstractProxyTestCase.java Tue Feb 17 22:43:44 2009 @@ -466,7 +466,7 @@ managedDefaultRepository = createRepository( ID_DEFAULT_MANAGED, "Default Managed Repository", repoPath, "default" ); - managedDefaultDir = new File( managedDefaultRepository.getRepoRoot() ); + managedDefaultDir = managedDefaultRepository.getLocalPath(); ManagedRepositoryConfiguration repoConfig = managedDefaultRepository.getRepository(); @@ -480,7 +480,7 @@ managedLegacyRepository = createRepository( ID_LEGACY_MANAGED, "Legacy Managed Repository", REPOPATH_LEGACY_MANAGED_TARGET, "legacy" ); - managedLegacyDir = new File( managedLegacyRepository.getRepoRoot() ); + managedLegacyDir = managedLegacyRepository.getLocalPath(); repoConfig = managedLegacyRepository.getRepository(); Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/HttpProxyTransferTest.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/HttpProxyTransferTest.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/HttpProxyTransferTest.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/HttpProxyTransferTest.java Tue Feb 17 22:43:44 2009 @@ -165,7 +165,7 @@ // Configure Connector (usually done within archiva.xml configuration) addConnector(); - File expectedFile = new File( new File( managedDefaultRepository.getRepoRoot() ), path ); + File expectedFile = new File( managedDefaultRepository.getLocalPath(), path ); ArtifactReference artifact = managedDefaultRepository.toArtifactReference( path ); // Attempt the proxy fetch. Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/MutableResourceContext.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/MutableResourceContext.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/MutableResourceContext.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/MutableResourceContext.java Tue Feb 17 22:43:44 2009 @@ -51,7 +51,7 @@ { return repositoryId; } - return repositoryId; + return context.getRepositoryId(); } /** Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/RepositoryManagerException.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/RepositoryManagerException.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/RepositoryManagerException.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/RepositoryManagerException.java Tue Feb 17 22:43:44 2009 @@ -33,4 +33,9 @@ { super(message, cause); } + + public RepositoryManagerException(Throwable cause) + { + super(cause.getMessage(), cause); + } } Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/pom.xml URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/pom.xml?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/pom.xml (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/pom.xml Tue Feb 17 22:43:44 2009 @@ -30,6 +30,10 @@ org.apache.archiva + archiva-repository-api + + + org.apache.archiva archiva-xml-tools Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/ManagedRepositoryContent.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/ManagedRepositoryContent.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/ManagedRepositoryContent.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/ManagedRepositoryContent.java Tue Feb 17 22:43:44 2009 @@ -28,6 +28,7 @@ import java.io.File; import java.util.Set; +import org.apache.archiva.repository.api.Repository; /** * ManagedRepositoryContent interface for interacting with a managed repository in an abstract way, @@ -35,7 +36,7 @@ * * @version $Id$ */ -public interface ManagedRepositoryContent +public interface ManagedRepositoryContent extends Repository { /** * Delete from the managed repository all files / directories associated with the @@ -49,19 +50,6 @@ /** *

- * Convenience method to get the repository id. - *

- * - *

- * Equivalent to calling .getRepository().getId() - *

- * - * @return the repository id. - */ - public String getId(); - - /** - *

* Gather up the list of related artifacts to the ArtifactReference provided. * This typically inclues the pom files, and those things with * classifiers (such as doc, source code, test libs, etc...) @@ -78,20 +66,7 @@ */ public Set getRelatedArtifacts( ArtifactReference reference ) throws ContentNotFoundException, LayoutException; - - /** - *

- * Convenience method to get the repository (on disk) root directory. - *

- * - *

- * Equivalent to calling .getRepository().getLocation() - *

- * - * @return the repository (on disk) root directory. - */ - public String getRepoRoot(); - + /** * Get the repository configuration associated with this * repository content. Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedDefaultRepositoryContent.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedDefaultRepositoryContent.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedDefaultRepositoryContent.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedDefaultRepositoryContent.java Tue Feb 17 22:43:44 2009 @@ -63,7 +63,7 @@ throws ContentNotFoundException { String path = toMetadataPath( reference ); - File projectPath = new File( getRepoRoot(), path ); + File projectPath = new File( getLocalPath(), path ); File projectDir = projectPath.getParentFile(); if( projectDir.exists() && projectDir.isDirectory() ) @@ -83,6 +83,11 @@ } } + public String getName() + { + return repository.getName(); + } + public String getId() { return repository.getId(); @@ -137,9 +142,9 @@ return foundArtifacts; } - public String getRepoRoot() + public File getLocalPath() { - return repository.getLocation(); + return new File(repository.getLocation()); } public ManagedRepositoryConfiguration getRepository() Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedLegacyRepositoryContent.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedLegacyRepositoryContent.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedLegacyRepositoryContent.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedLegacyRepositoryContent.java Tue Feb 17 22:43:44 2009 @@ -192,9 +192,9 @@ return foundArtifacts; } - public String getRepoRoot() + public File getLocalPath() { - return repository.getLocation(); + return new File(repository.getLocation()); } public ManagedRepositoryConfiguration getRepository() @@ -202,6 +202,11 @@ return repository; } + public String getName() + { + return repository.getName(); + } + public Set getVersions( ProjectReference reference ) throws ContentNotFoundException { Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/RepositoryRequest.java Tue Feb 17 22:43:44 2009 @@ -179,7 +179,7 @@ return false; } - String pathParts[] = StringUtils.splitPreserveAllTokens( requestedPath, '/' ); + String pathParts[] = StringUtils.split( requestedPath, '/' ); return pathParts.length == 3; } Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/metadata/MetadataTools.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/metadata/MetadataTools.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/metadata/MetadataTools.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/metadata/MetadataTools.java Tue Feb 17 22:43:44 2009 @@ -350,7 +350,7 @@ ProjectReference reference, String proxyId ) { String metadataPath = getRepositorySpecificName( proxyId, toPath( reference ) ); - File metadataFile = new File( managedRepository.getRepoRoot(), metadataPath ); + File metadataFile = new File( managedRepository.getLocalPath(), metadataPath ); if ( !metadataFile.exists() || !metadataFile.isFile() ) { @@ -375,7 +375,7 @@ String logicalResource, String proxyId ) { String metadataPath = getRepositorySpecificName( proxyId, logicalResource ); - File metadataFile = new File( managedRepository.getRepoRoot(), metadataPath ); + File metadataFile = new File( managedRepository.getLocalPath(), metadataPath ); if ( !metadataFile.exists() || !metadataFile.isFile() ) { @@ -400,7 +400,7 @@ VersionedReference reference, String proxyId ) { String metadataPath = getRepositorySpecificName( proxyId, toPath( reference ) ); - File metadataFile = new File( managedRepository.getRepoRoot(), metadataPath ); + File metadataFile = new File( managedRepository.getLocalPath(), metadataPath ); if ( !metadataFile.exists() || !metadataFile.isFile() ) { @@ -423,7 +423,7 @@ public void updateMetadata( ManagedRepositoryContent managedRepository, String logicalResource) throws RepositoryMetadataException { - final File metadataFile = new File(managedRepository.getRepoRoot(), logicalResource); + final File metadataFile = new File(managedRepository.getLocalPath(), logicalResource); ArchivaRepositoryMetadata metadata = null; //Gather and merge all metadata available @@ -492,7 +492,7 @@ private List getMetadatasForManagedRepository( ManagedRepositoryContent managedRepository, String logicalResource ) { List metadatas = new ArrayList(); - File file = new File(managedRepository.getRepoRoot(), logicalResource); + File file = new File(managedRepository.getLocalPath(), logicalResource); if (file.exists()) { try @@ -547,7 +547,7 @@ public void updateMetadata( ManagedRepositoryContent managedRepository, ProjectReference reference ) throws LayoutException, RepositoryMetadataException, IOException, ContentNotFoundException { - File metadataFile = new File( managedRepository.getRepoRoot(), toPath( reference ) ); + File metadataFile = new File( managedRepository.getLocalPath(), toPath( reference ) ); long lastUpdated = getExistingLastUpdated( metadataFile ); @@ -750,7 +750,7 @@ public void updateMetadata( ManagedRepositoryContent managedRepository, VersionedReference reference ) throws LayoutException, RepositoryMetadataException, IOException, ContentNotFoundException { - File metadataFile = new File( managedRepository.getRepoRoot(), toPath( reference ) ); + File metadataFile = new File( managedRepository.getLocalPath(), toPath( reference ) ); long lastUpdated = getExistingLastUpdated( metadataFile ); @@ -912,7 +912,7 @@ path = path.substring( 0, idx ); } - File repoDir = new File( managedRepository.getRepoRoot(), path ); + final File repoDir = new File( managedRepository.getLocalPath(), path ); if ( !repoDir.exists() ) { @@ -926,7 +926,7 @@ + repoDir.getAbsolutePath() ); } - File repoFiles[] = repoDir.listFiles(); + final File repoFiles[] = repoDir.listFiles(); for ( int i = 0; i < repoFiles.length; i++ ) { if ( repoFiles[i].isDirectory() ) @@ -935,7 +935,7 @@ continue; } - String relativePath = PathUtil.getRelative( managedRepository.getRepoRoot(), repoFiles[i] ); + String relativePath = PathUtil.getRelative( managedRepository.getLocalPath().getAbsolutePath(), repoFiles[i] ); if ( filetypes.matchesArtifactPattern( relativePath ) ) { Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/metadata/MetadataToolsTest.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/metadata/MetadataToolsTest.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/metadata/MetadataToolsTest.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/metadata/MetadataToolsTest.java Tue Feb 17 22:43:44 2009 @@ -347,7 +347,7 @@ ProjectReference reference ) throws LayoutException, IOException, SAXException, ParserConfigurationException { - File metadataFile = new File( repository.getRepoRoot(), tools.toPath( reference ) ); + File metadataFile = new File( repository.getLocalPath(), tools.toPath( reference ) ); String actualMetadata = FileUtils.readFileToString( metadataFile, null ); DetailedDiff detailedDiff = new DetailedDiff( new Diff( expectedMetadata, actualMetadata ) ); @@ -362,7 +362,7 @@ VersionedReference reference ) throws LayoutException, IOException, SAXException, ParserConfigurationException { - File metadataFile = new File( repository.getRepoRoot(), tools.toPath( reference ) ); + File metadataFile = new File( repository.getLocalPath(), tools.toPath( reference ) ); String actualMetadata = FileUtils.readFileToString( metadataFile, null ); DetailedDiff detailedDiff = new DetailedDiff( new Diff( expectedMetadata, actualMetadata ) ); @@ -536,7 +536,7 @@ File srcRepoDir = new File( "src/test/repositories/metadata-repository" ); File srcDir = new File( srcRepoDir, path ); - File destDir = new File( repo.getRepoRoot(), path ); + File destDir = new File( repo.getLocalPath(), path ); assertTrue( "Source Dir exists: " + srcDir, srcDir.exists() ); destDir.mkdirs(); Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/pom.xml URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/pom.xml?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/pom.xml (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/pom.xml Tue Feb 17 22:43:44 2009 @@ -27,6 +27,10 @@ org.apache.archiva + archiva-repository-layer + + + org.apache.archiva archiva-repository-api Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepositoryFactory.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepositoryFactory.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepositoryFactory.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepositoryFactory.java Tue Feb 17 22:43:44 2009 @@ -19,31 +19,29 @@ * under the License. */ -import java.io.File; import java.util.HashMap; import java.util.Map; import org.apache.archiva.repository.api.Repository; import org.apache.archiva.repository.api.RepositoryFactory; -import org.apache.maven.archiva.configuration.ArchivaConfiguration; -import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; +import org.apache.maven.archiva.repository.ManagedRepositoryContent; +import org.apache.maven.archiva.repository.RepositoryContentFactory; public class DefaultRepositoryFactory implements RepositoryFactory { - private final ArchivaConfiguration archivaConfiguration; + private final RepositoryContentFactory repositoryContentFactory; - public DefaultRepositoryFactory(ArchivaConfiguration archivaConfiguration) + public DefaultRepositoryFactory(RepositoryContentFactory repositoryContentFactory) { - this.archivaConfiguration = archivaConfiguration; + this.repositoryContentFactory = repositoryContentFactory; } public Map getRepositories() { + final Map contentMap = repositoryContentFactory.getManagedContentMap(); final HashMap repositories = new HashMap(); - for (final ManagedRepositoryConfiguration configuration : archivaConfiguration.getConfiguration().getManagedRepositories()) + for (final String repositoryId : contentMap.keySet()) { - final DefaultRepository repository = new DefaultRepository(configuration.getId(), configuration.getName(), new File(configuration.getLocation())); - repositories.put(configuration.getId(), repository); - repository.getLocalPath().mkdirs(); + repositories.put(repositoryId, contentMap.get(repositoryId)); } return repositories; } Added: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/LegacyRepositoryManager.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/LegacyRepositoryManager.java?rev=745282&view=auto ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/LegacyRepositoryManager.java (added) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/LegacyRepositoryManager.java Tue Feb 17 22:43:44 2009 @@ -0,0 +1,109 @@ +package org.apache.archiva.repository; + +import java.io.InputStream; +import java.io.OutputStream; +import java.util.List; +import org.apache.archiva.repository.api.MutableResourceContext; +import org.apache.archiva.repository.api.RepositoryManager; +import org.apache.archiva.repository.api.RepositoryManagerException; +import org.apache.archiva.repository.api.RepositoryManagerWeight; +import org.apache.archiva.repository.api.ResourceContext; +import org.apache.archiva.repository.api.Status; +import org.apache.archiva.repository.api.SystemRepositoryManager; +import org.apache.maven.archiva.configuration.ArchivaConfiguration; +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.content.ManagedLegacyRepositoryContent; +import org.apache.maven.archiva.repository.content.RepositoryRequest; +import org.apache.maven.archiva.repository.layout.LayoutException; + +@RepositoryManagerWeight(8000) +public class LegacyRepositoryManager implements RepositoryManager +{ + private final ArchivaConfiguration archivaConfiguration; + private final SystemRepositoryManager systemRepositoryManager; + private final RepositoryContentFactory repositoryFactory; + private final RepositoryRequest repositoryRequest; + + public LegacyRepositoryManager(ArchivaConfiguration archivaConfiguration, + SystemRepositoryManager systemRepositoryManager, + RepositoryContentFactory repositoryFactory, + RepositoryRequest repositoryRequest) + { + this.archivaConfiguration = archivaConfiguration; + this.systemRepositoryManager = systemRepositoryManager; + this.repositoryFactory = repositoryFactory; + this.repositoryRequest = repositoryRequest; + } + + public ResourceContext handles(ResourceContext context) + { + final ManagedRepositoryContent repositoryContent = getManagedRepositoryContent(context); + if (repositoryContent != null) + { + if (isLegacyRepository(repositoryContent) || repositoryRequest.isLegacy(context.getLogicalPath())) + { + final MutableResourceContext resourceContext = new MutableResourceContext(context); + + try + { + final String nativePath = repositoryRequest.toNativePath(resourceContext.getLogicalPath(), repositoryContent); + resourceContext.setLogicalPath(nativePath); + return resourceContext; + } + catch (LayoutException e) + { + return null; + } + } + } + return null; + } + + public boolean read(ResourceContext context, OutputStream os) + { + return systemRepositoryManager.read(context, os); + } + + public boolean write(ResourceContext context, InputStream is) + { + return systemRepositoryManager.write(context, is); + } + + public List stat(ResourceContext context) + { + if (!(context instanceof MutableResourceContext)) + { + throw new RepositoryManagerException("handles() should have returned a MutableResourceContext"); + } + + return systemRepositoryManager.stat(context); + } + + public boolean exists(String repositoryId) + { + return systemRepositoryManager.exists(repositoryId); + } + + private ManagedRepositoryContent getManagedRepositoryContent(ResourceContext context) + { + try + { + return repositoryFactory.getManagedRepositoryContent(context.getRepositoryId()); + } + catch (RepositoryException e) + { + return null; + } + } + + private boolean isLegacyRepository(ManagedRepositoryContent repositoryContent) + { + if (repositoryContent instanceof ManagedLegacyRepositoryContent) + { + return true; + } + return false; + } +} Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/resources/META-INF/spring-context.xml URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/resources/META-INF/spring-context.xml?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/resources/META-INF/spring-context.xml (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/resources/META-INF/spring-context.xml Tue Feb 17 22:43:44 2009 @@ -3,24 +3,32 @@ 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"> - + + + + + + + + + - + - - + + - + \ No newline at end of file Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/main/java/org/apache/archiva/web/servlet/RepositoryServlet.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/main/java/org/apache/archiva/web/servlet/RepositoryServlet.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/main/java/org/apache/archiva/web/servlet/RepositoryServlet.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/main/java/org/apache/archiva/web/servlet/RepositoryServlet.java Tue Feb 17 22:43:44 2009 @@ -173,6 +173,7 @@ if ("PUT".equals(req.getMethod())) { repositoryManager.write(context, req.getInputStream()); + resp.setStatus(HttpServletResponse.SC_CREATED); return; } Modified: archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/test/java/org/apache/archiva/web/servlet/AbstractRepositoryServletTestCase.java URL: http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/test/java/org/apache/archiva/web/servlet/AbstractRepositoryServletTestCase.java?rev=745282&r1=745281&r2=745282&view=diff ============================================================================== --- archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/test/java/org/apache/archiva/web/servlet/AbstractRepositoryServletTestCase.java (original) +++ archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/test/java/org/apache/archiva/web/servlet/AbstractRepositoryServletTestCase.java Tue Feb 17 22:43:44 2009 @@ -148,6 +148,8 @@ protected void setUp() throws Exception { + super.setUp(); + String appserverBase = getTestFile( "target/appserver-base" ).getAbsolutePath(); System.setProperty( "appserver.base", appserverBase ); @@ -155,8 +157,6 @@ File testConfDest = new File( appserverBase, "conf/archiva.xml" ); FileUtils.copyFile( testConf, testConfDest ); - super.setUp(); - archivaConfiguration = (ArchivaConfiguration) lookup( ArchivaConfiguration.class ); repoRootInternal = new File( appserverBase, "data/repositories/internal" ); Configuration config = archivaConfiguration.getConfiguration(); @@ -166,15 +166,14 @@ CacheManager.getInstance().removeCache( "url-failures-cache" ); - HttpUnitOptions.setExceptionsThrownOnErrorStatus( false ); - - sr = new ServletRunner( getTestFile( "src/test/resources/WEB-INF/web.xml" ) ); + HttpUnitOptions.setExceptionsThrownOnErrorStatus( false ); final Hashtable params = new Hashtable(); params.put(RepositoryServlet.REPOSITORY_MANAGER_FACTORY, "repositoryManagerFactory"); params.put(RepositoryServlet.PREREPOSITORY_INTERCEPTOR_FACTORY, "preRepositoryInterceptorFactory"); params.put(RepositoryServlet.POSTREPOSITORY_INTERCEPTOR_FACTORY, "postRepositoryInterceptorFactory"); + sr = new ServletRunner( getTestFile( "src/test/resources/WEB-INF/web.xml" ) ); sr.registerServlet( "/repository/*", RepositoryServlet.class.getName(), params ); sc = sr.newClient(); }