You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ra...@apache.org on 2007/10/22 19:33:23 UTC

svn commit: r587166 - in /maven/sandbox/trunk/archetypeng/archetype-testing: ./ archetype-proxy/ archetype-proxy/src/ archetype-proxy/src/main/ archetype-proxy/src/main/java/ archetype-proxy/src/main/java/org/ archetype-proxy/src/main/java/org/apache/ ...

Author: rafale
Date: Mon Oct 22 10:33:20 2007
New Revision: 587166

URL: http://svn.apache.org/viewvc?rev=587166&view=rev
Log:
Added proxy and repository servlets

Added:
    maven/sandbox/trunk/archetypeng/archetype-testing/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/pom.xml   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/apache/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/apache/maven/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/apache/maven/archetype/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/apache/maven/archetype/proxy/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/apache/maven/archetype/proxy/ProxyServlet.java   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/webapp/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/webapp/WEB-INF/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/webapp/WEB-INF/web.xml   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/pom.xml   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/apache/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/apache/maven/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/apache/maven/archetype/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/apache/maven/archetype/repository/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/apache/maven/archetype/repository/RepositoryServlet.java   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.jar   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.jar.sha1   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom.sha1   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/maven-metadata.xml   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-metadata.xml   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/webapp/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/webapp/WEB-INF/
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/webapp/WEB-INF/web.xml   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/upload-order-by-deploy-file.txt   (with props)
    maven/sandbox/trunk/archetypeng/archetype-testing/pom.xml   (with props)

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/pom.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/pom.xml?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/pom.xml (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/pom.xml Mon Oct 22 10:33:20 2007
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ 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.
+  -->
+<project
+    xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <artifactId>archetype-testing</artifactId>
+    <groupId>org.apache.maven.archetype</groupId>
+    <version>2.0-SNAPSHOT</version>
+  </parent>
+
+  <artifactId>archetype-proxy</artifactId>
+
+  <name>Maven Archetype Webapp Proxy</name>
+  <packaging>war</packaging>
+
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>servlet-api</artifactId>
+      <version>2.4</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.mortbay.jetty</groupId>
+      <artifactId>jetty-util</artifactId>
+      <version>6.1.4</version>
+      <scope>compile</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <!-- Add this in settings to use No authentication is made
+          <proxies>
+            <proxy>
+              <active>true</active>
+              <id>jetty</id>
+              <host>localhost</host>
+              <port>8080</port>
+              <protocol>http</protocol>
+            </proxy>
+          </proxies>
+        -->
+        <groupId>org.mortbay.jetty</groupId>
+        <artifactId>maven-jetty-plugin</artifactId>
+        <configuration>
+          <webAppConfig>
+            <contextPath>/</contextPath>
+          </webAppConfig>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/apache/maven/archetype/proxy/ProxyServlet.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/apache/maven/archetype/proxy/ProxyServlet.java?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/apache/maven/archetype/proxy/ProxyServlet.java (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/apache/maven/archetype/proxy/ProxyServlet.java Mon Oct 22 10:33:20 2007
@@ -0,0 +1,385 @@
+/*
+ *  Copyright 2007 rafale.
+ *
+ *  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.
+ *  under the License.
+ */
+package org.apache.maven.archetype.proxy;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.PrintWriter;
+import java.net.HttpURLConnection;
+import java.net.InetSocketAddress;
+import java.net.Socket;
+import java.net.URL;
+import java.net.URLConnection;
+import java.util.Enumeration;
+import java.util.HashSet;
+import javax.servlet.ServletConfig;
+import javax.servlet.ServletContext;
+import javax.servlet.ServletException;
+import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import org.mortbay.util.IO;
+/**
+ * Stolen code from Mortbay
+ *
+ * @author rafale
+ */
+public class ProxyServlet
+    extends HttpServlet
+{
+    private int _tunnelTimeoutMs = 300000;
+
+    protected HashSet _DontProxyHeaders = new HashSet(  );
+    {
+        _DontProxyHeaders.add( "proxy-connection" );
+        _DontProxyHeaders.add( "connection" );
+        _DontProxyHeaders.add( "keep-alive" );
+        _DontProxyHeaders.add( "transfer-encoding" );
+        _DontProxyHeaders.add( "te" );
+        _DontProxyHeaders.add( "trailer" );
+        _DontProxyHeaders.add( "proxy-authorization" );
+        _DontProxyHeaders.add( "proxy-authenticate" );
+        _DontProxyHeaders.add( "upgrade" );
+    }
+    private ServletConfig config;
+
+    private ServletContext context;
+
+    /* (non-Javadoc)
+     * @see javax.servlet.Servlet#init(javax.servlet.ServletConfig)
+     */
+    public void init( ServletConfig config ) throws ServletException
+    {
+        this.config = config;
+        this.context = config.getServletContext(  );
+    }
+
+    /* (non-Javadoc)
+     * @see javax.servlet.Servlet#getServletConfig()
+     */
+    public ServletConfig getServletConfig( )
+    {
+        return config;
+    }
+
+    /* (non-Javadoc)
+     * @see javax.servlet.Servlet#service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
+     */
+    public void service( ServletRequest req, ServletResponse res ) throws ServletException,
+        IOException
+    {
+        HttpServletRequest request = (HttpServletRequest) req;
+        HttpServletResponse response = (HttpServletResponse) res;
+        if ( "CONNECT".equalsIgnoreCase( request.getMethod(  ) ) )
+        {
+            handleConnect( request, response );
+        }
+        else
+        {
+            String uri = request.getRequestURI(  );
+            if ( request.getQueryString(  ) != null )
+            {
+                uri += "?" + request.getQueryString(  );
+            }
+            URL url =
+                new URL( request.getScheme(  ), request.getServerName(  ), request.getServerPort(  ),
+                uri );
+
+            context.log( "\n\n\nURL=" + url );
+
+            URLConnection connection = url.openConnection(  );
+            connection.setAllowUserInteraction( false );
+
+            // Set method
+            HttpURLConnection http = null;
+            if ( connection instanceof HttpURLConnection )
+            {
+                http = (HttpURLConnection) connection;
+                http.setRequestMethod( request.getMethod(  ) );
+                http.setInstanceFollowRedirects( false );
+            }
+
+            // check connection header
+            String connectionHdr = request.getHeader( "Connection" );
+            if ( connectionHdr != null )
+            {
+                connectionHdr = connectionHdr.toLowerCase(  );
+                if ( connectionHdr.equals( "keep-alive" ) || connectionHdr.equals( "close" ) )
+                {
+                    connectionHdr = null;
+                }
+            }
+
+            // copy headers
+            boolean xForwardedFor = false;
+            boolean hasContent = false;
+            Enumeration enm = request.getHeaderNames(  );
+            while ( enm.hasMoreElements(  ) )
+            {
+                // TODO could be better than this!
+                String hdr = (String) enm.nextElement();
+                String lhdr = hdr.toLowerCase(  );
+
+                if ( _DontProxyHeaders.contains( lhdr ) )
+                {
+                    continue;
+                }
+                if ( connectionHdr != null && connectionHdr.indexOf( lhdr ) >= 0 )
+                {
+                    continue;
+                }
+                if ( "content-type".equals( lhdr ) )
+                {
+                    hasContent = true;
+                }
+                Enumeration vals = request.getHeaders( hdr );
+                while ( vals.hasMoreElements(  ) )
+                {
+                    String val = (String) vals.nextElement();
+                    if ( val != null )
+                    {
+                        connection.addRequestProperty( hdr, val );
+                        context.log( "req " + hdr + ": " + val );
+                        xForwardedFor |= "X-Forwarded-For".equalsIgnoreCase( hdr );
+                    }
+                }
+            }
+
+            // Proxy headers
+            connection.setRequestProperty( "Via", "1.1 (jetty)" );
+            if ( !xForwardedFor )
+            {
+                connection.addRequestProperty( "X-Forwarded-For", request.getRemoteAddr(  ) );
+            }
+            // a little bit of cache control
+            String cache_control = request.getHeader( "Cache-Control" );
+            if ( cache_control != null &&
+                (cache_control.indexOf( "no-cache" ) >= 0 || cache_control.indexOf( "no-store" ) >= 0) )
+            {
+                connection.setUseCaches( false );
+
+                // customize Connection
+            }
+            try
+            {
+                connection.setDoInput( true );
+
+                // do input thang!
+                InputStream in = request.getInputStream(  );
+                if ( hasContent )
+                {
+                    connection.setDoOutput( true );
+                    IO.copy( in, connection.getOutputStream(  ) );
+                }
+
+                // Connect
+                connection.connect(  );
+            }
+            catch ( Exception e )
+            {
+                context.log( "proxy", e );
+            }
+
+            InputStream proxy_in = null;
+
+            // handler status codes etc.
+            int code = 500;
+            if ( http != null )
+            {
+                proxy_in = http.getErrorStream(  );
+
+                code = http.getResponseCode(  );
+                response.setStatus( code, http.getResponseMessage(  ) );
+                context.log( "response = " + http.getResponseCode(  ) );
+            }
+
+            if ( proxy_in == null )
+            {
+                try
+                {
+                    proxy_in = connection.getInputStream(  );
+                }
+                catch ( Exception e )
+                {
+                    context.log( "stream", e );
+                    proxy_in = http.getErrorStream(  );
+                }
+            }
+
+            // clear response defaults.
+            response.setHeader( "Date", null );
+            response.setHeader( "Server", null );
+
+            // set response headers
+            int h = 0;
+            String hdr = connection.getHeaderFieldKey( h );
+            String val = connection.getHeaderField( h );
+            while ( hdr != null || val != null )
+            {
+                String lhdr = hdr != null ? hdr.toLowerCase(  ) : null;
+                if ( hdr != null && val != null && !_DontProxyHeaders.contains( lhdr ) )
+                {
+                    response.addHeader( hdr, val );
+                }
+                context.log( "res " + hdr + ": " + val );
+
+                h++;
+                hdr = connection.getHeaderFieldKey( h );
+                val = connection.getHeaderField( h );
+            }
+            response.addHeader( "Via", "1.1 (jetty)" );
+
+            // Handle
+            if ( proxy_in != null )
+            {
+                IO.copy( proxy_in, response.getOutputStream(  ) );
+            }
+        }
+    }
+
+    /* ------------------------------------------------------------ */
+    public void handleConnect( HttpServletRequest request,
+        HttpServletResponse response ) throws IOException
+    {
+        String uri = request.getRequestURI(  );
+
+        context.log( "CONNECT: " + uri );
+
+        String port = "";
+        String host = "";
+
+        int c = uri.indexOf( ':' );
+        if ( c >= 0 )
+        {
+            port = uri.substring( c + 1 );
+            host = uri.substring( 0, c );
+            if ( host.indexOf( '/' ) > 0 )
+            {
+                host = host.substring( host.indexOf( '/' ) + 1 );
+            }
+        }
+
+
+
+
+        InetSocketAddress inetAddress =
+            new InetSocketAddress( host, Integer.parseInt( port ) );
+
+        //if (isForbidden(HttpMessage.__SSL_SCHEME,addrPort.getHost(),addrPort.getPort(),false))
+        //{
+        //    sendForbid(request,response,uri);
+        //}
+        //else
+        {
+            InputStream in = request.getInputStream(  );
+            OutputStream out = response.getOutputStream(  );
+
+            Socket socket = new Socket( inetAddress.getAddress(  ), inetAddress.getPort(  ) );
+            context.log( "Socket: " + socket );
+
+            response.setStatus( 200 );
+            response.setHeader( "Connection", "close" );
+            response.flushBuffer(  );
+
+
+
+            context.log( "out<-in" );
+            IO.copyThread( socket.getInputStream(  ), out );
+            context.log( "in->out" );
+            IO.copy( in, socket.getOutputStream(  ) );
+        }
+    }
+
+    /* (non-Javadoc)
+     * @see javax.servlet.Servlet#getServletInfo()
+     */
+    public String getServletInfo( )
+    {
+        return "Proxy Servlet";
+    }
+
+    /* (non-Javadoc)
+     * @see javax.servlet.Servlet#destroy()
+     */
+    public void destroy( )
+    {
+    }
+
+    /**
+     * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
+     * @param request servlet request
+     * @param response servlet response
+     */
+    protected void processRequest( HttpServletRequest request,
+        HttpServletResponse response ) throws ServletException, IOException
+    {
+        response.setContentType( "text/html;charset=UTF-8" );
+        PrintWriter out = response.getWriter(  );
+        try
+        {
+            /* TODO output your page here
+            out.println("<html>");
+            out.println("<head>");
+            out.println("<title>Servlet ProxyServlet</title>");
+            out.println("</head>");
+            out.println("<body>");
+            out.println("<h1>Servlet ProxyServlet at " + request.getContextPath () + "</h1>");
+            out.println("</body>");
+            out.println("</html>");
+             */
+        }
+        finally
+        {
+            out.close(  );
+        }
+    }
+
+//    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
+//    /**
+//     * Handles the HTTP <code>GET</code> method.
+//     * @param request servlet request
+//     * @param response servlet response
+//     */
+//    protected void doGet( HttpServletRequest request,
+//        HttpServletResponse response ) throws ServletException, IOException
+//    {
+//        processRequest( request, response );
+//    }
+//
+//    /**
+//     * Handles the HTTP <code>POST</code> method.
+//     * @param request servlet request
+//     * @param response servlet response
+//     */
+//    protected void doPost( HttpServletRequest request,
+//        HttpServletResponse response ) throws ServletException, IOException
+//    {
+//        processRequest( request, response );
+//    }
+//
+//    /**
+//     * Returns a short description of the servlet.
+//     */
+//    public String getServletInfo( )
+//    {
+//        return "Short description";
+//    }
+//    // </editor-fold>
+}
\ No newline at end of file

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/java/org/apache/maven/archetype/proxy/ProxyServlet.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/webapp/WEB-INF/web.xml?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/webapp/WEB-INF/web.xml (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/webapp/WEB-INF/web.xml Mon Oct 22 10:33:20 2007
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
+    <display-name>Archetype Proxy Web Application</display-name>
+    <servlet>
+        <servlet-name>ProxyServlet</servlet-name>
+        <servlet-class>org.apache.maven.archetype.proxy.ProxyServlet</servlet-class>
+    </servlet>
+    <servlet-mapping>
+        <servlet-name>ProxyServlet</servlet-name>
+        <url-pattern>/*</url-pattern>
+    </servlet-mapping>
+</web-app>

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-proxy/src/main/webapp/WEB-INF/web.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/pom.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/pom.xml?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/pom.xml (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/pom.xml Mon Oct 22 10:33:20 2007
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ 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.
+  -->
+<project
+    xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <artifactId>archetype-testing</artifactId>
+    <groupId>org.apache.maven.archetype</groupId>
+    <version>2.0-SNAPSHOT</version>
+  </parent>
+
+  <artifactId>archetype-repository</artifactId>
+
+  <name>Maven Archetype Webapp Repository</name>
+  <packaging>war</packaging>
+
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>servlet-api</artifactId>
+      <version>2.4</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.mortbay.jetty</groupId>
+      <artifactId>jetty-util</artifactId>
+      <version>6.1.4</version>
+      <scope>compile</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <!-- Add this in settings to use No authentication is made
+          <proxies>
+            <proxy>
+              <active>true</active>
+              <id>jetty</id>
+              <host>localhost</host>
+              <port>8080</port>
+              <protocol>http</protocol>
+            </proxy>
+          </proxies>
+        -->
+        <groupId>org.mortbay.jetty</groupId>
+        <artifactId>maven-jetty-plugin</artifactId>
+        <configuration>
+          <webAppConfig>
+            <contextPath>/</contextPath>
+          </webAppConfig>
+          <systemProperties>
+            <systemProperty>
+              <name>org.apache.maven.archetype.reporitory.directory</name>
+              <value>${project.basedir}/target/repository</value>
+            </systemProperty>
+          </systemProperties>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/apache/maven/archetype/repository/RepositoryServlet.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/apache/maven/archetype/repository/RepositoryServlet.java?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/apache/maven/archetype/repository/RepositoryServlet.java (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/apache/maven/archetype/repository/RepositoryServlet.java Mon Oct 22 10:33:20 2007
@@ -0,0 +1,223 @@
+/*
+ *  Copyright 2007 rafale.
+ *
+ *  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.
+ *  under the License.
+ */
+package org.apache.maven.archetype.repository;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.net.HttpURLConnection;
+import java.net.InetSocketAddress;
+import java.net.Socket;
+import java.net.URL;
+import java.net.URLConnection;
+import java.util.Enumeration;
+import java.util.HashSet;
+import javax.servlet.ServletConfig;
+import javax.servlet.ServletContext;
+import javax.servlet.ServletException;
+import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.transaction.xa.XAException;
+import org.mortbay.util.IO;
+
+/**
+ *
+ * @author rafale
+ */
+public class RepositoryServlet
+    extends HttpServlet
+{
+    private ServletConfig config;
+
+    private ServletContext context;
+
+    /* (non-Javadoc)
+     * @see javax.servlet.Servlet#init(javax.servlet.ServletConfig)
+     */
+    public void init( ServletConfig config ) throws ServletException
+    {
+        this.config = config;
+        this.context = config.getServletContext(  );
+    }
+
+    /* (non-Javadoc)
+     * @see javax.servlet.Servlet#getServletConfig()
+     */
+    public ServletConfig getServletConfig( )
+    {
+        return config;
+    }
+
+    /* (non-Javadoc)
+     * @see javax.servlet.Servlet#service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
+     */
+    public void service( ServletRequest req, ServletResponse res ) throws ServletException
+    {
+        HttpServletRequest request = (HttpServletRequest) req;
+        HttpServletResponse response = (HttpServletResponse) res;
+
+        response.setHeader( "Date", null );
+        response.setHeader( "Server", null );
+
+
+        log( "Requested file = " + request.getRequestURI(  ) );
+        String filePath =
+            System.getProperty( "org.apache.maven.archetype.reporitory.directory" ).trim(  ) + "/" +
+            request.getRequestURI(  );
+        log( "Complete file path = " + filePath );
+
+        String method = request.getMethod(  );
+
+        if ( "GET".equalsIgnoreCase( method ) )
+        {
+            log( "Getting file" );
+            try
+            {
+                File requestedFile = new File( filePath );
+
+                InputStream is = new FileInputStream( requestedFile );
+
+                if ( is != null )
+                {
+                    IO.copy( is, response.getOutputStream(  ) );
+                    response.setStatus( HttpServletResponse.SC_OK );
+                    log( "File sent" );
+                }
+                else
+                {
+                    log( "Can not send file no content" );
+                }
+            }
+            catch ( FileNotFoundException fileNotFoundException )
+            {
+                response.setStatus( HttpServletResponse.SC_NOT_FOUND );
+                log( "Requested file not found ", fileNotFoundException );
+            }
+            catch ( IOException iOException )
+            {
+                response.setStatus( HttpServletResponse.SC_INTERNAL_SERVER_ERROR );
+                log( "Can not send file", iOException );
+            }
+        }
+        else if ( "PUT".equalsIgnoreCase( method ) )
+        {
+            log( "Putting file" );
+            File uploadedFile = new File( filePath );
+            if ( uploadedFile.exists(  ) )
+            {
+                uploadedFile.delete(  );
+                log( "Removed old file" );
+            }
+            else if ( !uploadedFile.getParentFile(  ).exists(  ) )
+            {
+                uploadedFile.getParentFile(  ).mkdirs(  );
+                log( "Created directory " + uploadedFile.getParent(  ) );
+            }
+
+            try
+            {
+                FileWriter fw = new FileWriter( uploadedFile );
+                IO.copy( request.getReader(  ), fw );
+                response.setStatus( HttpServletResponse.SC_OK );
+                log( "File copied" );
+            }
+            catch ( IOException iOException )
+            {
+
+                response.setStatus( HttpServletResponse.SC_INTERNAL_SERVER_ERROR );
+                log( "Can not send file", iOException );
+            }
+        }
+        else
+        {
+
+            response.setStatus( HttpServletResponse.SC_INTERNAL_SERVER_ERROR );
+            try
+            {
+                log( "Method " + request.getMethod(  ) );
+                log( "ContextPath " + request.getContextPath(  ) );
+                log( "QueryString" + request.getQueryString(  ) );
+                log( "PathInfo " + request.getPathInfo(  ) );
+                log( "ServletPath " + request.getServletPath(  ) );
+                log( "AttributeNames " + request.getAttributeNames(  ).toString(  ) );
+                log( "HeaderNames " + request.getHeaderNames(  ).toString(  ) );
+                log( "RequestURL " + request.getRequestURL(  ).toString(  ) );
+                log( "ParameterNames " + request.getParameterNames(  ).toString(  ) );
+                StringWriter w = new StringWriter(  );
+                IO.copy( request.getReader(  ), w );
+                log( "Content " + w.toString(  ) );
+            }
+            catch ( IOException iOException )
+            {
+                log( "Error in unnknown method", iOException );
+            }
+        }
+    }
+
+    /* (non-Javadoc)
+     * @see javax.servlet.Servlet#getServletInfo()
+     */
+    public String getServletInfo( )
+    {
+        return "Repository Servlet";
+    }
+
+    /* (non-Javadoc)
+     * @see javax.servlet.Servlet#destroy()
+     */
+    public void destroy( )
+    {
+    }
+
+    /**
+     * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
+     * @param request servlet request
+     * @param response servlet response
+     */
+    protected void processRequest( HttpServletRequest request,
+        HttpServletResponse response ) throws ServletException, IOException
+    {
+        response.setContentType( "text/html;charset=UTF-8" );
+        PrintWriter out = response.getWriter(  );
+        try
+        {
+            /* TODO output your page here
+            out.println("<html>");
+            out.println("<head>");
+            out.println("<title>Servlet RepositoryServlet</title>");
+            out.println("</head>");
+            out.println("<body>");
+            out.println("<h1>Servlet RepositoryServlet at " + request.getContextPath () + "</h1>");
+            out.println("</body>");
+            out.println("</html>");
+             */
+        }
+        finally
+        {
+            out.close(  );
+        }
+    }
+}
\ No newline at end of file

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/java/org/apache/maven/archetype/repository/RepositoryServlet.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.jar
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.jar?rev=587166&view=auto
==============================================================================
Binary file - no diff available.

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.jar
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.jar.sha1
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.jar.sha1?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.jar.sha1 (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.jar.sha1 Mon Oct 22 10:33:20 2007
@@ -0,0 +1 @@
+c2a1763a75e23880db524df59abcb8e64bf90a7d
\ No newline at end of file

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.jar.sha1
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom Mon Oct 22 10:33:20 2007
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><project>
+  <parent>
+    <artifactId>maven-plugins</artifactId>
+    <groupId>org.apache.maven.plugins</groupId>
+    <version>3</version>
+  </parent>
+  <modelVersion>4.0.0</modelVersion>
+  <artifactId>maven-clean-plugin</artifactId>
+  <packaging>maven-plugin</packaging>
+  <name>Maven Clean Plugin</name>
+  <version>2.1.1</version>
+  <prerequisites />
+  <issueManagement>
+    <system>JIRA</system>
+    <url>http://jira.codehaus.org/browse/MCLEAN</url>
+  </issueManagement>
+  <inceptionYear>2001</inceptionYear>
+  <contributors>
+    <contributor>
+      <name>Jesse McConnell</name>
+    </contributor>
+  </contributors>
+  <scm>
+    <connection>scm:svn:https://svn.apache.org/repos/asf/maven/plugins/tags/maven-clean-plugin-2.1.1</connection>
+    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/plugins/tags/maven-clean-plugin-2.1.1</developerConnection>
+    <url>https://svn.apache.org/repos/asf/maven/plugins/tags/maven-clean-plugin-2.1.1</url>
+  </scm>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-api</artifactId>
+      <version>2.0</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.shared</groupId>
+      <artifactId>file-management</artifactId>
+      <version>1.0</version>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-utils</artifactId>
+      <version>1.1</version>
+    </dependency>
+  </dependencies>
+  <distributionManagement>
+    <status>deployed</status>
+  </distributionManagement>
+</project>
\ No newline at end of file

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom.sha1
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom.sha1?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom.sha1 (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom.sha1 Mon Oct 22 10:33:20 2007
@@ -0,0 +1 @@
+1aff1846902ed6c1b8c89cd72ed35f22dc2aab05
\ No newline at end of file

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/2.1.1/maven-clean-plugin-2.1.1.pom.sha1
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/maven-metadata.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/maven-metadata.xml?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/maven-metadata.xml (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/maven-metadata.xml Mon Oct 22 10:33:20 2007
@@ -0,0 +1,12 @@
+<?xml version="1.0"?><metadata>
+  <groupId>org.apache.maven.plugins</groupId>
+  <artifactId>maven-clean-plugin</artifactId>
+  <versioning>
+    <latest>2.1.1</latest>
+    <release>2.1.1</release>
+    <versions>
+      <version>2.1.1</version>
+    </versions>
+    <lastUpdated>20070508000000</lastUpdated>
+  </versioning>
+</metadata>
\ No newline at end of file

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-clean-plugin/maven-metadata.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-metadata.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-metadata.xml?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-metadata.xml (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-metadata.xml Mon Oct 22 10:33:20 2007
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?><metadata>
+  <plugins>
+    <plugin>
+      <name>Maven Clean Plugin</name>
+      <prefix>clean</prefix>
+      <artifactId>maven-clean-plugin</artifactId>
+    </plugin>
+  </plugins>
+</metadata>
\ No newline at end of file

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/resources/org/apache/maven/plugins/maven-metadata.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/webapp/WEB-INF/web.xml?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/webapp/WEB-INF/web.xml (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/webapp/WEB-INF/web.xml Mon Oct 22 10:33:20 2007
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
+    <display-name>Archetype Repository Web Application</display-name>
+    <servlet>
+        <servlet-name>RepositoryServlet</servlet-name>
+        <servlet-class>org.apache.maven.archetype.repository.RepositoryServlet</servlet-class>
+    </servlet>
+    <servlet-mapping>
+        <servlet-name>RepositoryServlet</servlet-name>
+        <url-pattern>/*</url-pattern>
+    </servlet-mapping>
+</web-app>

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/src/main/webapp/WEB-INF/web.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/upload-order-by-deploy-file.txt
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/upload-order-by-deploy-file.txt?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/upload-order-by-deploy-file.txt (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/upload-order-by-deploy-file.txt Mon Oct 22 10:33:20 2007
@@ -0,0 +1,76 @@
+M PUT
+PI /org/some/group/your-artifact/1.0/your-artifact-1.0.jar
+RU http://localhost:8080/org/some/group/your-artifact/1.0/your-artifact-1.0.jar
+CO PK
+
+M PUT
+PI /org/some/group/your-artifact/1.0/your-artifact-1.0.jar.md5
+RU http://localhost:8080/org/some/group/your-artifact/1.0/your-artifact-1.0.jar.md5
+CO 47ff87420f24200edf383ba4a53ed645
+
+M PUT
+PI /org/some/group/your-artifact/1.0/your-artifact-1.0.jar.sha1
+RU http://localhost:8080/org/some/group/your-artifact/1.0/your-artifact-1.0.jar.sha1
+CO c2a1763a75e23880db524df59abcb8e64bf90a7d
+
+M GET
+PI /org/some/group/your-artifact/maven-metadata.xml
+RU http://localhost:8080/org/some/group/your-artifact/maven-metadata.xml
+
+M GET
+PI /org/some/group/your-artifact/maven-metadata.xml.sha1
+RU http://localhost:8080/org/some/group/your-artifact/maven-metadata.xml.sha1
+
+M GET
+PI /org/some/group/your-artifact/maven-metadata.xml
+RU http://localhost:8080/org/some/group/your-artifact/maven-metadata.xml
+
+M GET
+PI /org/some/group/your-artifact/maven-metadata.xml.sha1
+RU http://localhost:8080/org/some/group/your-artifact/maven-metadata.xml.sha1
+
+M PUT
+PI /org/some/group/your-artifact/maven-metadata.xml
+RU http://localhost:8080/org/some/group/your-artifact/maven-metadata.xml
+CO <?xml version="1.0" encoding="UTF-8"?><metadata>
+
+M PUT
+PI /org/some/group/your-artifact/maven-metadata.xml.md5
+RU http://localhost:8080/org/some/group/your-artifact/maven-metadata.xml.md5
+CO f513bc672a2b7f2bbb557cdde793bf30
+
+M PUT
+PI /org/some/group/your-artifact/maven-metadata.xml.sha1
+RU http://localhost:8080/org/some/group/your-artifact/maven-metadata.xml.sha1
+CO 22e31685a6fa47c579bc59565dd916bfa7f6445f
+
+M GET
+PI /org/some/group/your-artifact/1.0/your-artifact-1.0.pom
+RU http://localhost:8080/org/some/group/your-artifact/1.0/your-artifact-1.0.pom
+
+M GET
+PI /org/some/group/your-artifact/1.0/your-artifact-1.0.pom.sha1
+RU http://localhost:8080/org/some/group/your-artifact/1.0/your-artifact-1.0.pom.sha1
+
+M GET
+PI /org/some/group/your-artifact/1.0/your-artifact-1.0.pom
+RU http://localhost:8080/org/some/group/your-artifact/1.0/your-artifact-1.0.pom
+
+M GET
+PI /org/some/group/your-artifact/1.0/your-artifact-1.0.pom.sha1
+RU http://localhost:8080/org/some/group/your-artifact/1.0/your-artifact-1.0.pom.sha1
+
+M PUT
+PI /org/some/group/your-artifact/1.0/your-artifact-1.0.pom
+RU http://localhost:8080/org/some/group/your-artifact/1.0/your-artifact-1.0.pom
+CO <?xml version="1.0" encoding="UTF-8"?><project>
+
+M PUT
+PI /org/some/group/your-artifact/1.0/your-artifact-1.0.pom.md5
+RU http://localhost:8080/org/some/group/your-artifact/1.0/your-artifact-1.0.pom.md5
+CO 8015b21d6aefd4c0800ca37ba6398cac
+
+M PUT
+PI /org/some/group/your-artifact/1.0/your-artifact-1.0.pom.sha1
+RU http://localhost:8080/org/some/group/your-artifact/1.0/your-artifact-1.0.pom.sha1
+CO 5d85923f8e2ec12fc039b49a2f12573277e17c15
\ No newline at end of file

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/archetype-repository/upload-order-by-deploy-file.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/sandbox/trunk/archetypeng/archetype-testing/pom.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/archetypeng/archetype-testing/pom.xml?rev=587166&view=auto
==============================================================================
--- maven/sandbox/trunk/archetypeng/archetype-testing/pom.xml (added)
+++ maven/sandbox/trunk/archetypeng/archetype-testing/pom.xml Mon Oct 22 10:33:20 2007
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ 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.
+  -->
+<project
+    xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <artifactId>maven-archetypeng</artifactId>
+    <groupId>org.apache.maven.archetype</groupId>
+    <version>2.0-SNAPSHOT</version>
+  </parent>
+
+  <groupId>org.apache.maven.archetype</groupId>
+  <artifactId>archetype-testing</artifactId>
+  <version>2.0-SNAPSHOT</version>
+
+  <name>Maven Archetype Testing</name>
+  <packaging>pom</packaging>
+
+  <modules>
+    <module>archetype-proxy</module>
+    <module>archetype-repository</module>
+  </modules>
+
+</project>
\ No newline at end of file

Propchange: maven/sandbox/trunk/archetypeng/archetype-testing/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native