Author: olamy
Date: Mon Oct 22 14:51:12 2012
New Revision: 1400904
URL: http://svn.apache.org/viewvc?rev=1400904&view=rev
Log:
[MRM-1703] Cannot delete project add unit test for metadata repository.
Modified:
archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java
archiva/trunk/archiva-modules/plugins/metadata-store-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
Modified:
archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java?rev=1400904&r1=1400903&r2=1400904&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java
(original)
+++
archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java
Mon Oct 22 14:51:12 2012
@@ -1170,6 +1170,25 @@ public abstract class AbstractMetadataRe
}
@Test
+ public void deleteProject()
+ throws Exception
+ {
+ ArtifactMetadata artifact = createArtifact();
+ artifact.addFacet( new TestMetadataFacet( "value" ) );
+
+ repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,
TEST_PROJECT_VERSION, artifact );
+
+ repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,
TEST_PROJECT_VERSION, artifact );
+
+ assertEquals( 1, repository.getProjectVersions( TEST_REPO_ID,
TEST_NAMESPACE, TEST_PROJECT ).size() );
+
+ repository.removeProject( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT );
+
+ assertEquals( 0, repository.getProjectVersions( TEST_REPO_ID,
TEST_NAMESPACE, TEST_PROJECT ).size() );
+ }
+
+
+ @Test
public void deleteSnapshotVersion()
throws Exception
{
Modified:
archiva/trunk/archiva-modules/plugins/metadata-store-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java?rev=1400904&r1=1400903&r2=1400904&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/plugins/metadata-store-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
(original)
+++
archiva/trunk/archiva-modules/plugins/metadata-store-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
Mon Oct 22 14:51:12 2012
@@ -1165,7 +1165,18 @@ public class FileMetadataRepository
public void removeProject( String repositoryId, String namespace, String
projectId )
throws MetadataRepositoryException
{
- // TODO
+ File directory = new File( getDirectory( repositoryId ), namespace +
"/" + projectId );
+ try
+ {
+ if ( directory.exists() )
+ {
+ FileUtils.deleteDirectory( directory );
+ }
+ }
+ catch ( IOException e )
+ {
+ throw new MetadataRepositoryException( e.getMessage(), e );
+ }
}
public void removeProjectVersion( String repoId, String namespace, String
projectId, String projectVersion )