Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java?rev=1579819&r1=1579818&r2=1579819&view=diff ============================================================================== --- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java (original) +++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java Thu Mar 20 23:22:20 2014 @@ -19,7 +19,6 @@ package org.apache.archiva.metadata.repo * under the License. */ -import com.netflix.astyanax.entitystore.Serializer; import org.apache.archiva.metadata.model.CiManagement; import org.apache.archiva.metadata.model.Dependency; import org.apache.archiva.metadata.model.IssueManagement; @@ -30,7 +29,6 @@ import org.apache.archiva.metadata.model import org.apache.archiva.metadata.repository.cassandra.CassandraUtils; import javax.persistence.Column; -import javax.persistence.Entity; import javax.persistence.Id; import java.util.ArrayList; import java.util.List; @@ -39,63 +37,56 @@ import java.util.List; * @author Olivier Lamy * @since 2.0.0 */ -@Entity public class ProjectVersionMetadataModel { // repositoryId + namespace + projectId + id (version) @Id - @Serializer( DeflateStringSerializer.class ) private String rowId; - @Column( name = "namespace" ) + @Column(name = "namespace") private Namespace namespace; /** * id is the version */ - @Column( name = "id" ) - @Serializer( DeflateStringSerializer.class ) + @Column(name = "id") private String id; - @Column( name = "projectId" ) - @Serializer( DeflateStringSerializer.class ) + @Column(name = "projectId") private String projectId; - @Column( name = "url" ) - @Serializer( DeflateStringSerializer.class ) + @Column(name = "url") private String url; - @Column( name = "name" ) - @Serializer( DeflateStringSerializer.class ) + @Column(name = "name") private String name; - @Column( name = "description" ) - @Serializer( DeflateStringSerializer.class ) + @Column(name = "description") private String description; - @Column( name = "organization" ) + @Column(name = "organization") private Organization organization; - @Column( name = "issueManagement" ) + @Column(name = "issueManagement") private IssueManagement issueManagement; - @Column( name = "scm" ) + @Column(name = "scm") private Scm scm; - @Column( name = "ciManagement" ) + @Column(name = "ciManagement") private CiManagement ciManagement; // FIXME store those values in a separate table - @Column( name = "licenses" ) + @Column(name = "licenses") private List<License> licenses = new ArrayList<License>(); - @Column( name = "mailingLists" ) + @Column(name = "mailingLists") private List<MailingList> mailingLists = new ArrayList<MailingList>(); - @Column( name = "dependencies" ) + @Column(name = "dependencies") private List<Dependency> dependencies = new ArrayList<Dependency>(); - @Column( name = "incomplete" ) + @Column(name = "incomplete") private boolean incomplete; public String getProjectId()
Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/Repository.java URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/Repository.java?rev=1579819&r1=1579818&r2=1579819&view=diff ============================================================================== --- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/Repository.java (original) +++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/Repository.java Thu Mar 20 23:22:20 2014 @@ -19,12 +19,6 @@ package org.apache.archiva.metadata.repo * under the License. */ -import com.netflix.astyanax.entitystore.Serializer; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; import java.io.Serializable; @@ -32,22 +26,14 @@ import java.io.Serializable; * @author Olivier Lamy * @since 2.0.0 */ -@Entity public class Repository implements Serializable { - @Id - @Column( name = "id" ) - @Serializer( DeflateStringSerializer.class ) private String id; - @Column(name = "name") - @Serializer( DeflateStringSerializer.class ) private String name; - //private transient List<Namespace> namespaces = new ArrayList<Namespace>(); - public Repository() { // no op @@ -79,22 +65,6 @@ public class Repository this.name = name; } - /* - public List<Namespace> getNamespaces() - { - if ( this.namespaces == null ) - { - this.namespaces = new ArrayList<Namespace>(); - } - return namespaces; - } - - public void setNamespaces( List<Namespace> namespaces ) - { - this.namespaces = namespaces; - } - */ - @Override public boolean equals( Object o ) { Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java?rev=1579819&r1=1579818&r2=1579819&view=diff ============================================================================== --- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java (original) +++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java Thu Mar 20 23:22:20 2014 @@ -41,7 +41,7 @@ public class CassandraMetadataRepository private Logger logger = LoggerFactory.getLogger( getClass() ); @Inject - @Named( value = "archivaEntityManagerFactory#cassandra" ) + @Named(value = "archivaEntityManagerFactory#cassandra") CassandraArchivaManager cassandraArchivaManager; CassandraMetadataRepository cmr; @@ -78,45 +78,12 @@ public class CassandraMetadataRepository protected void clearReposAndNamespace() throws Exception { - /* - List<Project> projects = cmr.getProjectEntityManager().getAll(); - - cmr.getProjectEntityManager().remove( projects ); - */ - cmr.getProjectEntityManager().truncate(); - - /* - List<Namespace> namespaces = cmr.getNamespaceEntityManager().getAll(); - - cmr.getNamespaceEntityManager().remove( namespaces ); - */ - cmr.getNamespaceEntityManager().truncate(); - - /* - List<Repository> repositories = cmr.getRepositoryEntityManager().getAll(); - - cmr.getRepositoryEntityManager().remove( repositories ); - */ - cmr.getRepositoryEntityManager().truncate(); - - /* - List<ArtifactMetadataModel> artifactMetadataModels = cmr.getArtifactMetadataModelEntityManager().getAll(); - cmr.getArtifactMetadataModelEntityManager().remove( artifactMetadataModels ); - */ - cmr.getArtifactMetadataModelEntityManager().truncate(); - - /* - List<MetadataFacetModel> metadataFacetModels = cmr.getMetadataFacetModelEntityManager().getAll(); - cmr.getMetadataFacetModelEntityManager().remove( metadataFacetModels ); - */ - cmr.getMetadataFacetModelEntityManager().truncate(); - - /* - List<ProjectVersionMetadataModel> projectVersionMetadataModels = - cmr.getProjectVersionMetadataModelEntityManager().getAll(); - cmr.getProjectVersionMetadataModelEntityManager().remove( projectVersionMetadataModels ); - */ - cmr.getProjectVersionMetadataModelEntityManager().truncate(); + cassandraArchivaManager.getCluster().truncate( cassandraArchivaManager.getKeyspace().getKeyspaceName(), + "project" ); + cassandraArchivaManager.getCluster().truncate( cassandraArchivaManager.getKeyspace().getKeyspaceName(), + "namespace" ); + cassandraArchivaManager.getCluster().truncate( cassandraArchivaManager.getKeyspace().getKeyspaceName(), + "repository" ); } Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java?rev=1579819&r1=1579818&r2=1579819&view=diff ============================================================================== --- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java (original) +++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java Thu Mar 20 23:22:20 2014 @@ -37,15 +37,15 @@ import javax.inject.Named; /** * @author Olivier Lamy */ -@RunWith(ArchivaSpringJUnit4ClassRunner.class) -@ContextConfiguration(locations = { "classpath*:/META-INF/spring-context.xml", "classpath*:/spring-context.xml" }) +@RunWith( ArchivaSpringJUnit4ClassRunner.class ) +@ContextConfiguration( locations = { "classpath*:/META-INF/spring-context.xml", "classpath*:/spring-context.xml" } ) public class RepositoriesNamespaceTest { private Logger logger = LoggerFactory.getLogger( getClass() ); @Inject - @Named(value = "archivaEntityManagerFactory#cassandra") + @Named( value = "archivaEntityManagerFactory#cassandra" ) CassandraArchivaManager cassandraArchivaManager; @@ -85,24 +85,35 @@ public class RepositoriesNamespaceTest cmr.updateNamespace( "release", "org" ); - r = cmr.getRepositoryEntityManager().get( "release" ); + r = cmr.getRepository( "release" ); Assertions.assertThat( r ).isNotNull(); Assertions.assertThat( cmr.getRepositories() ).isNotEmpty().hasSize( 1 ); Assertions.assertThat( cmr.getNamespaces( "release" ) ).isNotEmpty().hasSize( 1 ); - n = cmr.getNamespaceEntityManager().get( "release" + CassandraUtils.SEPARATOR + "org" ); + n = cmr.getNamespace( "release", "org" ); Assertions.assertThat( n ).isNotNull(); Assertions.assertThat( n.getRepository() ).isNotNull(); cmr.updateNamespace( "release", "org.apache" ); - r = cmr.getRepositoryEntityManager().get( "release" ); + r = cmr.getRepository( "release" ); Assertions.assertThat( r ).isNotNull(); Assertions.assertThat( cmr.getNamespaces( "release" ) ).isNotEmpty().hasSize( 2 ); + + cmr.removeNamespace( "release", "org.apache" ); + Assertions.assertThat( cmr.getNamespaces( "release" ) ).isNotEmpty().hasSize( 1 ); + Assertions.assertThat( cmr.getNamespaces( "release" ) ).containsExactly( "org" ); + + cmr.removeRepository( "release" ); + + r = cmr.getRepository( "release" ); + + Assertions.assertThat( r ).isNull(); + } catch ( Exception e ) { @@ -118,22 +129,11 @@ public class RepositoriesNamespaceTest protected void clearReposAndNamespace() throws Exception { - /* - List<Project> projects = cmr.getProjectEntityManager().getAll(); - cmr.getProjectEntityManager().remove( projects ); - */ - cmr.getProjectEntityManager().truncate(); - - /* - List<Namespace> namespaces = cmr.getNamespaceEntityManager().getAll(); - cmr.getNamespaceEntityManager().remove( namespaces ); - */ - cmr.getNamespaceEntityManager().truncate(); - - /* - List<Repository> repositories = cmr.getRepositoryEntityManager().getAll(); - cmr.getRepositoryEntityManager().remove( repositories ); - */ - cmr.getRepositoryEntityManager().truncate(); + cassandraArchivaManager.getCluster().truncate( cassandraArchivaManager.getKeyspace().getKeyspaceName(), + "project" ); + cassandraArchivaManager.getCluster().truncate( cassandraArchivaManager.getKeyspace().getKeyspaceName(), + "namespace" ); + cassandraArchivaManager.getCluster().truncate( cassandraArchivaManager.getKeyspace().getKeyspaceName(), + "repository" ); } }
