Author: olamy
Date: Wed Mar 26 06:01:20 2014
New Revision: 1581698
URL: http://svn.apache.org/r1581698
Log:
fix deleting a project -> remove all artifacts
Modified:
archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java
Modified:
archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java?rev=1581698&r1=1581697&r2=1581698&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java
(original)
+++
archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java
Wed Mar 26 06:01:20 2014
@@ -1992,15 +1992,25 @@ public class CassandraMetadataRepository
throws MetadataRepositoryException
{
- String key = new
ProjectVersionMetadataModel.KeyBuilder().withRepository( repoId ).withNamespace(
- namespace ).withProjectId( projectId ).withId( projectVersion
).build();
-
- this.projectVersionMetadataModelTemplate.deleteRow( key );
-
Keyspace keyspace = cassandraArchivaManager.getKeyspace();
StringSerializer ss = StringSerializer.get();
+ QueryResult<OrderedRows<String, String, String>> result = HFactory //
+ .createRangeSlicesQuery( keyspace, ss, ss, ss ) //
+ .setColumnFamily(
cassandraArchivaManager.getProjectVersionMetadataFamilyName() ) //
+ .setColumnNames( "version" ) //
+ .addEqualsExpression( "repositoryName", repoId ) //
+ .addEqualsExpression( "namespaceId", namespace ) //
+ .addEqualsExpression( "projectId", projectId ) //
+ .addEqualsExpression( "projectVersion", projectVersion ) //
+ .execute();
+
+ for ( Row<String, String, String> row : result.get().getList() )
+ {
+ this.projectVersionMetadataModelTemplate.deleteRow( row.getKey() );
+ }
+
RangeSlicesQuery<String, String, String> query = HFactory //
.createRangeSlicesQuery( keyspace, ss, ss, ss ) //
.setColumnFamily(
cassandraArchivaManager.getArtifactMetadataFamilyName() ) //
@@ -2011,7 +2021,7 @@ public class CassandraMetadataRepository
.addEqualsExpression( "project", projectId ) //
.addEqualsExpression( "projectVersion", projectVersion );
- QueryResult<OrderedRows<String, String, String>> result =
query.execute();
+ result = query.execute();
for ( Row<String, String, String> row : result.get() )
{