fix removeProject

git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1579828 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Olivier Lamy 2014-03-20 23:23:44 +00:00
parent 6e362e8235
commit c3bb4dc714
2 changed files with 18 additions and 2 deletions

View File

@ -98,7 +98,7 @@ public Repository getOrCreateRepository( String repositoryId )
.createRangeSlicesQuery( keyspace, StringSerializer.get(), StringSerializer.get(),
StringSerializer.get() ) //
.setColumnFamily( cassandraArchivaManager.getRepositoryFamilyName() ) //
.setColumnNames( "repositoryName" ) //
.setColumnNames( "repositoryName" ) //
.addEqualsExpression( "repositoryName", repositoryId ) //
.execute();
@ -124,7 +124,8 @@ public Repository getOrCreateRepository( String repositoryId )
}
return new Repository( result.get().getList().get( 0 ).getColumnSlice().getColumnByName( "repositoryName" ).getValue() );
return new Repository(
result.get().getList().get( 0 ).getColumnSlice().getColumnByName( "repositoryName" ).getValue() );
}
@ -569,6 +570,17 @@ public void removeProject( final String repositoryId, final String namespaceId,
throws MetadataRepositoryException
{
String key = new Project.KeyBuilder() //
.withProjectId( projectId ) //
.withNamespace( new Namespace( namespaceId, new Repository( repositoryId ) ) ) //
.build();
HFactory.createMutator( cassandraArchivaManager.getKeyspace(), new StringSerializer() ) //
.addDeletion( key, cassandraArchivaManager.getProjectFamilyName() ) //
.execute();
// TODO finish linked data to delete
/* // cleanup ArtifactMetadataModel
final List<ArtifactMetadataModel> artifactMetadataModels = new ArrayList<ArtifactMetadataModel>();

View File

@ -118,6 +118,10 @@ public void testMetadataRepo()
Assertions.assertThat( cmr.getProjects( "release", "org" ) ).isNotEmpty().hasSize( 1 ).containsExactly(
"theproject" );
cmr.removeProject( "release", "org", "theproject" );
Assertions.assertThat( cmr.getProjects( "release", "org" ) ).isEmpty();
cmr.removeRepository( "release" );
r = cmr.getRepository( "release" );