fix deleting project version

git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1580762 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Olivier Lamy 2014-03-24 06:15:44 +00:00
parent d18ba9ef21
commit 4b7e439132
1 changed files with 22 additions and 35 deletions

View File

@ -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>()
this.projectVersionMetadataModelTemplate.deleteRow( key );
Keyspace keyspace = cassandraArchivaManager.getKeyspace();
StringSerializer ss = StringSerializer.get();
RangeSlicesQuery<String, String, String> query = HFactory //
.createRangeSlicesQuery( keyspace, ss, ss, ss ) //
.setColumnFamily( cassandraArchivaManager.getArtifactMetadataModelFamilyName() ) //
.setColumnNames( "namespaceId" ); //
query = query.addEqualsExpression( "repositoryName", repoId ) //
.addEqualsExpression( "namespaceId", namespace ) //
.addEqualsExpression( "project", projectId ) //
.addEqualsExpression( "projectVersion", projectVersion );
QueryResult<OrderedRows<String,String,String>> result = query.execute();
for (Row<String,String,String> row : result.get())
{
@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;
}
} );
logger.debug( "removeProjectVersions:{}", artifactMetadataModels );
if ( artifactMetadataModels.isEmpty() )
{
return;
this.artifactMetadataTemplate.deleteRow( row.getKey() );
}
getArtifactMetadataModelEntityManager().remove( artifactMetadataModels );
String key = new ProjectVersionMetadataModel.KeyBuilder().withProjectId( projectId ).withId(
projectVersion ).withRepository( repoId ).withNamespace( namespace ).build();
ProjectVersionMetadataModel projectVersionMetadataModel = new ProjectVersionMetadataModel();
projectVersionMetadataModel.setRowId( key );
getProjectVersionMetadataModelEntityManager().remove( projectVersionMetadataModel );
*/
}
@Override