]> source.dussan.org Git - archiva.git/commitdiff
prevent ClassCastException as now return a Collection rather than a List
authorOlivier Lamy <olamy@apache.org>
Mon, 24 Mar 2014 01:36:57 +0000 (01:36 +0000)
committerOlivier Lamy <olamy@apache.org>
Mon, 24 Mar 2014 01:36:57 +0000 (01:36 +0000)
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1580693 13f79535-47bb-0310-9956-ffa450edef68

archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java
archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java

index c33c8d676becd8c5d085a465944700b0ae205341..20f8f9664c298668096f0b1cd2b9bb2c72ead64a 100644 (file)
@@ -270,7 +270,7 @@ public abstract class AbstractMetadataRepositoryTest
         MailingList mailingList = new MailingList();
         mailingList.setName( "Foo List" );
         mailingList.setOtherArchives( Arrays.asList( "other archive" ) );
-        metadata.setMailingLists(  Arrays.asList( mailingList ) );
+        metadata.setMailingLists( Arrays.asList( mailingList ) );
 
         Scm scm = new Scm();
         scm.setConnection( "connection" );
@@ -321,7 +321,8 @@ public abstract class AbstractMetadataRepositoryTest
         mailingList = metadata.getMailingLists().get( 0 );
         assertEquals( "Foo List", mailingList.getName() );
         //assertEquals( Collections.singletonList( "other archive" ), mailingList.getOtherArchives() );
-        Assertions.assertThat( mailingList.getOtherArchives() ).isNotNull().isNotEmpty().hasSize( 1 ).contains( "other archive" );
+        Assertions.assertThat( mailingList.getOtherArchives() ).isNotNull().isNotEmpty().hasSize( 1 ).contains(
+            "other archive" );
 
         assertEquals( "connection", metadata.getScm().getConnection() );
         assertEquals( "dev conn", metadata.getScm().getDeveloperConnection() );
@@ -1010,13 +1011,13 @@ public abstract class AbstractMetadataRepositoryTest
 
         // test it restricts to the appropriate repository
         assertEquals( Collections.singletonList( artifact ),
-                      repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_SHA1 ) );
-        assertEquals( Collections.singletonList( secondArtifact ),
-                      repository.getArtifactsByChecksum( OTHER_REPO_ID, TEST_SHA1 ) );
+                      new ArrayList<ArtifactMetadata>( repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_SHA1 ) ) );
+        assertEquals( Collections.singletonList( secondArtifact ), new ArrayList<ArtifactMetadata>(
+            repository.getArtifactsByChecksum( OTHER_REPO_ID, TEST_SHA1 ) ) );
         assertEquals( Collections.singletonList( artifact ),
-                      repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_MD5 ) );
+                      new ArrayList<ArtifactMetadata>( repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_MD5 ) ) );
         assertEquals( Collections.singletonList( secondArtifact ),
-                      repository.getArtifactsByChecksum( OTHER_REPO_ID, TEST_MD5 ) );
+                      new ArrayList<ArtifactMetadata>( repository.getArtifactsByChecksum( OTHER_REPO_ID, TEST_MD5 ) ) );
     }
 
     @Test
@@ -1103,7 +1104,7 @@ public abstract class AbstractMetadataRepositoryTest
         repository.save();
 
         assertEquals( Collections.singletonList( artifact ),
-                      repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_MD5 ) );
+                      new ArrayList<ArtifactMetadata>( repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_MD5 ) ) );
     }
 
     @Test
@@ -1115,7 +1116,7 @@ public abstract class AbstractMetadataRepositoryTest
         repository.save();
 
         assertEquals( Collections.singletonList( artifact ),
-                      repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_SHA1 ) );
+                      new ArrayList<ArtifactMetadata>( repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_SHA1 ) ) );
     }
 
     @Test
@@ -1129,9 +1130,9 @@ public abstract class AbstractMetadataRepositoryTest
         repository.save();
 
         assertEquals( Collections.singletonList( artifact ),
-                      repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_SHA1 ) );
+                      new ArrayList<ArtifactMetadata>( repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_SHA1 ) ) );
         assertEquals( Collections.singletonList( artifact ),
-                      repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_MD5 ) );
+                      new ArrayList<ArtifactMetadata>( repository.getArtifactsByChecksum( TEST_REPO_ID, TEST_MD5 ) ) );
     }
 
     @Test
@@ -1164,8 +1165,9 @@ public abstract class AbstractMetadataRepositoryTest
         ArtifactMetadata artifact = createArtifact();
         repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION, artifact );
 
