You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by og...@apache.org on 2008/12/24 05:38:03 UTC
svn commit: r729223 - in
/maven/mercury/trunk/mercury-repo/mercury-repo-local-map: ./ src/main/
src/main/java/org/apache/maven/mercury/repository/local/map/
src/test/java/org/apache/maven/mercury/repository/local/map/
src/test/resources/ src/test/resou...
Author: ogusakov
Date: Tue Dec 23 20:38:02 2008
New Revision: 729223
URL: http://svn.apache.org/viewvc?rev=729223&view=rev
Log:
[MERCURY-65] adding mapped repo implementation
Added:
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/ (props changed)
- copied from r729085, maven/mercury/trunk/mercury-repo/mercury-repo-map/
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/pom.xml
- copied unchanged from r729211, maven/mercury/trunk/mercury-repo/mercury-repo-map/pom.xml
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/
- copied from r729178, maven/mercury/trunk/mercury-repo/mercury-repo-map/src/main/
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/DefaultStorage.java (with props)
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Messages.properties (with props)
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Storage.java (with props)
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/StorageException.java (with props)
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java
- copied, changed from r729211, maven/mercury/trunk/mercury-repo/mercury-repo-map/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/resources/t-1.0.pom
- copied unchanged from r729211, maven/mercury/trunk/mercury-repo/mercury-repo-map/src/test/resources/t-1.0.pom
Removed:
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/ArtifactLocation.java
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryFlatTest.java
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/resources/ant-1.6.5.jar
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/resources/antlr-2.7.7.jar
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/resources/pgp/
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/resources/repo/
Modified:
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMap.java
maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReaderMap.java
Propchange: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Tue Dec 23 20:38:02 2008
@@ -0,0 +1,4 @@
+.settings
+target
+.classpath
+.project
Propchange: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/
------------------------------------------------------------------------------
svn:mergeinfo =
Added: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/DefaultStorage.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/DefaultStorage.java?rev=729223&view=auto
==============================================================================
--- maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/DefaultStorage.java (added)
+++ maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/DefaultStorage.java Tue Dec 23 20:38:02 2008
@@ -0,0 +1,127 @@
+package org.apache.maven.mercury.repository.local.map;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.maven.mercury.artifact.Artifact;
+import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
+import org.apache.maven.mercury.util.FileUtil;
+import org.apache.maven.mercury.util.Util;
+import org.codehaus.plexus.lang.DefaultLanguage;
+import org.codehaus.plexus.lang.Language;
+
+/**
+ *
+ *
+ * @author Oleg Gusakov
+ * @version $Id$
+ *
+ */
+public class DefaultStorage
+implements Storage
+{
+ private static final Language _lang = new DefaultLanguage( DefaultStorage.class );
+
+ Map< String, Artifact > _artifacts;
+
+ Map< String, File > _files;
+
+ File _dir;
+
+ public DefaultStorage( File dir )
+ throws StorageException
+ {
+ if( dir == null )
+ {
+ try
+ {
+ _dir = File.createTempFile( "temp-", "-mercury-default-storage" );
+ }
+ catch ( IOException e )
+ {
+ throw new StorageException(e);
+ }
+
+ _dir.delete();
+
+ _dir.mkdirs();
+ }
+ else
+ {
+ if( !dir.exists() )
+ dir.mkdirs();
+ else
+ if( dir.isDirectory() )
+ throw new StorageException( _lang.getMessage( "default.storage.bad.dir", dir.getAbsolutePath() ) );
+
+ _dir = dir;
+ }
+ }
+
+ public DefaultStorage()
+ throws StorageException
+ {
+ this( null );
+ }
+
+ public void add( ArtifactBasicMetadata bmd, Artifact artifact )
+ {
+ if( _artifacts == null )
+ _artifacts = new HashMap<String, Artifact>(32);
+
+ _artifacts.put( bmd.toString(), artifact );
+ }
+
+ public Artifact findArtifact( ArtifactBasicMetadata bmd )
+ {
+ if( _artifacts == null )
+ return null;
+
+ return _artifacts.get( bmd.getGAV() );
+ }
+
+ public byte[] findRaw( String key )
+ throws StorageException
+ {
+ if( Util.isEmpty( _files ) )
+ return null;
+
+ File f = _files.get( key );
+
+ if( f == null )
+ return null;
+
+ try
+ {
+ return FileUtil.readRawData( f );
+ }
+ catch ( IOException e )
+ {
+ throw new StorageException(e);
+ }
+ }
+
+ public void add( String key, byte[] bytes )
+ throws StorageException
+ {
+ try
+ {
+ add( key, FileUtil.writeTempData( bytes ) );
+ }
+ catch ( IOException e )
+ {
+ throw new StorageException(e);
+ }
+ }
+
+ public void add( String key, File file )
+ {
+ if( _files == null )
+ _files = new HashMap<String, File>(32);
+
+ _files.put( key, file );
+ }
+
+}
Propchange: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/DefaultStorage.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/DefaultStorage.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMap.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMap.java?rev=729223&r1=729178&r2=729223&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMap.java (original)
+++ maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMap.java Tue Dec 23 20:38:02 2008
@@ -19,9 +19,7 @@
package org.apache.maven.mercury.repository.local.map;
import java.io.File;
-import java.util.Map;
-import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
import org.apache.maven.mercury.builder.api.DependencyProcessor;
import org.apache.maven.mercury.repository.api.AbstractRepository;
import org.apache.maven.mercury.repository.api.LocalRepository;
@@ -40,69 +38,63 @@
implements LocalRepository
{
public static final String FLAT_REPOSITORY_TYPE = "map";
+
+ protected Storage _storage;
// ----------------------------------------------------------------------------------
- public LocalRepositoryMap( String id, DependencyProcessor dp, Map<ArtifactBasicMetadata,File> files )
+ public LocalRepositoryMap( String id, DependencyProcessor dp, Storage storage )
{
super( id, FLAT_REPOSITORY_TYPE );
setDependencyProcessor( dp );
+
+ _storage = storage;
}
-
// ----------------------------------------------------------------------------------
public File getDirectory()
{
return null;
}
-
// ----------------------------------------------------------------------------------
public RepositoryReader getReader()
{
- return RepositoryReader.NULL_READER;
+ return new LocalRepositoryReaderMap( this, getDependencyProcessor() );
}
-
// ----------------------------------------------------------------------------------
public RepositoryReader getReader( String protocol )
{
- return new LocalRepositoryReaderMap( this, getDependencyProcessor() );
+ return getReader();
}
-
// ----------------------------------------------------------------------------------
public RepositoryWriter getWriter()
{
return RepositoryWriter.NULL_WRITER;
}
-
// ----------------------------------------------------------------------------------
public RepositoryWriter getWriter( String protocol )
throws NonExistentProtocolException
{
return getWriter();
}
-
// ----------------------------------------------------------------------------------
public boolean isLocal()
{
return true;
}
-
// ----------------------------------------------------------------------------------
public boolean isReadable()
{
return true;
}
-
// ----------------------------------------------------------------------------------
public boolean isWriteable()
{
return false;
}
-
// ----------------------------------------------------------------------------------
public String getType()
{
return FLAT_REPOSITORY_TYPE;
}
-
// ----------------------------------------------------------------------------------
public String getMetadataName()
{
@@ -110,4 +102,4 @@
}
// ----------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------
-}
+}
\ No newline at end of file
Modified: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReaderMap.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReaderMap.java?rev=729223&r1=729178&r2=729223&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReaderMap.java (original)
+++ maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryReaderMap.java Tue Dec 23 20:38:02 2008
@@ -25,11 +25,13 @@
import java.util.Collection;
import java.util.HashSet;
import java.util.LinkedList;
+import java.util.List;
import java.util.Set;
import org.apache.maven.mercury.artifact.Artifact;
import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
import org.apache.maven.mercury.builder.api.DependencyProcessor;
+import org.apache.maven.mercury.builder.api.DependencyProcessorException;
import org.apache.maven.mercury.builder.api.MetadataReaderException;
import org.apache.maven.mercury.crypto.api.StreamVerifierFactory;
import org.apache.maven.mercury.logging.IMercuryLogger;
@@ -52,95 +54,141 @@
import org.codehaus.plexus.lang.Language;
public class LocalRepositoryReaderMap
-extends AbstracRepositoryReader
-implements RepositoryReader
+ extends AbstracRepositoryReader
+ implements RepositoryReader
{
- private static final IMercuryLogger _log = MercuryLoggerManager.getLogger( LocalRepositoryReaderMap.class );
- private static final Language _lang = new DefaultLanguage( LocalRepositoryReaderMap.class );
- //---------------------------------------------------------------------------------------------------------------
- private static final String [] _protocols = new String [] { "map" };
-
- private final LocalRepository _repo;
- //---------------------------------------------------------------------------------------------------------------
- public LocalRepositoryReaderMap( Repository repo, DependencyProcessor dp )
- {
- if( repo == null )
- throw new IllegalArgumentException("localRepo cannot be null");
-
- if( dp == null )
- throw new IllegalArgumentException("localRepo cannot be null");
-
- _mdProcessor = dp;
- _repo = (LocalRepository) repo;
- }
- //---------------------------------------------------------------------------------------------------------------
- public Repository getRepository()
- {
- return _repo;
- }
- //---------------------------------------------------------------------------------------------------------------
- public boolean canHandle( String protocol )
- {
- return AbstractRepository.DEFAULT_LOCAL_READ_PROTOCOL.equals( protocol );
- }
- //---------------------------------------------------------------------------------------------------------------
- public String[] getProtocols()
- {
- return _protocols;
- }
- //---------------------------------------------------------------------------------------------------------------
- //---------------------------------------------------------------------------------------------------------------
-/* (non-Javadoc)
- * @see org.apache.maven.mercury.repository.api.RepositoryReader#readArtifacts(java.util.Collection)
- */
-public ArtifactResults readArtifacts( Collection<ArtifactBasicMetadata> query )
- throws RepositoryException
-{
- // TODO Auto-generated method stub
- return null;
-}
-/* (non-Javadoc)
- * @see org.apache.maven.mercury.repository.api.RepositoryReader#readDependencies(java.util.Collection)
- */
-public ArtifactBasicResults readDependencies( Collection<ArtifactBasicMetadata> query )
- throws RepositoryException
-{
- // TODO Auto-generated method stub
- return null;
-}
-/* (non-Javadoc)
- * @see org.apache.maven.mercury.repository.api.RepositoryReader#readRawData(java.lang.String)
- */
-public byte[] readRawData( String path )
- throws MetadataReaderException
-{
- // TODO Auto-generated method stub
- return null;
-}
-/* (non-Javadoc)
- * @see org.apache.maven.mercury.repository.api.RepositoryReader#readVersions(java.util.Collection)
- */
-public ArtifactBasicResults readVersions( Collection<ArtifactBasicMetadata> query )
- throws RepositoryException
-{
- // TODO Auto-generated method stub
- return null;
-}
-/* (non-Javadoc)
- * @see org.apache.maven.mercury.repository.api.RepositoryOperator#close()
- */
-public void close()
-{
- // TODO Auto-generated method stub
-
-}
-/* (non-Javadoc)
- * @see org.apache.maven.mercury.builder.api.MetadataReader#readRawData(org.apache.maven.mercury.artifact.ArtifactBasicMetadata, java.lang.String, java.lang.String)
- */
-public byte[] readRawData( ArtifactBasicMetadata bmd, String classifier, String type )
+ private static final IMercuryLogger _log = MercuryLoggerManager.getLogger( LocalRepositoryReaderMap.class );
+
+ private static final Language _lang = new DefaultLanguage( LocalRepositoryReaderMap.class );
+
+ // ---------------------------------------------------------------------------------------------------------------
+ private static final String[] _protocols = new String[] { "map" };
+
+ private final LocalRepositoryMap _repo;
+
+ // ---------------------------------------------------------------------------------------------------------------
+ public LocalRepositoryReaderMap( Repository repo, DependencyProcessor dp )
+ {
+ if ( repo == null )
+ throw new IllegalArgumentException( "localRepo cannot be null" );
+
+ if ( dp == null )
+ throw new IllegalArgumentException( "localRepo cannot be null" );
+
+ _mdProcessor = dp;
+
+ _repo = (LocalRepositoryMap) repo;
+
+ }
+ // ---------------------------------------------------------------------------------------------------------------
+ public Repository getRepository()
+ {
+ return _repo;
+ }
+ // ---------------------------------------------------------------------------------------------------------------
+ public boolean canHandle( String protocol )
+ {
+ return AbstractRepository.DEFAULT_LOCAL_READ_PROTOCOL.equals( protocol );
+ }
+ // ---------------------------------------------------------------------------------------------------------------
+ public String[] getProtocols()
+ {
+ return _protocols;
+ }
+ // ---------------------------------------------------------------------------------------------------------------
+ public ArtifactResults readArtifacts( Collection<ArtifactBasicMetadata> query )
+ throws RepositoryException
+ {
+ if( Util.isEmpty( query ) )
+ return null;
+
+ if( Util.isEmpty( _repo._storage ) )
+ return null;
+
+ ArtifactResults res = new ArtifactResults();
+
+ for( ArtifactBasicMetadata bmd : query )
+ {
+ Artifact a;
+ try
+ {
+ a = _repo._storage.findArtifact( bmd );
+ }
+ catch ( Exception e )
+ {
+ throw new RepositoryException(e);
+ }
+
+ if( a != null )
+ res.add( bmd, a );
+ }
+
+ return res;
+ }
+ // ---------------------------------------------------------------------------------------------------------------
+ public byte[] readRawData( String path )
throws MetadataReaderException
-{
- // TODO Auto-generated method stub
- return null;
-}
+ {
+ try
+ {
+ return _repo._storage.findRaw( path );
+ }
+ catch ( StorageException e )
+ {
+ throw new MetadataReaderException(e);
+ }
+ }
+ // ---------------------------------------------------------------------------------------------------------------
+ public byte[] readRawData( ArtifactBasicMetadata bmd, String classifier, String type )
+ throws MetadataReaderException
+ {
+
+ String key = bmd.getGroupId()
+ + ":"+bmd.getArtifactId()
+ + ":"+bmd.getVersion()
+ + ":"+ (classifier == null ? "" : classifier)
+ + ":"+ (type == null ? bmd.getType() : type)
+ ;
+
+ return readRawData( key );
+ }
+ // ---------------------------------------------------------------------------------------------------------------
+ public ArtifactBasicResults readDependencies( Collection<ArtifactBasicMetadata> query )
+ throws RepositoryException
+ {
+ if( Util.isEmpty( query ) )
+ return null;
+
+ DependencyProcessor dp = _repo.getDependencyProcessor();
+
+ ArtifactBasicResults res = new ArtifactBasicResults( query.size() );
+
+ for( ArtifactBasicMetadata bmd : query )
+ {
+ try
+ {
+ List<ArtifactBasicMetadata> deps = dp.getDependencies( bmd, this, System.getenv(), System.getProperties() );
+
+ res.add( bmd, deps );
+ }
+ catch ( Exception e )
+ {
+ res.addError( bmd, e );
+ }
+ }
+
+ return res;
+ }
+ // ---------------------------------------------------------------------------------------------------------------
+ public ArtifactBasicResults readVersions( Collection<ArtifactBasicMetadata> query )
+ throws RepositoryException
+ {
+ return null;
+ }
+ // ---------------------------------------------------------------------------------------------------------------
+ public void close()
+ {
+ }
+ // ---------------------------------------------------------------------------------------------------------------
+ // ---------------------------------------------------------------------------------------------------------------
}
Added: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Messages.properties
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Messages.properties?rev=729223&view=auto
==============================================================================
--- maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Messages.properties (added)
+++ maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Messages.properties Tue Dec 23 20:38:02 2008
@@ -0,0 +1,35 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you 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.
+#
+bad.repository.type=repository should implement LocalRepository, instead got {0}
+empty.query=received empty query - {0}
+binary.not.found=Artifact {0} binary at not found {1}
+ga.not.found=Artifact {0} version group not found at {1}
+gav.not.found=No artifact version for {0} found in {1}
+snapshot.not.found=No snapshot version for {0} found in {1}
+gavdir.not.found=No directory {1} for artifact {0}
+pom.not.found=Artifact {0} - binary exists, but POM not found in the repository
+artifact.no.stream=Cannot find either input stream or file, associated with artifact {0}
+pom.artifact.no.stream=Cannot find either pom blob, input stream or file, associated with artifact {0}
+no.signature.file=Verifier for {0} is mandatory, but file {1} does not exist
+signature.failed=Signature "{0}": verification failed for file {1}
+cannot.read.signature.file=Cannot read signature file {0}, error: {1}
+cannot.lock.gav=Cannot lock GAV folder {0} in {1} millis
+file.is.empty=File {0} exists, but is empty. Data corruption somewhere - please repair metadata.
+
+default.storage.bad.dir=supplied directory {0} is actually a file.
Propchange: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Messages.properties
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Messages.properties
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Storage.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Storage.java?rev=729223&view=auto
==============================================================================
--- maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Storage.java (added)
+++ maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Storage.java Tue Dec 23 20:38:02 2008
@@ -0,0 +1,58 @@
+package org.apache.maven.mercury.repository.local.map;
+
+import java.io.File;
+
+import org.apache.maven.mercury.artifact.Artifact;
+import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
+
+/**
+ * storage for the repository
+ *
+ * @author Oleg Gusakov
+ * @version $Id$
+ *
+ */
+public interface Storage
+{
+ /**
+ * store an artifact
+ *
+ * @param bmd metadata
+ * @param artifact artifact behind it
+ */
+ public abstract void add( ArtifactBasicMetadata bmd, Artifact artifact );
+
+ /**
+ * find an artifact by it's metadata
+ *
+ * @param bmd
+ * @return
+ */
+ public abstract Artifact findArtifact( ArtifactBasicMetadata bmd );
+
+ /**
+ * find raw data in this stotage
+ *
+ * @param key
+ * @return
+ * @throws StorageException
+ */
+ public abstract byte[] findRaw( String key ) throws StorageException;
+
+ /**
+ *
+ * @param key
+ * @param bytes
+ * @throws StorageException
+ */
+ public abstract void add( String key, byte [] bytes )
+ throws StorageException;
+
+ /**
+ *
+ * @param key
+ * @param file
+ */
+ public abstract void add( String key, File file );
+
+}
\ No newline at end of file
Propchange: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Storage.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/Storage.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/StorageException.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/StorageException.java?rev=729223&view=auto
==============================================================================
--- maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/StorageException.java (added)
+++ maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/StorageException.java Tue Dec 23 20:38:02 2008
@@ -0,0 +1,46 @@
+package org.apache.maven.mercury.repository.local.map;
+
+/**
+ *
+ *
+ * @author Oleg Gusakov
+ * @version $Id$
+ *
+ */
+public class StorageException
+ extends Exception
+{
+
+ /**
+ *
+ */
+ public StorageException()
+ {
+ }
+
+ /**
+ * @param message
+ */
+ public StorageException( String message )
+ {
+ super( message );
+ }
+
+ /**
+ * @param cause
+ */
+ public StorageException( Throwable cause )
+ {
+ super( cause );
+ }
+
+ /**
+ * @param message
+ * @param cause
+ */
+ public StorageException( String message, Throwable cause )
+ {
+ super( message, cause );
+ }
+
+}
Propchange: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/StorageException.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/main/java/org/apache/maven/mercury/repository/local/map/StorageException.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Copied: maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java (from r729211, maven/mercury/trunk/mercury-repo/mercury-repo-map/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java)
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java?p2=maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java&p1=maven/mercury/trunk/mercury-repo/mercury-repo-map/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java&r1=729211&r2=729223&rev=729223&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-repo/mercury-repo-map/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java (original)
+++ maven/mercury/trunk/mercury-repo/mercury-repo-local-map/src/test/java/org/apache/maven/mercury/repository/local/map/LocalRepositoryMapTest.java Tue Dec 23 20:38:02 2008
@@ -19,8 +19,6 @@
package org.apache.maven.mercury.repository.local.map;
import java.io.File;
-import java.io.InputStream;
-import java.net.URL;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
@@ -28,21 +26,11 @@
import junit.framework.TestCase;
-import org.apache.maven.mercury.artifact.Artifact;
import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
-import org.apache.maven.mercury.artifact.DefaultArtifact;
import org.apache.maven.mercury.builder.api.DependencyProcessor;
-import org.apache.maven.mercury.logging.IMercuryLogger;
-import org.apache.maven.mercury.logging.MercuryLoggerManager;
import org.apache.maven.mercury.repository.api.ArtifactBasicResults;
-import org.apache.maven.mercury.repository.api.Repository;
import org.apache.maven.mercury.repository.api.RepositoryReader;
-import org.apache.maven.mercury.repository.api.RepositoryWriter;
import org.apache.maven.mercury.repository.local.m2.MetadataProcessorMock;
-import org.apache.maven.mercury.repository.remote.m2.RemoteRepositoryM2;
-import org.apache.maven.mercury.repository.virtual.VirtualRepositoryReader;
-import org.apache.maven.mercury.transport.api.Server;
-import org.apache.maven.mercury.util.FileUtil;
/**
* @author Oleg Gusakov
@@ -58,16 +46,9 @@
LocalRepositoryMap _repo;
RepositoryReader _rr;
-
- String _repoUrl = "http://repo1.sonatype.org";
- // String repoUrl = "http://repository.sonatype.org/content/groups/public";
-
- RemoteRepositoryM2 _remoteRepo;
ArtifactBasicMetadata bmd;
- VirtualRepositoryReader _vr;
-
File _pom;
@Override
@@ -88,14 +69,6 @@
_rr = _repo.getReader();
- Server server = new Server( "temp", new URL(_repoUrl) );
- _remoteRepo = new RemoteRepositoryM2( server, new MetadataProcessorMock() );
-
- List<Repository> reps = new ArrayList<Repository>(3);
- reps.add( _repo );
- reps.add( _remoteRepo );
-
- _vr = new VirtualRepositoryReader( reps );
}
public void testReadMap()