Author: olamy
Date: Mon Mar 24 06:15:44 2014
New Revision: 1580762
URL: http://svn.apache.org/r1580762
Log:
fix deleting project version
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=1580762&r1=1580761&r2=1580762&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
Mon Mar 24 06:15:44 2014
@@ -1778,46 +1778,33 @@ public class CassandraMetadataRepository
final String projectVersion )
throws MetadataRepositoryException
{
- /*
- final List<ArtifactMetadataModel> artifactMetadataModels = new
ArrayList<ArtifactMetadataModel>();
- // FIXME use cql query
+ String key = new
ProjectVersionMetadataModel.KeyBuilder().withRepository( repoId ).withNamespace(
+ namespace ).withProjectId( projectId ).withId( projectVersion
).build();
- getArtifactMetadataModelEntityManager().visitAll( new
Function<ArtifactMetadataModel, Boolean>()
- {
- @Override
- public Boolean apply( ArtifactMetadataModel artifactMetadataModel )
- {
- if ( artifactMetadataModel != null )
- {
- if ( StringUtils.equals( repoId,
artifactMetadataModel.getRepositoryId() ) && StringUtils.equals(
- namespace, artifactMetadataModel.getNamespace() ) &&
StringUtils.equals( projectId,
-
artifactMetadataModel.getProject() )
- && StringUtils.equals( projectVersion,
artifactMetadataModel.getProjectVersion() ) )
- {
- artifactMetadataModels.add( artifactMetadataModel );
- }
- }
- return Boolean.TRUE;
- }
- } );
+ this.projectVersionMetadataModelTemplate.deleteRow( key );
- logger.debug( "removeProjectVersions:{}", artifactMetadataModels );
- if ( artifactMetadataModels.isEmpty() )
- {
- return;
- }
+ Keyspace keyspace = cassandraArchivaManager.getKeyspace();
+
+ StringSerializer ss = StringSerializer.get();
- getArtifactMetadataModelEntityManager().remove( artifactMetadataModels
);
+ RangeSlicesQuery<String, String, String> query = HFactory //
+ .createRangeSlicesQuery( keyspace, ss, ss, ss ) //
+ .setColumnFamily(
cassandraArchivaManager.getArtifactMetadataModelFamilyName() ) //
+ .setColumnNames( "namespaceId" ); //
- String key = new
ProjectVersionMetadataModel.KeyBuilder().withProjectId( projectId ).withId(
- projectVersion ).withRepository( repoId ).withNamespace( namespace
).build();
+ query = query.addEqualsExpression( "repositoryName", repoId ) //
+ .addEqualsExpression( "namespaceId", namespace ) //
+ .addEqualsExpression( "project", projectId ) //
+ .addEqualsExpression( "projectVersion", projectVersion );
+
+ QueryResult<OrderedRows<String,String,String>> result =
query.execute();
- ProjectVersionMetadataModel projectVersionMetadataModel = new
ProjectVersionMetadataModel();
- projectVersionMetadataModel.setRowId( key );
+ for (Row<String,String,String> row : result.get())
+ {
+ this.artifactMetadataTemplate.deleteRow( row.getKey() );
+ }
- getProjectVersionMetadataModelEntityManager().remove(
projectVersionMetadataModel );
- */
}
@Override