Author: ogusakov
Date: Tue Jul 29 16:10:01 2008
New Revision: 680874
URL: http://svn.apache.org/viewvc?rev=680874&view=rev
Log:
further preparations for project split. Implemented RemoteRepositoryReaderM2
with jetty client transport. No tests yet - waiting for jetty ..
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/Messages.properties
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryOperator.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryReaderFactory.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryWriterFactory.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/local/m2/LocalRepositoryReaderM2Factory.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/local/m2/Messages.properties
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/Messages.properties
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderException.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderM2Factory.java
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/Messages.properties
URL:
http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/Messages.properties?rev=680874&view=auto
==============================================================================
---
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/Messages.properties
(added)
+++
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/Messages.properties
Tue Jul 29 16:10:01 2008
@@ -0,0 +1,8 @@
+null.reader.type=reader factory type cannot be null
+null.reader.factory=reader factory cannot be null
+null.writer.type=writer factory type cannot be null
+null.writer.factory=writer factory cannot be null
+null.reader.repo=reader repository cannot be null
+null.reader.processor=reader processor cannot be null
+null.writer.repo=writer repository cannot be null
+null.writer.processor=writer processor cannot be null
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryOperator.java
URL:
http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryOperator.java?rev=680874&view=auto
==============================================================================
---
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryOperator.java
(added)
+++
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryOperator.java
Tue Jul 29 16:10:01 2008
@@ -0,0 +1,16 @@
+package org.apache.maven.mercury.repository.api;
+
+/**
+ * parent of all repository accessors - readers and writers
+ *
+ *
+ * @author Oleg Gusakov
+ * @version $Id$
+ *
+ */
+public interface RepositoryOperator
+{
+ public String [] getProtocols();
+ public boolean canHandle( String protocol );
+ public void close();
+}
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryReaderFactory.java
URL:
http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryReaderFactory.java?rev=680874&view=auto
==============================================================================
---
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryReaderFactory.java
(added)
+++
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryReaderFactory.java
Tue Jul 29 16:10:01 2008
@@ -0,0 +1,7 @@
+package org.apache.maven.mercury.repository.api;
+
+public interface RepositoryReaderFactory
+{
+ public RepositoryReader getReader( Repository repo, MetadataProcessor
mdProcessor )
+ throws RepositoryException;
+}
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryWriterFactory.java
URL:
http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryWriterFactory.java?rev=680874&view=auto
==============================================================================
---
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryWriterFactory.java
(added)
+++
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/api/RepositoryWriterFactory.java
Tue Jul 29 16:10:01 2008
@@ -0,0 +1,7 @@
+package org.apache.maven.mercury.repository.api;
+
+public interface RepositoryWriterFactory
+{
+ public RepositoryWriter getWriter( Repository repo, MetadataProcessor
mdProcessor )
+ throws RepositoryException;
+}
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/local/m2/LocalRepositoryReaderM2Factory.java
URL:
http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/local/m2/LocalRepositoryReaderM2Factory.java?rev=680874&view=auto
==============================================================================
---
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/local/m2/LocalRepositoryReaderM2Factory.java
(added)
+++
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/local/m2/LocalRepositoryReaderM2Factory.java
Tue Jul 29 16:10:01 2008
@@ -0,0 +1,33 @@
+package org.apache.maven.mercury.repository.local.m2;
+
+import org.apache.maven.mercury.repository.api.AbstractRepository;
+import org.apache.maven.mercury.repository.api.LocalRepository;
+import org.apache.maven.mercury.repository.api.MetadataProcessor;
+import org.apache.maven.mercury.repository.api.Repository;
+import org.apache.maven.mercury.repository.api.RepositoryException;
+import org.apache.maven.mercury.repository.api.RepositoryReader;
+import org.apache.maven.mercury.repository.api.RepositoryReaderFactory;
+import org.codehaus.plexus.i18n.DefaultLanguage;
+import org.codehaus.plexus.i18n.Language;
+
+public class LocalRepositoryReaderM2Factory
+implements RepositoryReaderFactory
+{
+ private static final Language lang = new DefaultLanguage(
LocalRepositoryReaderM2Factory.class );
+ private static final LocalRepositoryReaderM2Factory factory = new
LocalRepositoryReaderM2Factory();
+
+ static
+ {
+ AbstractRepository.register( AbstractRepository.DEFAULT_REPOSITORY_TYPE,
factory );
+ }
+
+ public RepositoryReader getReader( Repository repo, MetadataProcessor
mdProcessor)
+ throws RepositoryException
+ {
+ if( repo == null || !(repo instanceof LocalRepository) )
+ throw new RepositoryException( lang.getMessage( "bad.repository.type",
repo == null ? "null" : repo.getClass().getName() ) );
+
+ return new LocalRepositoryReaderM2( (LocalRepository)repo, mdProcessor );
+ }
+
+}
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/local/m2/Messages.properties
URL:
http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/local/m2/Messages.properties?rev=680874&view=auto
==============================================================================
---
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/local/m2/Messages.properties
(added)
+++
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/local/m2/Messages.properties
Tue Jul 29 16:10:01 2008
@@ -0,0 +1 @@
+bad.repository.type=repository should implement LocalRepository, instead got
{0}
\ No newline at end of file
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/Messages.properties
URL:
http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/Messages.properties?rev=680874&view=auto
==============================================================================
---
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/Messages.properties
(added)
+++
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/Messages.properties
Tue Jul 29 16:10:01 2008
@@ -0,0 +1,6 @@
+bad.repository.type=repository should implement LocalRepository, instead got
{0}
+bad.repository.null=repository cannot be null
+bad.repository.server.null=remote repository server cannot be null
+bad.repository.server.url.null=remote repository server URL cannot be null
+
+maven.metadata.xml.exception=Exception {0} during processing
maven-metadata.xml from {1} in repository {2}
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderException.java
URL:
http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderException.java?rev=680874&view=auto
==============================================================================
---
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderException.java
(added)
+++
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderException.java
Tue Jul 29 16:10:01 2008
@@ -0,0 +1,56 @@
+package org.apache.maven.mercury.repository.remote.m2;
+
+import org.apache.maven.mercury.repository.api.RepositoryException;
+
+/**
+ *
+ *
+ * @author Oleg Gusakov
+ * @version $Id$
+ *
+ */
+public class RemoteRepositoryReaderException
+extends RepositoryException
+{
+
+ /**
+ *
+ */
+ public RemoteRepositoryReaderException()
+ {
+ // TODO Auto-generated constructor stub
+ }
+
+ /**
+ * @param message
+ */
+ public RemoteRepositoryReaderException(
+ String message )
+ {
+ super( message );
+ // TODO Auto-generated constructor stub
+ }
+
+ /**
+ * @param cause
+ */
+ public RemoteRepositoryReaderException(
+ Throwable cause )
+ {
+ super( cause );
+ // TODO Auto-generated constructor stub
+ }
+
+ /**
+ * @param message
+ * @param cause
+ */
+ public RemoteRepositoryReaderException(
+ String message,
+ Throwable cause )
+ {
+ super( message, cause );
+ // TODO Auto-generated constructor stub
+ }
+
+}
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderM2Factory.java
URL:
http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderM2Factory.java?rev=680874&view=auto
==============================================================================
---
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderM2Factory.java
(added)
+++
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderM2Factory.java
Tue Jul 29 16:10:01 2008
@@ -0,0 +1,33 @@
+package org.apache.maven.mercury.repository.remote.m2;
+
+import org.apache.maven.mercury.repository.api.AbstractRepository;
+import org.apache.maven.mercury.repository.api.MetadataProcessor;
+import org.apache.maven.mercury.repository.api.RemoteRepository;
+import org.apache.maven.mercury.repository.api.Repository;
+import org.apache.maven.mercury.repository.api.RepositoryException;
+import org.apache.maven.mercury.repository.api.RepositoryReader;
+import org.apache.maven.mercury.repository.api.RepositoryReaderFactory;
+import org.codehaus.plexus.i18n.DefaultLanguage;
+import org.codehaus.plexus.i18n.Language;
+
+public class RemoteRepositoryReaderM2Factory
+implements RepositoryReaderFactory
+{
+ private static final Language lang = new DefaultLanguage(
RemoteRepositoryReaderM2Factory.class );
+ private static final RemoteRepositoryReaderM2Factory factory = new
RemoteRepositoryReaderM2Factory();
+
+ static
+ {
+ AbstractRepository.register( AbstractRepository.DEFAULT_REPOSITORY_TYPE,
factory );
+ }
+
+ public RepositoryReader getReader( Repository repo, MetadataProcessor
mdProcessor )
+ throws RepositoryException
+ {
+ if( repo == null || !(repo instanceof RemoteRepository) )
+ throw new RepositoryException( lang.getMessage( "bad.repository.type",
repo == null ? "null" : repo.getClass().getName() ) );
+
+ return new RemoteRepositoryReaderM2( (RemoteRepository)repo, mdProcessor );
+ }
+
+}