Hello,

To enhance archiva-1.0 support for maven1, I'd like to introduce a layer
between DavServlet and repository proxies connectors.
As Joakim suggested, this is the scope of the Dynamic Artifact Serving Layer
in archiva roadmap.

I propose this API :

public interface ArtifactServingLayer
{
   /**
    * Retrieve an artifact path in the repository based on the resource
string.
    */
   public String getResourcePath( String resource );
}

The serving layer is responsible of finding the resource in the managed
repository, with any required logic or temporary content, and to give a
repository-related path back to the DavServer.

The default implementation could simply use proxies-connectors to find the
resource, and some interceptors / proxies could add features, like
converting on-the-fly from a layout format to the managedRepository layout,
handle artifact relocation when a non-POM artifact is requested, or anything
we discover to be usefull.

What's your opinion ?

Reply via email to