summaryrefslogtreecommitdiffstats
path: root/archiva-reports-standard/src
diff options
context:
space:
mode:
authorBrett Porter <brett@apache.org>2006-09-05 05:12:31 +0000
committerBrett Porter <brett@apache.org>2006-09-05 05:12:31 +0000
commitd29cdf4ab1f77b962802f92f9d94c707fbb39037 (patch)
treece726f6612ff1a2922a5848dc081592434596b96 /archiva-reports-standard/src
parentf85defbfa5ee994ff735c3630de091e56e23b1ab (diff)
downloadarchiva-d29cdf4ab1f77b962802f92f9d94c707fbb39037.tar.gz
archiva-d29cdf4ab1f77b962802f92f9d94c707fbb39037.zip
[MRM-161] move the query layer to a separate module
git-svn-id: https://svn.apache.org/repos/asf/maven/archiva/trunk@440260 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'archiva-reports-standard/src')
-rw-r--r--archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayer.java106
-rw-r--r--archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessor.java2
-rw-r--r--archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/Cache.java221
-rw-r--r--archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayer.java99
-rw-r--r--archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReportProcessor.java1
-rw-r--r--archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultRepositoryQueryLayer.java31
-rw-r--r--archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultRepositoryQueryLayerFactory.java35
-rw-r--r--archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayer.java40
-rw-r--r--archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayerException.java34
-rw-r--r--archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayerFactory.java38
-rw-r--r--archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayerTestCase.java2
-rw-r--r--archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CacheTest.java1
-rw-r--r--archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayerTest.java2
-rw-r--r--archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/MockRepositoryQueryLayer.java3
14 files changed, 10 insertions, 605 deletions
diff --git a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayer.java b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayer.java
deleted file mode 100644
index 8d9bc6e3e..000000000
--- a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayer.java
+++ /dev/null
@@ -1,106 +0,0 @@
-package org.apache.maven.archiva.reporting;
-
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.metadata.ArtifactRepositoryMetadata;
-import org.apache.maven.artifact.repository.metadata.Metadata;
-import org.apache.maven.artifact.repository.metadata.Snapshot;
-import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Reader;
-import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileReader;
-import java.io.IOException;
-import java.util.List;
-
-/**
- *
- */
-public abstract class AbstractRepositoryQueryLayer
- implements RepositoryQueryLayer
-{
- protected ArtifactRepository repository;
-
- public boolean containsArtifact( Artifact artifact )
- {
- File f = new File( repository.getBasedir(), repository.pathOf( artifact ) );
- return f.exists();
- }
-
- public boolean containsArtifact( Artifact artifact, Snapshot snapshot )
- {
- String artifactPath = getSnapshotArtifactRepositoryPath( artifact, snapshot );
- File artifactFile = new File( artifactPath );
- return artifactFile.exists();
- }
-
- public List getVersions( Artifact artifact )
- throws RepositoryQueryLayerException
- {
- Metadata metadata = getMetadata( artifact );
-
- return metadata.getVersioning().getVersions();
- }
-
- protected String getSnapshotArtifactRepositoryPath( Artifact artifact, Snapshot snapshot )
- {
- File f = new File( repository.getBasedir(), repository.pathOf( artifact ) );
- String snapshotInfo = artifact.getVersion().replaceFirst( "SNAPSHOT", snapshot.getTimestamp() + "-" +
- snapshot.getBuildNumber() + ".pom" );
- File snapshotFile = new File( f.getParentFile(), artifact.getArtifactId() + "-" + snapshotInfo );
- return snapshotFile.getAbsolutePath();
- }
-
- protected Metadata getMetadata( Artifact artifact )
- throws RepositoryQueryLayerException
- {
- Metadata metadata;
-
- ArtifactRepositoryMetadata repositoryMetadata = new ArtifactRepositoryMetadata( artifact );
- String path = repository.pathOfRemoteRepositoryMetadata( repositoryMetadata );
- File metadataFile = new File( repository.getBasedir(), path );
- if ( metadataFile.exists() )
- {
- MetadataXpp3Reader reader = new MetadataXpp3Reader();
- try
- {
- metadata = reader.read( new FileReader( metadataFile ) );
- }
- catch ( FileNotFoundException e )
- {
- throw new RepositoryQueryLayerException( "Error occurred while attempting to read metadata file", e );
- }
- catch ( IOException e )
- {
- throw new RepositoryQueryLayerException( "Error occurred while attempting to read metadata file", e );
- }
- catch ( XmlPullParserException e )
- {
- throw new RepositoryQueryLayerException( "Error occurred while attempting to read metadata file", e );
- }
- }
- else
- {
- throw new RepositoryQueryLayerException( "Metadata not found: " + metadataFile.getAbsolutePath() );
- }
-
- return metadata;
- }
-}
diff --git a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessor.java b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessor.java
index bb3869ad2..733524002 100644
--- a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessor.java
+++ b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/BadMetadataReportProcessor.java
@@ -16,6 +16,8 @@ package org.apache.maven.archiva.reporting;
* limitations under the License.
*/
+import org.apache.maven.archiva.layer.RepositoryQueryLayer;
+import org.apache.maven.archiva.layer.RepositoryQueryLayerFactory;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.factory.ArtifactFactory;
import org.apache.maven.artifact.repository.ArtifactRepository;
diff --git a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/Cache.java b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/Cache.java
deleted file mode 100644
index 2559cf2e2..000000000
--- a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/Cache.java
+++ /dev/null
@@ -1,221 +0,0 @@
-package org.apache.maven.archiva.reporting;
-
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.Map;
-
-/**
- * Class to implement caching.
- */
-public class Cache
-{
- private final Map cache;
-
- private final double cacheHitRatio;
-
- private final int cacheMaxSize;
-
- private long cacheHits;
-
- private long cacheMiss;
-
- /**
- * Caches all data and expires only the oldest data when the specified cache hit rate is reached.
- */
- public Cache( double cacheHitRatio )
- {
- this( cacheHitRatio, 0 );
- }
-
- /**
- * Caches all data and expires only the oldest data when the maximum cache size is reached
- */
- public Cache( int cacheMaxSize )
- {
- this( (double) 1, cacheMaxSize );
- }
-
- /**
- * Caches all data and expires only the oldest data when either the specified cache hit rate is reached
- * or the maximum cache size is reached.
- */
- public Cache( double cacheHitRatio, int cacheMaxSize )
- {
- this.cacheHitRatio = cacheHitRatio;
- this.cacheMaxSize = cacheMaxSize;
-
- if ( cacheMaxSize > 0 )
- {
- cache = new LinkedHashMap( cacheMaxSize );
- }
- else
- {
- cache = new LinkedHashMap();
- }
- }
-
- /**
- * Check if the specified key is already mapped to an object.
- *
- * @param key the key used to map the cached object
- * @return true if the cache contains an object associated with the given key
- */
- public boolean containsKey( Object key )
- {
- boolean contains;
- synchronized ( cache )
- {
- contains = cache.containsKey( key );
-
- if ( contains )
- {
- cacheHits++;
- }
- else
- {
- cacheMiss++;
- }
- }
-
- return contains;
- }
-
- /**
- * Check for a cached object and return it if it exists. Returns null when the keyed object is not found
- *
- * @param key the key used to map the cached object
- * @return the object mapped to the given key, or null if no cache object is mapped to the given key
- */
- public Object get( Object key )
- {
- Object retValue = null;
-
- synchronized ( cache )
- {
- if ( cache.containsKey( key ) )
- {
- // remove and put: this promotes it to the top since we use a linked hash map
- retValue = cache.remove( key );
-
- cache.put( key, retValue );
-
- cacheHits++;
- }
- else
- {
- cacheMiss++;
- }
- }
-
- return retValue;
- }
-
- /**
- * Cache the given value and map it using the given key
- *
- * @param key the object to map the valued object
- * @param value the object to cache
- */
- public void put( Object key, Object value )
- {
- // remove and put: this promotes it to the top since we use a linked hash map
- synchronized ( cache )
- {
- if ( cache.containsKey( key ) )
- {
- cache.remove( key );
- }
-
- cache.put( key, value );
- }
-
- manageCache();
- }
-
- /**
- * Compute for the efficiency of this cache.
- *
- * @return the ratio of cache hits to the cache misses to queries for cache objects
- */
- public double getHitRate()
- {
- synchronized ( cache )
- {
- return cacheHits == 0 && cacheMiss == 0 ? 0 : (double) cacheHits / (double) ( cacheHits + cacheMiss );
- }
- }
-
- /**
- * Get the total number of cache objects currently cached.
- */
- public int size()
- {
- return cache.size();
- }
-
- /**
- * Empty the cache and reset the cache hit rate
- */
- public void clear()
- {
- synchronized ( cache )
- {
- cacheHits = 0;
- cacheMiss = 0;
- cache.clear();
- }
- }
-
- private void manageCache()
- {
- synchronized ( cache )
- {
- Iterator iterator = cache.entrySet().iterator();
- if ( cacheMaxSize == 0 )
- {
- //desired HitRatio is reached, we can trim the cache to conserve memory
- if ( cacheHitRatio <= getHitRate() )
- {
- iterator.next();
- iterator.remove();
- }
- }
- else if ( cache.size() > cacheMaxSize )
- {
- // maximum cache size is reached
- while ( cache.size() > cacheMaxSize )
- {
- iterator.next();
- iterator.remove();
- }
- }
- else
- {
- //even though the max has not been reached, the desired HitRatio is already reached,
- // so we can trim the cache to conserve memory
- if ( cacheHitRatio <= getHitRate() )
- {
- iterator.next();
- iterator.remove();
- }
- }
- }
- }
-
-}
diff --git a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayer.java b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayer.java
deleted file mode 100644
index 7b455899a..000000000
--- a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayer.java
+++ /dev/null
@@ -1,99 +0,0 @@
-package org.apache.maven.archiva.reporting;
-
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.metadata.Metadata;
-import org.apache.maven.artifact.repository.metadata.Snapshot;
-
-
-/**
- *
- */
-public class CachedRepositoryQueryLayer
- extends AbstractRepositoryQueryLayer
-{
- private Cache cache;
-
- public static final double CACHE_HIT_RATIO = 0.5;
-
- public CachedRepositoryQueryLayer( ArtifactRepository repository )
- {
- this.repository = repository;
-
- cache = new Cache( CACHE_HIT_RATIO );
- }
-
- public double getCacheHitRate()
- {
- return cache.getHitRate();
- }
-
- public boolean containsArtifact( Artifact artifact )
- {
- boolean artifactFound = true;
-
- String artifactPath = repository.getBasedir() + "/" + repository.pathOf( artifact );
-
- if ( cache.get( artifactPath ) == null )
- {
- artifactFound = super.containsArtifact( artifact );
- if ( artifactFound )
- {
- cache.put( artifactPath, artifactPath );
- }
- }
-
- return artifactFound;
- }
-
- public boolean containsArtifact( Artifact artifact, Snapshot snapshot )
- {
- boolean artifactFound = true;
-
- String path = getSnapshotArtifactRepositoryPath( artifact, snapshot );
-
- if ( cache.get( path ) == null )
- {
- artifactFound = super.containsArtifact( artifact, snapshot );
- if ( artifactFound )
- {
- cache.put( path, path );
- }
- }
-
- return artifactFound;
- }
-
- /**
- * Override method to utilize the cache
- */
- protected Metadata getMetadata( Artifact artifact )
- throws RepositoryQueryLayerException
- {
- Metadata metadata = (Metadata) cache.get( artifact.getId() );
-
- if ( metadata == null )
- {
- metadata = super.getMetadata( artifact );
- cache.put( artifact.getId(), metadata );
- }
-
- return metadata;
- }
-}
diff --git a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReportProcessor.java b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReportProcessor.java
index 040113af6..22e220a66 100644
--- a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReportProcessor.java
+++ b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultArtifactReportProcessor.java
@@ -16,6 +16,7 @@ package org.apache.maven.archiva.reporting;
* limitations under the License.
*/
+import org.apache.maven.archiva.layer.RepositoryQueryLayer;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.factory.ArtifactFactory;
import org.apache.maven.artifact.repository.ArtifactRepository;
diff --git a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultRepositoryQueryLayer.java b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultRepositoryQueryLayer.java
deleted file mode 100644
index 4b000fbe6..000000000
--- a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultRepositoryQueryLayer.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.apache.maven.archiva.reporting;
-
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import org.apache.maven.artifact.repository.ArtifactRepository;
-
-/**
- *
- */
-public class DefaultRepositoryQueryLayer
- extends AbstractRepositoryQueryLayer
-{
- public DefaultRepositoryQueryLayer( ArtifactRepository repository )
- {
- this.repository = repository;
- }
-}
diff --git a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultRepositoryQueryLayerFactory.java b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultRepositoryQueryLayerFactory.java
deleted file mode 100644
index ec607b6f1..000000000
--- a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/DefaultRepositoryQueryLayerFactory.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.apache.maven.archiva.reporting;
-
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import org.apache.maven.artifact.repository.ArtifactRepository;
-
-/**
- * Gets the default implementation of a repository query layer for the given repository.
- *
- * @author <a href="mailto:brett@apache.org">Brett Porter</a>
- * @version $Id$
- * @plexus.component role="org.apache.maven.archiva.reporting.RepositoryQueryLayerFactory"
- */
-public class DefaultRepositoryQueryLayerFactory
- implements RepositoryQueryLayerFactory
-{
- public RepositoryQueryLayer createRepositoryQueryLayer( ArtifactRepository repository )
- {
- return new DefaultRepositoryQueryLayer( repository );
- }
-}
diff --git a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayer.java b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayer.java
deleted file mode 100644
index bde683ed9..000000000
--- a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayer.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package org.apache.maven.archiva.reporting;
-
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.repository.metadata.Snapshot;
-
-import java.util.List;
-
-/**
- * The transitive and metadata validation reports will need to query the repository for artifacts.
- */
-public interface RepositoryQueryLayer
-{
- String ROLE = RepositoryQueryLayer.class.getName();
-
- boolean containsArtifact( Artifact artifact );
-
- /**
- * @todo I believe we can remove this [BP] - artifact should contain all the necessary version info!
- */
- boolean containsArtifact( Artifact artifact, Snapshot snapshot );
-
- List getVersions( Artifact artifact )
- throws RepositoryQueryLayerException;
-}
diff --git a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayerException.java b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayerException.java
deleted file mode 100644
index a95415398..000000000
--- a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayerException.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package org.apache.maven.archiva.reporting;
-
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/**
- *
- */
-public class RepositoryQueryLayerException
- extends Exception
-{
- public RepositoryQueryLayerException( String message, Throwable cause )
- {
- super( message, cause );
- }
-
- public RepositoryQueryLayerException( String message )
- {
- super( message );
- }
-}
diff --git a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayerFactory.java b/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayerFactory.java
deleted file mode 100644
index e69527b5e..000000000
--- a/archiva-reports-standard/src/main/java/org/apache/maven/archiva/reporting/RepositoryQueryLayerFactory.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package org.apache.maven.archiva.reporting;
-
-/*
- * Copyright 2005-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import org.apache.maven.artifact.repository.ArtifactRepository;
-
-/**
- * Gets the preferred implementation of a repository query layer for the given repository.
- *
- * @author <a href="mailto:brett@apache.org">Brett Porter</a>
- * @version $Id$
- */
-public interface RepositoryQueryLayerFactory
-{
- String ROLE = RepositoryQueryLayerFactory.class.getName();
-
- /**
- * Create or obtain a query interface.
- *
- * @param repository the repository to query
- * @return the obtained query layer
- */
- RepositoryQueryLayer createRepositoryQueryLayer( ArtifactRepository repository );
-}
diff --git a/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayerTestCase.java b/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayerTestCase.java
index 0774095d5..52fd4efc5 100644
--- a/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayerTestCase.java
+++ b/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/AbstractRepositoryQueryLayerTestCase.java
@@ -16,6 +16,8 @@ package org.apache.maven.archiva.reporting;
* limitations under the License.
*/
+import org.apache.maven.archiva.layer.CachedRepositoryQueryLayer;
+import org.apache.maven.archiva.layer.RepositoryQueryLayerException;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.factory.ArtifactFactory;
import org.apache.maven.artifact.repository.ArtifactRepository;
diff --git a/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CacheTest.java b/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CacheTest.java
index 123e92f30..65d6f8109 100644
--- a/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CacheTest.java
+++ b/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CacheTest.java
@@ -17,6 +17,7 @@ package org.apache.maven.archiva.reporting;
*/
import junit.framework.TestCase;
+import org.apache.maven.archiva.layer.Cache;
/**
*
diff --git a/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayerTest.java b/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayerTest.java
index 44e3d3108..bba92c722 100644
--- a/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayerTest.java
+++ b/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/CachedRepositoryQueryLayerTest.java
@@ -1,5 +1,7 @@
package org.apache.maven.archiva.reporting;
+import org.apache.maven.archiva.layer.CachedRepositoryQueryLayer;
+
/*
* Copyright 2005-2006 The Apache Software Foundation.
*
diff --git a/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/MockRepositoryQueryLayer.java b/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/MockRepositoryQueryLayer.java
index 6657a29a0..e1aa69ac2 100644
--- a/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/MockRepositoryQueryLayer.java
+++ b/archiva-reports-standard/src/test/java/org/apache/maven/archiva/reporting/MockRepositoryQueryLayer.java
@@ -16,6 +16,7 @@ package org.apache.maven.archiva.reporting;
* limitations under the License.
*/
+import org.apache.maven.archiva.layer.RepositoryQueryLayer;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.metadata.Snapshot;
@@ -25,7 +26,7 @@ import java.util.Iterator;
import java.util.List;
/**
- *
+ *
*/
public class MockRepositoryQueryLayer
implements RepositoryQueryLayer