diff options
Diffstat (limited to 'archiva-modules/plugins')
6 files changed, 309 insertions, 244 deletions
diff --git a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraEntityManagerFactory.java b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraEntityManagerFactory.java index da5a8b613..dcb18d742 100644 --- a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraEntityManagerFactory.java +++ b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraEntityManagerFactory.java @@ -20,6 +20,13 @@ package org.apache.archiva.metadata.repository.cassandra; */ import com.netflix.astyanax.Keyspace; +import com.netflix.astyanax.entitystore.EntityManager; +import org.apache.archiva.metadata.repository.cassandra.model.ArtifactMetadataModel; +import org.apache.archiva.metadata.repository.cassandra.model.MetadataFacetModel; +import org.apache.archiva.metadata.repository.cassandra.model.Namespace; +import org.apache.archiva.metadata.repository.cassandra.model.Project; +import org.apache.archiva.metadata.repository.cassandra.model.ProjectVersionMetadataModel; +import org.apache.archiva.metadata.repository.cassandra.model.Repository; /** * @author Olivier Lamy @@ -28,4 +35,17 @@ public interface CassandraEntityManagerFactory { Keyspace getKeyspace(); + EntityManager<Repository, String> getRepositoryEntityManager(); + + EntityManager<Namespace, String> getNamespaceEntityManager(); + + EntityManager<Project, String> getProjectEntityManager(); + + EntityManager<ArtifactMetadataModel, String> getArtifactMetadataModelEntityManager(); + + EntityManager<MetadataFacetModel, String> getMetadataFacetModelEntityManager(); + + EntityManager<ProjectVersionMetadataModel, String> getProjectVersionMetadataModelEntityManager(); + + } diff --git a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java index 33d73783a..ad529aaab 100644 --- a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java +++ b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java @@ -75,190 +75,46 @@ public class CassandraMetadataRepository private final Map<String, MetadataFacetFactory> metadataFacetFactories; - private Keyspace keyspace; - - private EntityManager<Repository, String> repositoryEntityManager; - - private EntityManager<Namespace, String> namespaceEntityManager; - - private EntityManager<Project, String> projectEntityManager; - - private EntityManager<ArtifactMetadataModel, String> artifactMetadataModelEntityManager; - - private EntityManager<MetadataFacetModel, String> metadataFacetModelEntityManager; - - private EntityManager<ProjectVersionMetadataModel, String> projectVersionMetadataModelEntityManager; + private CassandraEntityManagerFactory cassandraEntityManagerFactory; public CassandraMetadataRepository( Map<String, MetadataFacetFactory> metadataFacetFactories, - ArchivaConfiguration configuration, Keyspace keyspace ) + ArchivaConfiguration configuration, CassandraEntityManagerFactory cassandraEntityManagerFactory ) { this.metadataFacetFactories = metadataFacetFactories; this.configuration = configuration; - - this.keyspace = keyspace; - - try - { - Properties properties = keyspace.getKeyspaceProperties(); - logger.info( "keyspace properties: {}", properties ); - } - catch ( ConnectionException e ) - { - // FIXME better logging ! - logger.warn( e.getMessage(), e ); - } - - try - { - repositoryEntityManager = - new DefaultEntityManager.Builder<Repository, String>().withEntityType( Repository.class ).withKeyspace( - keyspace ).build(); - boolean exists = columnFamilyExists( "repository" ); - // TODO very basic test we must test model change too - if ( !exists ) - { - repositoryEntityManager.createStorage( null ); - } - - namespaceEntityManager = - new DefaultEntityManager.Builder<Namespace, String>().withEntityType( Namespace.class ).withKeyspace( - keyspace ).build(); - - exists = columnFamilyExists( "namespace" ); - if ( !exists ) - { - namespaceEntityManager.createStorage( null ); - } - - projectEntityManager = - new DefaultEntityManager.Builder<Project, String>().withEntityType( Project.class ).withKeyspace( - keyspace ).build(); - - exists = columnFamilyExists( "project" ); - if ( !exists ) - { - projectEntityManager.createStorage( null ); - } - - artifactMetadataModelEntityManager = - new DefaultEntityManager.Builder<ArtifactMetadataModel, String>().withEntityType( - ArtifactMetadataModel.class ).withKeyspace( keyspace ).build(); - - exists = columnFamilyExists( "artifactmetadatamodel" ); - if ( !exists ) - { - artifactMetadataModelEntityManager.createStorage( null ); - } - - metadataFacetModelEntityManager = - new DefaultEntityManager.Builder<MetadataFacetModel, String>().withEntityType( - MetadataFacetModel.class ).withKeyspace( keyspace ).build(); - - exists = columnFamilyExists( "metadatafacetmodel" ); - if ( !exists ) - { - metadataFacetModelEntityManager.createStorage( null ); - } - - projectVersionMetadataModelEntityManager = - new DefaultEntityManager.Builder<ProjectVersionMetadataModel, String>().withEntityType( - ProjectVersionMetadataModel.class ).withKeyspace( keyspace ).build(); - - exists = columnFamilyExists( "projectversionmetadatamodel" ); - if ( !exists ) - { - projectVersionMetadataModelEntityManager.createStorage( null ); - } - - } - catch ( PersistenceException e ) - { - // FIXME report exception - logger.error( e.getMessage(), e ); - } - catch ( ConnectionException e ) - { - // FIXME report exception - logger.error( e.getMessage(), e ); - } + this.cassandraEntityManagerFactory = cassandraEntityManagerFactory; } - private boolean columnFamilyExists( String columnFamilyName ) - throws ConnectionException - { - try - { - Properties properties = keyspace.getColumnFamilyProperties( columnFamilyName ); - logger.debug( "getColumnFamilyProperties for {}: {}", columnFamilyName, properties ); - return true; - } - catch ( NotFoundException e ) - { - return false; - } - } + public EntityManager<Repository, String> getRepositoryEntityManager() { - return repositoryEntityManager; + return this.cassandraEntityManagerFactory.getRepositoryEntityManager(); } public EntityManager<Namespace, String> getNamespaceEntityManager() { - return namespaceEntityManager; - } - - public void setRepositoryEntityManager( EntityManager<Repository, String> repositoryEntityManager ) - { - this.repositoryEntityManager = repositoryEntityManager; - } - - public void setNamespaceEntityManager( EntityManager<Namespace, String> namespaceEntityManager ) - { - this.namespaceEntityManager = namespaceEntityManager; + return this.cassandraEntityManagerFactory.getNamespaceEntityManager(); } public EntityManager<Project, String> getProjectEntityManager() { - return projectEntityManager; - } - - public void setProjectEntityManager( EntityManager<Project, String> projectEntityManager ) - { - this.projectEntityManager = projectEntityManager; + return this.cassandraEntityManagerFactory.getProjectEntityManager(); } public EntityManager<ArtifactMetadataModel, String> getArtifactMetadataModelEntityManager() { - return artifactMetadataModelEntityManager; - } - - public void setArtifactMetadataModelEntityManager( - EntityManager<ArtifactMetadataModel, String> artifactMetadataModelEntityManager ) - { - this.artifactMetadataModelEntityManager = artifactMetadataModelEntityManager; + return cassandraEntityManagerFactory.getArtifactMetadataModelEntityManager(); } public EntityManager<MetadataFacetModel, String> getMetadataFacetModelEntityManager() { - return metadataFacetModelEntityManager; - } - - public void setMetadataFacetModelEntityManager( - EntityManager<MetadataFacetModel, String> metadataFacetModelEntityManager ) - { - this.metadataFacetModelEntityManager = metadataFacetModelEntityManager; + return this.cassandraEntityManagerFactory.getMetadataFacetModelEntityManager(); } public EntityManager<ProjectVersionMetadataModel, String> getProjectVersionMetadataModelEntityManager() { - return projectVersionMetadataModelEntityManager; - } - - public void setProjectVersionMetadataModelEntityManager( - EntityManager<ProjectVersionMetadataModel, String> projectVersionMetadataModelEntityManager ) - { - this.projectVersionMetadataModelEntityManager = projectVersionMetadataModelEntityManager; + return this.cassandraEntityManagerFactory.getProjectVersionMetadataModelEntityManager(); } @Override @@ -274,24 +130,24 @@ public class CassandraMetadataRepository { try { - Repository repository = this.repositoryEntityManager.get( repositoryId ); + Repository repository = this.getRepositoryEntityManager().get( repositoryId ); if ( repository == null ) { repository = new Repository( repositoryId ); Namespace namespace = new Namespace( namespaceId, repository ); - this.repositoryEntityManager.put( repository ); + this.getRepositoryEntityManager().put( repository ); - this.namespaceEntityManager.put( namespace ); + this.getNamespaceEntityManager().put( namespace ); } // FIXME add a Namespace id builder - Namespace namespace = namespaceEntityManager.get( + Namespace namespace = getNamespaceEntityManager().get( new Namespace.KeyBuilder().withNamespace( namespaceId ).withRepositoryId( repositoryId ).build() ); if ( namespace == null ) { namespace = new Namespace( namespaceId, repository ); - namespaceEntityManager.put( namespace ); + getNamespaceEntityManager().put( namespace ); } return namespace; } @@ -309,11 +165,11 @@ public class CassandraMetadataRepository { try { - Namespace namespace = namespaceEntityManager.get( + Namespace namespace = getNamespaceEntityManager().get( new Namespace.KeyBuilder().withNamespace( namespaceId ).withRepositoryId( repositoryId ).build() ); if ( namespace != null ) { - namespaceEntityManager.remove( namespace ); + getNamespaceEntityManager().remove( namespace ); } } catch ( PersistenceException e ) @@ -332,7 +188,7 @@ public class CassandraMetadataRepository final List<ArtifactMetadataModel> artifactMetadataModels = new ArrayList<ArtifactMetadataModel>(); // remove data related to the repository - this.artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + this.getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -348,11 +204,11 @@ public class CassandraMetadataRepository } } ); - artifactMetadataModelEntityManager.remove( artifactMetadataModels ); + getArtifactMetadataModelEntityManager().remove( artifactMetadataModels ); final List<Namespace> namespaces = new ArrayList<Namespace>(); - namespaceEntityManager.visitAll( new Function<Namespace, Boolean>() + getNamespaceEntityManager().visitAll( new Function<Namespace, Boolean>() { @Override public Boolean apply( Namespace namespace ) @@ -368,10 +224,10 @@ public class CassandraMetadataRepository } } ); - namespaceEntityManager.remove( namespaces ); + getNamespaceEntityManager().remove( namespaces ); final List<Project> projects = new ArrayList<Project>(); - projectEntityManager.visitAll( new Function<Project, Boolean>() + getProjectEntityManager().visitAll( new Function<Project, Boolean>() { @Override public Boolean apply( Project project ) @@ -387,16 +243,16 @@ public class CassandraMetadataRepository } } ); - projectEntityManager.remove( projects ); + getProjectEntityManager().remove( projects ); // TODO cleanup or not //final List<MetadataFacetModel> metadataFacetModels = new ArrayList<MetadataFacetModel>( ); - //metadataFacetModelEntityManager.visitAll( new Function<MetadataFacetModel, Boolean>() + //getMetadataFacetModelEntityManager().visitAll( new Function<MetadataFacetModel, Boolean>() final List<ProjectVersionMetadataModel> projectVersionMetadataModels = new ArrayList<ProjectVersionMetadataModel>(); - projectVersionMetadataModelEntityManager.visitAll( new Function<ProjectVersionMetadataModel, Boolean>() + getProjectVersionMetadataModelEntityManager().visitAll( new Function<ProjectVersionMetadataModel, Boolean>() { @Override public Boolean apply( ProjectVersionMetadataModel projectVersionMetadataModel ) @@ -413,12 +269,12 @@ public class CassandraMetadataRepository } } ); - projectVersionMetadataModelEntityManager.remove( projectVersionMetadataModels ); + getProjectVersionMetadataModelEntityManager().remove( projectVersionMetadataModels ); - Repository repository = repositoryEntityManager.get( repositoryId ); + Repository repository = getRepositoryEntityManager().get( repositoryId ); if ( repository != null ) { - repositoryEntityManager.remove( repository ); + getRepositoryEntityManager().remove( repository ); } } @@ -436,7 +292,7 @@ public class CassandraMetadataRepository { logger.debug( "getRepositories" ); - List<Repository> repositories = repositoryEntityManager.getAll(); + List<Repository> repositories = getRepositoryEntityManager().getAll(); if ( repositories == null ) { return Collections.emptyList(); @@ -465,7 +321,7 @@ public class CassandraMetadataRepository { final Set<String> namespaces = new HashSet<String>(); - namespaceEntityManager.visitAll( new Function<Namespace, Boolean>() + getNamespaceEntityManager().visitAll( new Function<Namespace, Boolean>() { // @Nullable add dependency ? @Override @@ -500,7 +356,7 @@ public class CassandraMetadataRepository { final Set<String> namespaces = new HashSet<String>(); - namespaceEntityManager.visitAll( new Function<Namespace, Boolean>() + getNamespaceEntityManager().visitAll( new Function<Namespace, Boolean>() { // @Nullable add dependency ? @Override @@ -550,7 +406,7 @@ public class CassandraMetadataRepository //List<Repository> namespaces = typedQuery.setParameter( "id", repoId ).getResultList(); - Repository repository = repositoryEntityManager.get( repoId ); + Repository repository = getRepositoryEntityManager().get( repoId ); if ( repository == null ) { @@ -560,11 +416,11 @@ public class CassandraMetadataRepository // FIXME find correct cql query //String query = "select * from namespace where repository.id = '" + repoId + "';"; - //List<Namespace> namespaces = namespaceEntityManager.find( query ); + //List<Namespace> namespaces = getNamespaceEntityManager().find( query ); final Set<Namespace> namespaces = new HashSet<Namespace>(); - namespaceEntityManager.visitAll( new Function<Namespace, Boolean>() + getNamespaceEntityManager().visitAll( new Function<Namespace, Boolean>() { // @Nullable add dependency ? @Override @@ -611,7 +467,7 @@ public class CassandraMetadataRepository String projectKey = new Project.KeyBuilder().withProjectId( projectMetadata.getId() ).withNamespace( new Namespace( projectMetadata.getNamespace(), new Repository( repositoryId ) ) ).build(); - Project project = projectEntityManager.get( projectKey ); + Project project = getProjectEntityManager().get( projectKey ); if ( project != null ) { return; @@ -619,7 +475,7 @@ public class CassandraMetadataRepository String namespaceKey = new Namespace.KeyBuilder().withRepositoryId( repositoryId ).withNamespace( projectMetadata.getNamespace() ).build(); - Namespace namespace = namespaceEntityManager.get( namespaceKey ); + Namespace namespace = getNamespaceEntityManager().get( namespaceKey ); if ( namespace == null ) { namespace = updateOrAddNamespace( repositoryId, projectMetadata.getNamespace() ); @@ -629,7 +485,7 @@ public class CassandraMetadataRepository try { - projectEntityManager.put( project ); + getProjectEntityManager().put( project ); } catch ( PersistenceException e ) { @@ -646,7 +502,7 @@ public class CassandraMetadataRepository // cleanup ArtifactMetadataModel final List<ArtifactMetadataModel> artifactMetadataModels = new ArrayList<ArtifactMetadataModel>(); - artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -664,14 +520,14 @@ public class CassandraMetadataRepository } } ); - artifactMetadataModelEntityManager.remove( artifactMetadataModels ); + getArtifactMetadataModelEntityManager().remove( artifactMetadataModels ); Namespace namespace = new Namespace( namespaceId, new Repository( repositoryId ) ); final List<ProjectVersionMetadataModel> projectVersionMetadataModels = new ArrayList<ProjectVersionMetadataModel>(); - projectVersionMetadataModelEntityManager.visitAll( new Function<ProjectVersionMetadataModel, Boolean>() + getProjectVersionMetadataModelEntityManager().visitAll( new Function<ProjectVersionMetadataModel, Boolean>() { @Override public Boolean apply( ProjectVersionMetadataModel projectVersionMetadataModel ) @@ -692,12 +548,12 @@ public class CassandraMetadataRepository if ( !projectVersionMetadataModels.isEmpty() ) { - projectVersionMetadataModelEntityManager.remove( projectVersionMetadataModels ); + getProjectVersionMetadataModelEntityManager().remove( projectVersionMetadataModels ); } String key = new Project.KeyBuilder().withNamespace( namespace ).withProjectId( projectId ).build(); - Project project = projectEntityManager.get( key ); + Project project = getProjectEntityManager().get( key ); if ( project == null ) { logger.debug( "removeProject notfound" ); @@ -705,7 +561,7 @@ public class CassandraMetadataRepository } logger.debug( "removeProject {}", project ); - projectEntityManager.remove( project ); + getProjectEntityManager().remove( project ); } @Override @@ -713,7 +569,7 @@ public class CassandraMetadataRepository throws MetadataResolutionException { final Set<String> versions = new HashSet<String>(); - projectVersionMetadataModelEntityManager.visitAll( new Function<ProjectVersionMetadataModel, Boolean>() + getProjectVersionMetadataModelEntityManager().visitAll( new Function<ProjectVersionMetadataModel, Boolean>() { @Override public Boolean apply( ProjectVersionMetadataModel projectVersionMetadataModel ) @@ -732,7 +588,7 @@ public class CassandraMetadataRepository } } ); // FIXME use cql query - artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -761,7 +617,7 @@ public class CassandraMetadataRepository String namespaceKey = new Namespace.KeyBuilder().withRepositoryId( repositoryId ).withNamespace( namespaceId ).build(); // create the namespace if not exists - Namespace namespace = namespaceEntityManager.get( namespaceKey ); + Namespace namespace = getNamespaceEntityManager().get( namespaceKey ); if ( namespace == null ) { namespace = updateOrAddNamespace( repositoryId, namespaceId ); @@ -770,13 +626,13 @@ public class CassandraMetadataRepository // create the project if not exist String projectKey = new Project.KeyBuilder().withNamespace( namespace ).withProjectId( projectId ).build(); - Project project = projectEntityManager.get( projectKey ); + Project project = getProjectEntityManager().get( projectKey ); if ( project == null ) { project = new Project( projectKey, projectId, namespace ); try { - projectEntityManager.put( project ); + getProjectEntityManager().put( project ); } catch ( PersistenceException e ) { @@ -787,7 +643,7 @@ public class CassandraMetadataRepository String key = new ArtifactMetadataModel.KeyBuilder().withNamespace( namespace ).withProject( projectId ).withId( artifactMeta.getId() ).withProjectVersion( projectVersion ).build(); - ArtifactMetadataModel artifactMetadataModel = artifactMetadataModelEntityManager.get( key ); + ArtifactMetadataModel artifactMetadataModel = getArtifactMetadataModelEntityManager().get( key ); if ( artifactMetadataModel == null ) { artifactMetadataModel = new ArtifactMetadataModel( key, artifactMeta.getId(), repositoryId, namespaceId, @@ -810,7 +666,7 @@ public class CassandraMetadataRepository try { - artifactMetadataModelEntityManager.put( artifactMetadataModel ); + getArtifactMetadataModelEntityManager().put( artifactMetadataModel ); } catch ( PersistenceException e ) { @@ -820,7 +676,7 @@ public class CassandraMetadataRepository key = new ProjectVersionMetadataModel.KeyBuilder().withRepository( repositoryId ).withNamespace( namespace ).withProjectId( projectId ).withId( projectVersion ).build(); - ProjectVersionMetadataModel projectVersionMetadataModel = projectVersionMetadataModelEntityManager.get( key ); + ProjectVersionMetadataModel projectVersionMetadataModel = getProjectVersionMetadataModelEntityManager().get( key ); if ( projectVersionMetadataModel == null ) { @@ -830,7 +686,7 @@ public class CassandraMetadataRepository projectVersionMetadataModel.setId( projectVersion ); projectVersionMetadataModel.setNamespace( namespace ); - projectVersionMetadataModelEntityManager.put( projectVersionMetadataModel ); + getProjectVersionMetadataModelEntityManager().put( projectVersionMetadataModel ); } @@ -846,7 +702,7 @@ public class CassandraMetadataRepository { final Set<String> versions = new HashSet<String>(); // FIXME use cql query - artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -889,7 +745,7 @@ public class CassandraMetadataRepository final List<MetadataFacetModel> metadataFacetModels = new ArrayList<MetadataFacetModel>(); - metadataFacetModelEntityManager.visitAll( new Function<MetadataFacetModel, Boolean>() + getMetadataFacetModelEntityManager().visitAll( new Function<MetadataFacetModel, Boolean>() { @Override public Boolean apply( MetadataFacetModel metadataFacetModel ) @@ -906,7 +762,7 @@ public class CassandraMetadataRepository } } ); - metadataFacetModelEntityManager.remove( metadataFacetModels ); + getMetadataFacetModelEntityManager().remove( metadataFacetModels ); Map<String, String> properties = metadataFacet.toProperties(); @@ -923,7 +779,7 @@ public class CassandraMetadataRepository metadataFacetModelsToAdd.add( metadataFacetModel ); } - metadataFacetModelEntityManager.put( metadataFacetModelsToAdd ); + getMetadataFacetModelEntityManager().put( metadataFacetModelsToAdd ); } } @@ -935,7 +791,7 @@ public class CassandraMetadataRepository { String namespaceKey = new Namespace.KeyBuilder().withRepositoryId( repositoryId ).withNamespace( namespaceId ).build(); - Namespace namespace = namespaceEntityManager.get( namespaceKey ); + Namespace namespace = getNamespaceEntityManager().get( namespaceKey ); if ( namespace == null ) { namespace = updateOrAddNamespace( repositoryId, namespaceId ); @@ -943,18 +799,18 @@ public class CassandraMetadataRepository String key = new Project.KeyBuilder().withNamespace( namespace ).withProjectId( projectId ).build(); - Project project = projectEntityManager.get( key ); + Project project = getProjectEntityManager().get( key ); if ( project == null ) { project = new Project( key, projectId, namespace ); - projectEntityManager.put( project ); + getProjectEntityManager().put( project ); } // we don't test of repository and namespace really exist ! key = new ProjectVersionMetadataModel.KeyBuilder().withRepository( repositoryId ).withNamespace( namespaceId ).withProjectId( projectId ).withId( versionMetadata.getId() ).build(); - ProjectVersionMetadataModel projectVersionMetadataModel = projectVersionMetadataModelEntityManager.get( key ); + ProjectVersionMetadataModel projectVersionMetadataModel = getProjectVersionMetadataModelEntityManager().get( key ); if ( projectVersionMetadataModel == null ) { @@ -976,7 +832,7 @@ public class CassandraMetadataRepository try { - projectVersionMetadataModelEntityManager.put( projectVersionMetadataModel ); + getProjectVersionMetadataModelEntityManager().put( projectVersionMetadataModel ); ArtifactMetadataModel artifactMetadataModel = new ArtifactMetadataModel(); artifactMetadataModel.setArtifactMetadataModelId( @@ -1009,7 +865,7 @@ public class CassandraMetadataRepository { // FIXME use cql query !! final List<String> facets = new ArrayList<String>(); - this.metadataFacetModelEntityManager.visitAll( new Function<MetadataFacetModel, Boolean>() + this.getMetadataFacetModelEntityManager().visitAll( new Function<MetadataFacetModel, Boolean>() { @Override public Boolean apply( MetadataFacetModel metadataFacetModel ) @@ -1044,7 +900,7 @@ public class CassandraMetadataRepository { // FIXME use cql query !! final List<MetadataFacetModel> facets = new ArrayList<MetadataFacetModel>(); - this.metadataFacetModelEntityManager.visitAll( new Function<MetadataFacetModel, Boolean>() + this.getMetadataFacetModelEntityManager().visitAll( new Function<MetadataFacetModel, Boolean>() { @Override public Boolean apply( MetadataFacetModel metadataFacetModel ) @@ -1097,7 +953,7 @@ public class CassandraMetadataRepository { String key = new MetadataFacetModel.KeyBuilder().withRepositoryId( repositoryId ).withFacetId( metadataFacet.getFacetId() ).withName( metadataFacet.getName() ).build(); - MetadataFacetModel metadataFacetModel = metadataFacetModelEntityManager.get( key ); + MetadataFacetModel metadataFacetModel = getMetadataFacetModelEntityManager().get( key ); if ( metadataFacetModel == null ) { metadataFacetModel = new MetadataFacetModel(); @@ -1112,7 +968,7 @@ public class CassandraMetadataRepository try { - metadataFacetModelEntityManager.put( metadataFacetModel ); + getMetadataFacetModelEntityManager().put( metadataFacetModel ); } catch ( PersistenceException e ) { @@ -1127,7 +983,7 @@ public class CassandraMetadataRepository String key = new MetadataFacetModel.KeyBuilder().withRepositoryId( repositoryId ).withFacetId( metadataFacet.getFacetId() ).withName( metadataFacet.getName() ).withKey( entry.getKey() ).build(); - MetadataFacetModel metadataFacetModel = metadataFacetModelEntityManager.get( key ); + MetadataFacetModel metadataFacetModel = getMetadataFacetModelEntityManager().get( key ); if ( metadataFacetModel == null ) { metadataFacetModel = new MetadataFacetModel(); @@ -1143,7 +999,7 @@ public class CassandraMetadataRepository metadataFacetModel.setValue( entry.getValue() ); try { - metadataFacetModelEntityManager.put( metadataFacetModel ); + getMetadataFacetModelEntityManager().put( metadataFacetModel ); } catch ( PersistenceException e ) { @@ -1162,7 +1018,7 @@ public class CassandraMetadataRepository final List<MetadataFacetModel> toRemove = new ArrayList<MetadataFacetModel>(); // FIXME cql query - metadataFacetModelEntityManager.visitAll( new Function<MetadataFacetModel, Boolean>() + getMetadataFacetModelEntityManager().visitAll( new Function<MetadataFacetModel, Boolean>() { @Override public Boolean apply( MetadataFacetModel metadataFacetModel ) @@ -1181,7 +1037,7 @@ public class CassandraMetadataRepository } ); logger.debug( "removeMetadataFacets repositoryId: '{}', facetId: '{}', toRemove: {}", repositoryId, facetId, toRemove ); - metadataFacetModelEntityManager.remove( toRemove ); + getMetadataFacetModelEntityManager().remove( toRemove ); } @Override @@ -1192,7 +1048,7 @@ public class CassandraMetadataRepository final List<MetadataFacetModel> toRemove = new ArrayList<MetadataFacetModel>(); // FIXME cql query - metadataFacetModelEntityManager.visitAll( new Function<MetadataFacetModel, Boolean>() + getMetadataFacetModelEntityManager().visitAll( new Function<MetadataFacetModel, Boolean>() { @Override public Boolean apply( MetadataFacetModel metadataFacetModel ) @@ -1212,7 +1068,7 @@ public class CassandraMetadataRepository } ); logger.debug( "removeMetadataFacets repositoryId: '{}', facetId: '{}', toRemove: {}", repositoryId, facetId, toRemove ); - metadataFacetModelEntityManager.remove( toRemove ); + getMetadataFacetModelEntityManager().remove( toRemove ); } @Override @@ -1224,7 +1080,7 @@ public class CassandraMetadataRepository final List<ArtifactMetadataModel> artifactMetadataModels = new ArrayList<ArtifactMetadataModel>(); // FIXME cql query - artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -1269,7 +1125,7 @@ public class CassandraMetadataRepository { final List<MetadataFacetModel> metadataFacetModels = new ArrayList<MetadataFacetModel>(); - metadataFacetModelEntityManager.visitAll( new Function<MetadataFacetModel, Boolean>() + getMetadataFacetModelEntityManager().visitAll( new Function<MetadataFacetModel, Boolean>() { @Override public Boolean apply( MetadataFacetModel metadataFacetModel ) @@ -1329,11 +1185,11 @@ public class CassandraMetadataRepository if ( logger.isDebugEnabled() ) { - logger.debug( "all ArtifactMetadataModel: {}", artifactMetadataModelEntityManager.getAll() ); + logger.debug( "all ArtifactMetadataModel: {}", getArtifactMetadataModelEntityManager().getAll() ); } // FIXME cql query - artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -1384,7 +1240,7 @@ public class CassandraMetadataRepository ArtifactMetadataModel artifactMetadataModel = new ArtifactMetadataModel(); artifactMetadataModel.setArtifactMetadataModelId( key ); - artifactMetadataModelEntityManager.remove( artifactMetadataModel ); + getArtifactMetadataModelEntityManager().remove( artifactMetadataModel ); key = new ProjectVersionMetadataModel.KeyBuilder().withId( version ).withRepository( repositoryId ).withNamespace( @@ -1393,7 +1249,7 @@ public class CassandraMetadataRepository ProjectVersionMetadataModel projectVersionMetadataModel = new ProjectVersionMetadataModel(); projectVersionMetadataModel.setRowId( key ); - projectVersionMetadataModelEntityManager.remove( projectVersionMetadataModel ); + getProjectVersionMetadataModelEntityManager().remove( projectVersionMetadataModel ); } @Override @@ -1411,7 +1267,7 @@ public class CassandraMetadataRepository ArtifactMetadataModel artifactMetadataModel = new ArtifactMetadataModel(); artifactMetadataModel.setArtifactMetadataModelId( key ); - artifactMetadataModelEntityManager.remove( artifactMetadataModel ); + getArtifactMetadataModelEntityManager().remove( artifactMetadataModel ); } @Override @@ -1420,7 +1276,7 @@ public class CassandraMetadataRepository throws MetadataRepositoryException { final List<ArtifactMetadataModel> artifactMetadataModels = new ArrayList<ArtifactMetadataModel>(); - artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -1438,9 +1294,9 @@ public class CassandraMetadataRepository return Boolean.TRUE; } } ); - artifactMetadataModelEntityManager.remove( artifactMetadataModels ); + getArtifactMetadataModelEntityManager().remove( artifactMetadataModels ); /* - metadataFacetModelEntityManager.visitAll( new Function<MetadataFacetModel, Boolean>() + getMetadataFacetModelEntityManager().visitAll( new Function<MetadataFacetModel, Boolean>() { @Override public Boolean apply( MetadataFacetModel metadataFacetModel ) @@ -1466,7 +1322,7 @@ public class CassandraMetadataRepository return Boolean.TRUE; } } ); - metadataFacetModelEntityManager.remove( metadataFacetModels ); + getMetadataFacetModelEntityManager().remove( metadataFacetModels ); */ } @@ -1477,7 +1333,7 @@ public class CassandraMetadataRepository { final List<ArtifactMetadataModel> artifactMetadataModels = new ArrayList<ArtifactMetadataModel>(); // FIXME use cql query ! - artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -1515,7 +1371,7 @@ public class CassandraMetadataRepository final BooleanHolder booleanHolder = new BooleanHolder(); - projectEntityManager.visitAll( new Function<Project, Boolean>() + getProjectEntityManager().visitAll( new Function<Project, Boolean>() { @Override public Boolean apply( Project project ) @@ -1556,7 +1412,7 @@ public class CassandraMetadataRepository String key = new ProjectVersionMetadataModel.KeyBuilder().withRepository( repoId ).withNamespace( namespace ).withProjectId( projectId ).withId( projectVersion ).build(); - ProjectVersionMetadataModel projectVersionMetadataModel = projectVersionMetadataModelEntityManager.get( key ); + ProjectVersionMetadataModel projectVersionMetadataModel = getProjectVersionMetadataModelEntityManager().get( key ); if ( projectVersionMetadataModel == null ) { @@ -1582,7 +1438,7 @@ public class CassandraMetadataRepository // facets final List<MetadataFacetModel> metadataFacetModels = new ArrayList<MetadataFacetModel>(); // FIXME use cql query - metadataFacetModelEntityManager.visitAll( new Function<MetadataFacetModel, Boolean>() + getMetadataFacetModelEntityManager().visitAll( new Function<MetadataFacetModel, Boolean>() { @Override public Boolean apply( MetadataFacetModel metadataFacetModel ) @@ -1649,7 +1505,7 @@ public class CassandraMetadataRepository final Set<String> projects = new HashSet<String>(); // FIXME use cql query - projectEntityManager.visitAll( new Function<Project, Boolean>() + getProjectEntityManager().visitAll( new Function<Project, Boolean>() { @Override public Boolean apply( Project project ) @@ -1667,7 +1523,7 @@ public class CassandraMetadataRepository } ); /* - artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -1698,7 +1554,7 @@ public class CassandraMetadataRepository // FIXME use cql query - artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -1723,7 +1579,7 @@ public class CassandraMetadataRepository return; } - artifactMetadataModelEntityManager.remove( artifactMetadataModels ); + getArtifactMetadataModelEntityManager().remove( artifactMetadataModels ); String key = new ProjectVersionMetadataModel.KeyBuilder().withProjectId( projectId ).withId( projectVersion ).withRepository( repoId ).withNamespace( namespace ).build(); @@ -1731,7 +1587,7 @@ public class CassandraMetadataRepository ProjectVersionMetadataModel projectVersionMetadataModel = new ProjectVersionMetadataModel(); projectVersionMetadataModel.setRowId( key ); - projectVersionMetadataModelEntityManager.remove( projectVersionMetadataModel ); + getProjectVersionMetadataModelEntityManager().remove( projectVersionMetadataModel ); } @Override @@ -1741,7 +1597,7 @@ public class CassandraMetadataRepository { final List<ArtifactMetadataModel> artifactMetadataModels = new ArrayList<ArtifactMetadataModel>(); // FIXME use cql query ! - artifactMetadataModelEntityManager.visitAll( new Function<ArtifactMetadataModel, Boolean>() + getArtifactMetadataModelEntityManager().visitAll( new Function<ArtifactMetadataModel, Boolean>() { @Override public Boolean apply( ArtifactMetadataModel artifactMetadataModel ) @@ -1772,7 +1628,7 @@ public class CassandraMetadataRepository // retrieve facets final List<MetadataFacetModel> metadataFacetModels = new ArrayList<MetadataFacetModel>(); - metadataFacetModelEntityManager.visitAll( new Function<MetadataFacetModel, Boolean>() + getMetadataFacetModelEntityManager().visitAll( new Function<MetadataFacetModel, Boolean>() { @Override public Boolean apply( MetadataFacetModel metadataFacetModel ) diff --git a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraRepositorySessionFactory.java b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraRepositorySessionFactory.java index 2e7f621e5..5f39aed60 100644 --- a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraRepositorySessionFactory.java +++ b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraRepositorySessionFactory.java @@ -37,7 +37,7 @@ import java.util.Map; /** * @author Olivier Lamy */ -@Service( "repositorySessionFactory#cassandra" ) +@Service("repositorySessionFactory#cassandra") public class CassandraRepositorySessionFactory implements RepositorySessionFactory { @@ -45,7 +45,7 @@ public class CassandraRepositorySessionFactory private Map<String, MetadataFacetFactory> metadataFacetFactories; @Inject - @Named( value = "archivaConfiguration#default" ) + @Named(value = "archivaConfiguration#default") private ArchivaConfiguration configuration; @Inject @@ -79,8 +79,7 @@ public class CassandraRepositorySessionFactory public RepositorySession createSession() { CassandraMetadataRepository metadataRepository = - new CassandraMetadataRepository( metadataFacetFactories, configuration, - cassandraEntityManagerFactory.getKeyspace() ); + new CassandraMetadataRepository( metadataFacetFactories, configuration, cassandraEntityManagerFactory ); return new RepositorySession( metadataRepository, metadataResolver ); } diff --git a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java index 5f9b5d2c0..a0ec6c579 100644 --- a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java +++ b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java @@ -24,17 +24,30 @@ import com.netflix.astyanax.AstyanaxContext; import com.netflix.astyanax.Keyspace; import com.netflix.astyanax.connectionpool.NodeDiscoveryType; import com.netflix.astyanax.connectionpool.exceptions.ConnectionException; +import com.netflix.astyanax.connectionpool.exceptions.NotFoundException; import com.netflix.astyanax.connectionpool.impl.ConnectionPoolConfigurationImpl; import com.netflix.astyanax.connectionpool.impl.ConnectionPoolType; import com.netflix.astyanax.connectionpool.impl.CountingConnectionPoolMonitor; import com.netflix.astyanax.ddl.KeyspaceDefinition; +import com.netflix.astyanax.entitystore.DefaultEntityManager; +import com.netflix.astyanax.entitystore.EntityManager; import com.netflix.astyanax.impl.AstyanaxConfigurationImpl; import com.netflix.astyanax.thrift.ThriftFamilyFactory; +import org.apache.archiva.metadata.repository.cassandra.model.ArtifactMetadataModel; +import org.apache.archiva.metadata.repository.cassandra.model.MetadataFacetModel; +import org.apache.archiva.metadata.repository.cassandra.model.Namespace; +import org.apache.archiva.metadata.repository.cassandra.model.Project; +import org.apache.archiva.metadata.repository.cassandra.model.ProjectVersionMetadataModel; +import org.apache.archiva.metadata.repository.cassandra.model.Repository; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.context.ApplicationContext; import org.springframework.stereotype.Service; import javax.annotation.PostConstruct; import javax.inject.Inject; +import javax.persistence.PersistenceException; +import java.util.Properties; /** * FIXME make all configuration not hardcoded :-) @@ -46,6 +59,8 @@ public class DefaultCassandraEntityManagerFactory implements CassandraEntityManagerFactory { + private Logger logger = LoggerFactory.getLogger( getClass() ); + @Inject private ApplicationContext applicationContext; @@ -53,9 +68,21 @@ public class DefaultCassandraEntityManagerFactory private static final String KEYSPACE_NAME = "ArchivaKeySpace"; + private AstyanaxContext<Keyspace> keyspaceContext; + private Keyspace keyspace; - private AstyanaxContext<Keyspace> keyspaceContext; + private EntityManager<Repository, String> repositoryEntityManager; + + private EntityManager<Namespace, String> namespaceEntityManager; + + private EntityManager<Project, String> projectEntityManager; + + private EntityManager<ArtifactMetadataModel, String> artifactMetadataModelEntityManager; + + private EntityManager<MetadataFacetModel, String> metadataFacetModelEntityManager; + + private EntityManager<ProjectVersionMetadataModel, String> projectVersionMetadataModelEntityManager; @PostConstruct @@ -104,6 +131,106 @@ public class DefaultCassandraEntityManagerFactory } + + try + { + Properties properties = keyspace.getKeyspaceProperties(); + logger.info( "keyspace properties: {}", properties ); + } + catch ( ConnectionException e ) + { + // FIXME better logging ! + logger.warn( e.getMessage(), e ); + } + + try + { + repositoryEntityManager = + new DefaultEntityManager.Builder<Repository, String>().withEntityType( Repository.class ).withKeyspace( + keyspace ).build(); + boolean exists = columnFamilyExists( "repository" ); + // TODO very basic test we must test model change too + if ( !exists ) + { + repositoryEntityManager.createStorage( null ); + } + + namespaceEntityManager = + new DefaultEntityManager.Builder<Namespace, String>().withEntityType( Namespace.class ).withKeyspace( + keyspace ).build(); + + exists = columnFamilyExists( "namespace" ); + if ( !exists ) + { + namespaceEntityManager.createStorage( null ); + } + + projectEntityManager = + new DefaultEntityManager.Builder<Project, String>().withEntityType( Project.class ).withKeyspace( + keyspace ).build(); + + exists = columnFamilyExists( "project" ); + if ( !exists ) + { + projectEntityManager.createStorage( null ); + } + + artifactMetadataModelEntityManager = + new DefaultEntityManager.Builder<ArtifactMetadataModel, String>().withEntityType( + ArtifactMetadataModel.class ).withKeyspace( keyspace ).build(); + + exists = columnFamilyExists( "artifactmetadatamodel" ); + if ( !exists ) + { + artifactMetadataModelEntityManager.createStorage( null ); + } + + metadataFacetModelEntityManager = + new DefaultEntityManager.Builder<MetadataFacetModel, String>().withEntityType( + MetadataFacetModel.class ).withKeyspace( keyspace ).build(); + + exists = columnFamilyExists( "metadatafacetmodel" ); + if ( !exists ) + { + metadataFacetModelEntityManager.createStorage( null ); + } + + projectVersionMetadataModelEntityManager = + new DefaultEntityManager.Builder<ProjectVersionMetadataModel, String>().withEntityType( + ProjectVersionMetadataModel.class ).withKeyspace( keyspace ).build(); + + exists = columnFamilyExists( "projectversionmetadatamodel" ); + if ( !exists ) + { + projectVersionMetadataModelEntityManager.createStorage( null ); + } + + } + catch ( PersistenceException e ) + { + // FIXME report exception + logger.error( e.getMessage(), e ); + } + catch ( ConnectionException e ) + { + // FIXME report exception + logger.error( e.getMessage(), e ); + } + } + + private boolean columnFamilyExists( String columnFamilyName ) + throws ConnectionException + { + try + { + Properties properties = keyspace.getColumnFamilyProperties( columnFamilyName ); + logger.debug( "getColumnFamilyProperties for {}: {}", columnFamilyName, properties ); + return true; + } + catch ( NotFoundException e ) + { + return false; + } } @@ -112,4 +239,67 @@ public class DefaultCassandraEntityManagerFactory { return keyspace; } + + public EntityManager<Repository, String> getRepositoryEntityManager() + { + return repositoryEntityManager; + } + + public void setRepositoryEntityManager( EntityManager<Repository, String> repositoryEntityManager ) + { + this.repositoryEntityManager = repositoryEntityManager; + } + + public EntityManager<Namespace, String> getNamespaceEntityManager() + { + return namespaceEntityManager; + } + + public void setNamespaceEntityManager( EntityManager<Namespace, String> namespaceEntityManager ) + { + this.namespaceEntityManager = namespaceEntityManager; + } + + public EntityManager<Project, String> getProjectEntityManager() + { + return projectEntityManager; + } + + public void setProjectEntityManager( EntityManager<Project, String> projectEntityManager ) + { + this.projectEntityManager = projectEntityManager; + } + + public EntityManager<ArtifactMetadataModel, String> getArtifactMetadataModelEntityManager() + { + return artifactMetadataModelEntityManager; + } + + public void setArtifactMetadataModelEntityManager( + EntityManager<ArtifactMetadataModel, String> artifactMetadataModelEntityManager ) + { + this.artifactMetadataModelEntityManager = artifactMetadataModelEntityManager; + } + + public EntityManager<MetadataFacetModel, String> getMetadataFacetModelEntityManager() + { + return metadataFacetModelEntityManager; + } + + public void setMetadataFacetModelEntityManager( + EntityManager<MetadataFacetModel, String> metadataFacetModelEntityManager ) + { + this.metadataFacetModelEntityManager = metadataFacetModelEntityManager; + } + + public EntityManager<ProjectVersionMetadataModel, String> getProjectVersionMetadataModelEntityManager() + { + return projectVersionMetadataModelEntityManager; + } + + public void setProjectVersionMetadataModelEntityManager( + EntityManager<ProjectVersionMetadataModel, String> projectVersionMetadataModelEntityManager ) + { + this.projectVersionMetadataModelEntityManager = projectVersionMetadataModelEntityManager; + } } diff --git a/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java b/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java index bdf303fe5..075946493 100644 --- a/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java +++ b/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java @@ -67,7 +67,7 @@ public class CassandraMetadataRepositoryTest Map<String, MetadataFacetFactory> factories = createTestMetadataFacetFactories(); - this.cmr = new CassandraMetadataRepository( factories, null, cassandraEntityManagerFactory.getKeyspace() ); + this.cmr = new CassandraMetadataRepository( factories, null, cassandraEntityManagerFactory ); this.repository = this.cmr; clearReposAndNamespace(); diff --git a/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java b/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java index 2edffd9c5..0ba18cab1 100644 --- a/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java +++ b/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java @@ -58,7 +58,7 @@ public class RepositoriesNamespaceTest throws Exception { - cmr = new CassandraMetadataRepository( null, null, cassandraEntityManagerFactory.getKeyspace() ); + cmr = new CassandraMetadataRepository( null, null, cassandraEntityManagerFactory ); clearReposAndNamespace(); } |