]> source.dussan.org Git - archiva.git/commitdiff
Dependency cleanup of metadata-store-cassandra
authorMartin Stockhammer <martin_s@apache.org>
Sat, 20 Jun 2020 17:54:20 +0000 (19:54 +0200)
committerMartin Stockhammer <martin_s@apache.org>
Sat, 20 Jun 2020 17:54:20 +0000 (19:54 +0200)
archiva-modules/plugins/metadata-store-cassandra/pom.xml
archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java
archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraRepositorySessionFactory.java
archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java
archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java
status-dep.txt

index 5b9cc0603608e3b03a30db49ff6780baefad3f53..07e066b2659b4011cd2ecb92a448bfcdf7befe7b 100644 (file)
     </dependency>
     <dependency>
       <groupId>org.apache.archiva</groupId>
-      <artifactId>archiva-test-utils</artifactId>
-      <version>${project.version}</version>
-      <scope>test</scope>
-      <exclusions>
-        <exclusion>
-          <groupId>org.slf4j</groupId>
-          <artifactId>slf4j-simple</artifactId>
-        </exclusion>
-      </exclusions>
+      <artifactId>archiva-common</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>archiva-configuration</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>archiva-policies</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>archiva-xml-tools</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>archiva-repository-api</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>archiva-checksum</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>metadata-model</artifactId>
+    </dependency>
+
+
+    <dependency>
+      <groupId>javax.annotation</groupId>
+      <artifactId>javax.annotation-api</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>javax.inject</groupId>
+      <artifactId>javax.inject</artifactId>
+    </dependency>
+
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-beans</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-context</artifactId>
     </dependency>
 
     <dependency>
 
 
     <!-- TEST Scope -->
+    <dependency>
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>archiva-test-utils</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <exclusions>
+        <exclusion>
+          <groupId>org.slf4j</groupId>
+          <artifactId>slf4j-simple</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
     <dependency>
       <groupId>org.easymock</groupId>
       <artifactId>easymock</artifactId>
       <version>${log4j.version}</version>
       <scope>test</scope>
     </dependency>
-    <dependency>
-      <groupId>com.lmax</groupId>
-      <artifactId>disruptor</artifactId>
-      <scope>test</scope>
-    </dependency>
 
-    <dependency>
-      <groupId>org.apache.archiva.components.cache</groupId>
-      <artifactId>archiva-components-spring-cache-ehcache</artifactId>
-      <scope>test</scope>
-    </dependency>
 
   </dependencies>
   <build>
index d350c6792663c36df8e0163e5fce201fc91e9b6d..bc8d7da66cb0a052ca904b18b2e946bc2d8f8c6a 100644 (file)
@@ -19,8 +19,6 @@ package org.apache.archiva.metadata.repository.cassandra;
  * under the License.
  */
 
-import com.google.common.base.Predicate;
-import com.google.common.collect.Iterables;
 import me.prettyprint.cassandra.serializers.LongSerializer;
 import me.prettyprint.cassandra.serializers.StringSerializer;
 import me.prettyprint.cassandra.service.template.ColumnFamilyResult;
@@ -38,7 +36,6 @@ import me.prettyprint.hector.api.mutation.Mutator;
 import me.prettyprint.hector.api.query.QueryResult;
 import me.prettyprint.hector.api.query.RangeSlicesQuery;
 import org.apache.archiva.checksum.ChecksumAlgorithm;
-import org.apache.archiva.configuration.ArchivaConfiguration;
 import org.apache.archiva.metadata.QueryParameter;
 import org.apache.archiva.metadata.model.ArtifactMetadata;
 import org.apache.archiva.metadata.model.CiManagement;
@@ -73,7 +70,18 @@ import org.slf4j.LoggerFactory;
 
 import java.time.Instant;
 import java.time.ZonedDateTime;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.Spliterator;
+import java.util.UUID;
 import java.util.function.BiFunction;
 import java.util.function.Consumer;
 import java.util.stream.Collectors;