-        Collection<ArtifactMetadata> artifactsByChecksum = repository.getArtifactsByChecksum( TEST_REPO_ID, "not checksum" );
-        assertEquals( Collections.<ArtifactMetadata>emptyList(), artifactsByChecksum );
+        Collection<ArtifactMetadata> artifactsByChecksum =
+            repository.getArtifactsByChecksum( TEST_REPO_ID, "not checksum" );
+        Assertions.assertThat( artifactsByChecksum ).isNotNull().isEmpty();
     }
 
 
index 83168626968ed6da9ef137ed8a991d5330236d58..42b0e80fca03238e056b5a7712dd3b04b690fd7e 100644 (file)
@@ -1688,7 +1688,7 @@ public class CassandraMetadataRepository
     }
 
 
-    protected ArtifactMetadata mapArtifactMetadataLongColumnSlice( ColumnSlice columnSlice )
+    protected ArtifactMetadata mapArtifactMetadataLongColumnSlice( ColumnSlice<String,Long> columnSlice )
     {
         ArtifactMetadata artifactMetadata = new ArtifactMetadata();
         artifactMetadata.setNamespace( getAsStringValue( columnSlice, "namespaceId" ) );
@@ -1698,7 +1698,7 @@ public class CassandraMetadataRepository
         artifactMetadata.setMd5( getAsStringValue( columnSlice, "md5" ) );
         artifactMetadata.setProject( getAsStringValue( columnSlice, "project" ) );
         artifactMetadata.setProjectVersion( getAsStringValue( columnSlice, "projectVersion" ) );
-        artifactMetadata.setRepositoryId( getStringValue( columnSlice, "repositoryName" ) );
+        artifactMetadata.setRepositoryId( getAsStringValue( columnSlice, "repositoryName" ) );
         artifactMetadata.setSha1( getAsStringValue( columnSlice, "sha1" ) );
         artifactMetadata.setVersion( getAsStringValue( columnSlice, "version" ) );
         Long whenGathered = getLongValue( columnSlice, "whenGathered" );
@@ -1709,6 +1709,27 @@ public class CassandraMetadataRepository
         return artifactMetadata;
     }
 
+    protected ArtifactMetadata mapArtifactMetadataStringColumnSlice( ColumnSlice<String,String> columnSlice )
+    {
+        ArtifactMetadata artifactMetadata = new ArtifactMetadata();
+        artifactMetadata.setNamespace( getStringValue( columnSlice, "namespaceId" ) );
+        artifactMetadata.setSize( getAsLongValue( columnSlice, "size" ) );
+        artifactMetadata.setId( getStringValue( columnSlice, "id" ) );
+        artifactMetadata.setFileLastModified( getAsLongValue( columnSlice, "fileLastModified" ) );
+        artifactMetadata.setMd5( getStringValue( columnSlice, "md5" ) );
+        artifactMetadata.setProject( getStringValue( columnSlice, "project" ) );
+        artifactMetadata.setProjectVersion( getStringValue( columnSlice, "projectVersion" ) );
+        artifactMetadata.setRepositoryId( getStringValue( columnSlice, "repositoryName" ) );
+        artifactMetadata.setSha1( getStringValue( columnSlice, "sha1" ) );
+        artifactMetadata.setVersion( getStringValue( columnSlice, "version" ) );
+        Long whenGathered = getAsLongValue( columnSlice, "whenGathered" );
+        if ( whenGathered != null )
+        {
+            artifactMetadata.setWhenGathered( new Date( whenGathered ) );
+        }
+        return artifactMetadata;
+    }
+
     protected void populateFacets( final ArtifactMetadata artifactMetadata )
     {
 /*        final List<MetadataFacetModel> metadataFacetModels = new ArrayList<MetadataFacetModel>();
@@ -1792,7 +1813,7 @@ public class CassandraMetadataRepository
             if ( StringUtils.equals( repositoryName, repositoryId ) )
             {
 
-                artifactMetadataMap.put( row.getKey(), mapArtifactMetadataLongColumnSlice( columnSlice ) );
+                artifactMetadataMap.put( row.getKey(), mapArtifactMetadataStringColumnSlice( columnSlice ) );
             }
         }
 
@@ -1813,7 +1834,7 @@ public class CassandraMetadataRepository
             if ( StringUtils.equals( repositoryName, repositoryId ) )
             {
 
-                artifactMetadataMap.put( row.getKey(), mapArtifactMetadataLongColumnSlice( columnSlice ) );
+                artifactMetadataMap.put( row.getKey(), mapArtifactMetadataStringColumnSlice( columnSlice ) );
             }
         }