@@ -95,8 +103,6 @@ public class CassandraMetadataRepository
     private static final String ARTIFACT_METADATA_MODEL_KEY = "artifactMetadataModel.key";
     private Logger logger = LoggerFactory.getLogger( getClass() );
 
-    private ArchivaConfiguration configuration;
-
     private final CassandraArchivaManager cassandraArchivaManager;
 
     private final ColumnFamilyTemplate<String, String> projectVersionMetadataTemplate;
@@ -120,11 +126,9 @@ public class CassandraMetadataRepository
     private final StringSerializer ss = StringSerializer.get();
 
     public CassandraMetadataRepository( MetadataService metadataService,
-                                        ArchivaConfiguration configuration,
                                         CassandraArchivaManager cassandraArchivaManager )
     {
         super( metadataService );
-        this.configuration = configuration;
         this.cassandraArchivaManager = cassandraArchivaManager;
         this.keyspace = cassandraArchivaManager.getKeyspace();
 
@@ -468,7 +472,7 @@ public class CassandraMetadataRepository
             .addEqualsExpression( REPOSITORY_NAME.toString(), repoId ) //
             .execute();
 
-        Set<String> namespaces = new HashSet<String>( result.get().getCount() );
+        Set<String> namespaces = new HashSet<>( result.get( ).getCount( ) );
 
         for ( Row<String, String, String> row : result.get() )
         {
@@ -553,11 +557,7 @@ public class CassandraMetadataRepository
             .execute();
 
         // project exists ? if yes return nothing to update here
-        if ( result.get().getCount() > 0 )
-        {
-            return;
-        }
-        else
+        if ( result.get( ).getCount( ) <= 0 )
         {
             Namespace namespace = updateOrAddNamespace( repositoryId, projectMetadata.getNamespace() );
 
@@ -587,7 +587,7 @@ public class CassandraMetadataRepository
             .addEqualsExpression( NAMESPACE_ID.toString(), namespace ) //
             .execute();
 
-        final Set<String> projects = new HashSet<String>( result.get().getCount() );
+        final Set<String> projects = new HashSet<>( result.get( ).getCount( ) );
 
         for ( Row<String, String, String> row : result.get() )
         {
@@ -660,7 +660,7 @@ public class CassandraMetadataRepository
             return Collections.emptyList();
         }
 
-        Set<String> versions = new HashSet<String>( count );
+        Set<String> versions = new HashSet<>( count );
 
         for ( Row<String, String, String> orderedRows : result.get() )
         {
@@ -757,7 +757,7 @@ public class CassandraMetadataRepository
             .addEqualsExpression( PROJECT_VERSION.toString(), versionMetadata.getId() ) //
             .execute();
 
-        ProjectVersionMetadataModel projectVersionMetadataModel = null;
+        ProjectVersionMetadataModel projectVersionMetadataModel;
         boolean creation = true;
         if ( result.get().getCount() > 0 )
         {
@@ -853,7 +853,7 @@ public class CassandraMetadataRepository
 
             recordDependencies( key, versionMetadata.getDependencies(), repositoryId );
 
-            MutationResult mutationResult = mutator.execute();
+            mutator.execute();
         }
         else
         {
@@ -1021,12 +1021,7 @@ public class CassandraMetadataRepository
         {
             ColumnSlice<String, String> columnSlice = row.getColumnSlice();
             String facetId = getStringValue( columnSlice, FACET_ID.toString() );
-            Map<String, String> metaValues = metadataFacetsPerFacetIds.get( facetId );
-            if ( metaValues == null )
-            {
-                metaValues = new HashMap<>();
-                metadataFacetsPerFacetIds.put( facetId, metaValues );
-            }
+            Map<String, String> metaValues = metadataFacetsPerFacetIds.computeIfAbsent( facetId, k -> new HashMap<>( ) );
             metaValues.put( getStringValue( columnSlice, KEY.toString() ), getStringValue( columnSlice, VALUE.toString() ) );
         }
 
@@ -1034,7 +1029,7 @@ public class CassandraMetadataRepository
         {
             for ( Map.Entry<String, Map<String, String>> entry : metadataFacetsPerFacetIds.entrySet() )
             {
-                MetadataFacetFactory metadataFacetFactory = getFacetFactory( entry.getKey() );
+                MetadataFacetFactory<?> metadataFacetFactory = getFacetFactory( entry.getKey() );
                 if ( metadataFacetFactory != null )
                 {
                     MetadataFacet metadataFacet = metadataFacetFactory.createMetadataFacet();
@@ -1381,13 +1376,13 @@ public class CassandraMetadataRepository
 
     private Map<String, String> mapChecksums(Map<ChecksumAlgorithm,String> checksums) {
         return checksums.entrySet().stream().collect(Collectors.toMap(
-                e -> e.getKey().name(), e -> e.getValue()
+                e -> e.getKey().name(), Map.Entry::getValue
         ));
     }
 
     private Map<ChecksumAlgorithm, String> mapChecksumsReverse(Map<String,String> checksums) {
         return checksums.entrySet().stream().collect(Collectors.toMap(
-                e -> ChecksumAlgorithm.valueOf(e.getKey()), e -> e.getValue()
+                e -> ChecksumAlgorithm.valueOf(e.getKey()), Map.Entry::getValue
         ));
     }
 
@@ -1736,10 +1731,6 @@ public class CassandraMetadataRepository
             return null;
         }
         final String facetId = metadataFacetFactory.getFacetId( );
-        if ( metadataFacetFactory == null )
-        {
-            return null;
-        }
 
         QueryResult<OrderedRows<String, String, String>> result = HFactory //
             .createRangeSlicesQuery( keyspace, ss, ss, ss ) //
@@ -2025,7 +2016,7 @@ public class CassandraMetadataRepository
             }
         }
 
-        return new ArrayList(artifactMetadataMap.values());
+        return new ArrayList<>(artifactMetadataMap.values());
     }
 
     /**
@@ -2064,7 +2055,7 @@ public class CassandraMetadataRepository
             return Collections.emptyList();
         }
 
-        List<ArtifactMetadata> artifactMetadatas = new LinkedList<ArtifactMetadata>();
+        List<ArtifactMetadata> artifactMetadatas = new LinkedList<>( );
 
         // TODO doing multiple queries, there should be a way to get all the artifactMetadatas for any number of
         // projects
@@ -2117,7 +2108,7 @@ public class CassandraMetadataRepository
             return Collections.emptyList();
         }
 
-        List<ArtifactMetadata> artifacts = new LinkedList<ArtifactMetadata>();
+        List<ArtifactMetadata> artifacts = new LinkedList<>( );
 
         for ( Row<String, String, String> row : result.get() )
         {
@@ -2384,21 +2375,15 @@ public class CassandraMetadataRepository
 
         for ( final ArtifactMetadata artifactMetadata : artifactMetadatas )
         {
-            Iterable<MetadataFacetModel> metadataFacetModelIterable =
-                Iterables.filter( metadataFacetModels, new Predicate<MetadataFacetModel>()
+            Iterator<MetadataFacetModel> iterator = metadataFacetModels.stream( ).filter( metadataFacetModel -> {
+                if ( metadataFacetModel != null )
                 {
-                    @Override
-                    public boolean apply( MetadataFacetModel metadataFacetModel )
-                    {
-                        if ( metadataFacetModel != null )
-                        {
-                            return StringUtils.equals( artifactMetadata.getVersion(),
-                                                       metadataFacetModel.getProjectVersion() );
-                        }
-                        return false;
-                    }
-                } );
-            Iterator<MetadataFacetModel> iterator = metadataFacetModelIterable.iterator();
+                    return StringUtils.equals( artifactMetadata.getVersion( ),
+                        metadataFacetModel.getProjectVersion( ) );
+                }
+                return false;
+
+            } ).iterator( );
             Map<String, List<MetadataFacetModel>> metadataFacetValuesPerFacetId = new HashMap<>();
             while ( iterator.hasNext() )
             {
@@ -2415,7 +2400,7 @@ public class CassandraMetadataRepository
 
             for ( Map.Entry<String, List<MetadataFacetModel>> entry : metadataFacetValuesPerFacetId.entrySet() )
             {
-                MetadataFacetFactory metadataFacetFactory = getFacetFactory( entry.getKey() );
+                MetadataFacetFactory<?> metadataFacetFactory = getFacetFactory( entry.getKey() );
                 if ( metadataFacetFactory != null )
                 {
                     List<MetadataFacetModel> facetModels = entry.getValue();
@@ -2476,7 +2461,7 @@ public class CassandraMetadataRepository
         throws MetadataRepositoryException
     {
         // TODO optimize
-        List<ArtifactMetadata> artifacts = new LinkedList<ArtifactMetadata>();
+        List<ArtifactMetadata> artifacts = new LinkedList<>( );
         artifacts.addAll( this.getArtifactsByAttribute( session, key, text, repositoryId ) );
         artifacts.addAll( this.getArtifactsByProjectVersionAttribute( session, key, text, repositoryId ) );
         return artifacts;
index b36dc387f7aa894c4da230b200e36aa3aefc3ba4..2f3077b3cd0c7e17f1a15407e0709a0891d7777f 100644 (file)
@@ -20,21 +20,17 @@ package org.apache.archiva.metadata.repository.cassandra;
  */
 
 import org.apache.archiva.configuration.ArchivaConfiguration;
-import org.apache.archiva.metadata.model.MetadataFacetFactory;
 import org.apache.archiva.metadata.repository.AbstractRepositorySessionFactory;
 import org.apache.archiva.metadata.repository.MetadataRepositoryException;
 import org.apache.archiva.metadata.repository.MetadataResolver;
 import org.apache.archiva.metadata.repository.MetadataService;
 import org.apache.archiva.metadata.repository.RepositorySession;
 import org.apache.archiva.metadata.repository.RepositorySessionFactory;
-import org.apache.commons.lang3.StringUtils;
 import org.springframework.context.ApplicationContext;
 import org.springframework.stereotype.Service;
 
 import javax.inject.Inject;
 import javax.inject.Named;
-import java.util.HashMap;
-import java.util.Map;
 
 /**
  * @author Olivier Lamy
@@ -75,7 +71,7 @@ public class CassandraRepositorySessionFactory extends AbstractRepositorySession
     public RepositorySession createSession() throws MetadataRepositoryException
     {
         CassandraMetadataRepository metadataRepository =
-            new CassandraMetadataRepository( metadataService, configuration, cassandraArchivaManager );
+            new CassandraMetadataRepository( metadataService, cassandraArchivaManager );
         return new RepositorySession( metadataRepository, metadataResolver );
     }
 
index b095f0533c4778e0996d6b4c532327dc13f35ac0..ea03801c5e088c19c20c388a20d391e7b131149a 100644 (file)
@@ -93,7 +93,7 @@ public class CassandraMetadataRepositoryTest
         MetadataService metadataService = new MetadataService( );
         metadataService.setMetadataFacetFactories( factories );
 
-        this.cmr = new CassandraMetadataRepository( metadataService, null, cassandraArchivaManager );
+        this.cmr = new CassandraMetadataRepository( metadataService, cassandraArchivaManager );
 
         sessionFactoryControl = EasyMock.createControl( );
         sessionFactory = sessionFactoryControl.createMock( RepositorySessionFactory.class );
index 09e7fcd5deace97969c08b3225a76b561905b484..9a631907fd4d4f52f593058a429daae52b1f8d23 100644 (file)
@@ -57,7 +57,7 @@ public class RepositoriesNamespaceTest
     public void setup()
         throws Exception
     {
-        cmr = new CassandraMetadataRepository( null, null, cassandraArchivaManager );
+        cmr = new CassandraMetadataRepository( null, cassandraArchivaManager );
         if ( !cassandraArchivaManager.started() )
         {
             cassandraArchivaManager.start();
index a43ca99f68e1fed7cf4487186a6b13dec7f07d34..a806a439cf5d62fcf886610a1ea669d4395a4156 100644 (file)
@@ -55,6 +55,7 @@ archiva-modules
     metadata-store-file
     audit
     problem-reports
+    metadata-store-cassandra