You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ha...@apache.org on 2007/01/29 09:37:36 UTC

svn commit: r500967 - in /maven/sandbox/maven/enterprise: ./ enterprise-plexus-application/ enterprise-plexus-application/src/ enterprise-plexus-application/src/conf/ enterprise-runtime/ enterprise-runtime/src/ enterprise-runtime/src/conf/ enterprise-w...

Author: handyande
Date: Mon Jan 29 00:37:34 2007
New Revision: 500967

URL: http://svn.apache.org/viewvc?view=rev&rev=500967
Log:
Initial import of Maven Enterprise

Added:
    maven/sandbox/maven/enterprise/   (with props)
    maven/sandbox/maven/enterprise/README.txt
    maven/sandbox/maven/enterprise/enterprise-plexus-application/   (with props)
    maven/sandbox/maven/enterprise/enterprise-plexus-application/pom.xml
    maven/sandbox/maven/enterprise/enterprise-plexus-application/src/
    maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/
    maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/application.xml
    maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/plexus.xml
    maven/sandbox/maven/enterprise/enterprise-plexus-application/src/plexus.properties
    maven/sandbox/maven/enterprise/enterprise-runtime/   (with props)
    maven/sandbox/maven/enterprise/enterprise-runtime/pom.xml
    maven/sandbox/maven/enterprise/enterprise-runtime/src/
    maven/sandbox/maven/enterprise/enterprise-runtime/src/conf/
    maven/sandbox/maven/enterprise/enterprise-runtime/src/conf/plexus.xml
    maven/sandbox/maven/enterprise/enterprise-runtime/src/plexus.properties
    maven/sandbox/maven/enterprise/enterprise-web/   (with props)
    maven/sandbox/maven/enterprise/enterprise-web/pom.xml
    maven/sandbox/maven/enterprise/enterprise-web/src/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/java/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/java/org/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/java/org/apache/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/java/org/apache/maven/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/WebdavServlet.java
    maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/META-INF/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/META-INF/plexus/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/META-INF/plexus/application.xml
    maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/org/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/org/apache/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/org/apache/maven/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/org/apache/maven/enterprise/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/org/apache/maven/enterprise/security.properties
    maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/plexus.xml
    maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/web.xml
    maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/css/
    maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/css/enterprise.css
    maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/index.jsp
    maven/sandbox/maven/enterprise/enterprise-web/src/test/
    maven/sandbox/maven/enterprise/enterprise-web/src/test/java/
    maven/sandbox/maven/enterprise/enterprise-web/src/test/resources/
    maven/sandbox/maven/enterprise/pom.xml

Propchange: maven/sandbox/maven/enterprise/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Mon Jan 29 00:37:34 2007
@@ -0,0 +1,4 @@
+target
+*.iml
+*.ipr
+*.iws

Added: maven/sandbox/maven/enterprise/README.txt
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/README.txt?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/README.txt (added)
+++ maven/sandbox/maven/enterprise/README.txt Mon Jan 29 00:37:34 2007
@@ -0,0 +1,13 @@
+Maven Enterprise
+================
+
+To build:
+
+mvn install continuum from maven trunk
+mvn install archiva from maven trunk
+mvn install enterprise (from this directory)
+
+to run:
+
+./enterprise-runtime/target/plexus-app-runtime/bin/plexus.sh
+

Propchange: maven/sandbox/maven/enterprise/enterprise-plexus-application/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Mon Jan 29 00:37:34 2007
@@ -0,0 +1,4 @@
+target
+*.iml
+*.ipr
+*.iws

Added: maven/sandbox/maven/enterprise/enterprise-plexus-application/pom.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-plexus-application/pom.xml?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-plexus-application/pom.xml (added)
+++ maven/sandbox/maven/enterprise/enterprise-plexus-application/pom.xml Mon Jan 29 00:37:34 2007
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+    <groupId>org.apache.maven.enterprise</groupId>
+    <artifactId>enterprise</artifactId>
+    <version>1.0-SNAPSHOT</version>
+  </parent>
+  <artifactId>enterprise-plexus-application</artifactId>
+  <packaging>plexus-application</packaging>
+  <name>Maven Enterprise Application</name>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.codehaus.plexus</groupId>
+        <artifactId>plexus-appserver-maven-plugin</artifactId>
+        <version>2.0-alpha-7-SNAPSHOT</version>
+        <extensions>true</extensions>
+        <configuration>
+          <applicationConfiguration>src/conf/application.xml</applicationConfiguration>
+          <configurationsDirectory>src/conf</configurationsDirectory>
+          <configurationProperties>src/plexus.properties</configurationProperties>
+          <applicationName>enterprise</applicationName>
+          <runtimeConfiguration>src/conf/plexus.xml</runtimeConfiguration>
+          <runtimeConfigurationProperties>src/plexus.properties</runtimeConfigurationProperties>
+          <runtimePath>target/enterprise-webapp-runtime</runtimePath>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven.enterprise</groupId>
+      <artifactId>enterprise-web</artifactId>
+      <version>1.0-SNAPSHOT</version>
+      <type>war</type>
+    </dependency>
+  </dependencies>
+
+  <properties>
+    <enterpriseVersion>${project.version}</enterpriseVersion>
+  </properties>
+</project>

Added: maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/application.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/application.xml?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/application.xml (added)
+++ maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/application.xml Mon Jan 29 00:37:34 2007
@@ -0,0 +1,31 @@
+<application>
+
+  <services>
+    <service>
+      <id>jetty</id>
+      <configuration>
+        <webapps>
+          <webapp>
+            <file>${plexus.home}/lib/enterprise-web-@enterpriseVersion@.war</file>
+            <context>/</context>
+            <extraction-path>${plexus.home}/webapp</extraction-path>
+            <standardWebappClassloader>true</standardWebappClassloader>
+            <listeners>
+              <http-listener>
+                <port>8080</port>
+              </http-listener>
+              <!--
+              <proxy-http-listener>
+                <port>8090</port>
+                <proxy-host>localhost</proxy-host>
+                <proxy-port>80</proxy-port>
+              </proxy-http-listener>
+              -->
+            </listeners>
+          </webapp>
+        </webapps>
+      </configuration>
+    </service>
+  </services>
+
+</application>

Added: maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/plexus.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/plexus.xml?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/plexus.xml (added)
+++ maven/sandbox/maven/enterprise/enterprise-plexus-application/src/conf/plexus.xml Mon Jan 29 00:37:34 2007
@@ -0,0 +1,2 @@
+<plexus>
+</plexus>

Added: maven/sandbox/maven/enterprise/enterprise-plexus-application/src/plexus.properties
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-plexus-application/src/plexus.properties?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-plexus-application/src/plexus.properties (added)
+++ maven/sandbox/maven/enterprise/enterprise-plexus-application/src/plexus.properties Mon Jan 29 00:37:34 2007
@@ -0,0 +1,3 @@
+app.name = enterprise
+app.long.name = Maven Enterprise
+app.description = Maven Enterprise

Propchange: maven/sandbox/maven/enterprise/enterprise-runtime/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Mon Jan 29 00:37:34 2007
@@ -0,0 +1,4 @@
+target
+*.iml
+*.ipr
+*.iws

Added: maven/sandbox/maven/enterprise/enterprise-runtime/pom.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-runtime/pom.xml?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-runtime/pom.xml (added)
+++ maven/sandbox/maven/enterprise/enterprise-runtime/pom.xml Mon Jan 29 00:37:34 2007
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+    <groupId>org.apache.maven.enterprise</groupId>
+    <artifactId>enterprise</artifactId>
+    <version>1.0-SNAPSHOT</version>
+  </parent>
+  <artifactId>enterprise-runtime</artifactId>
+  <name>Maven Enterprise Runtime</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-component-api</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-container-default</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-utils</artifactId>
+      <version>1.4</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-appserver-host</artifactId>
+      <version>2.0-alpha-7-SNAPSHOT</version>
+    </dependency>
+
+    <!-- Applications -->
+    <dependency>
+      <groupId>org.apache.maven.enterprise</groupId>
+      <artifactId>enterprise-plexus-application</artifactId>
+      <version>1.0-SNAPSHOT</version>
+      <type>plexus-application</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.continuum</groupId>
+      <artifactId>continuum-plexus-application</artifactId>
+      <version>1.1-SNAPSHOT</version>
+      <type>plexus-application</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.archiva</groupId>
+      <artifactId>archiva-plexus-application</artifactId>
+      <version>1.0-SNAPSHOT</version>
+      <type>plexus-application</type>
+    </dependency>
+
+    <!-- Services -->
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-appserver-service-jetty</artifactId>
+      <version>2.0-alpha-7-SNAPSHOT</version>
+      <type>plexus-service</type>
+    </dependency>
+
+    <!-- Application Dependencies -->
+    <dependency>
+      <groupId>log4j</groupId>
+      <artifactId>log4j</artifactId>
+      <version>1.2.8</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-logging</groupId>
+      <artifactId>commons-logging-api</artifactId>
+      <version>1.0.4</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.derby</groupId>
+      <artifactId>derby</artifactId>
+      <version>10.1.3.1</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-naming</artifactId>
+      <version>1.0-alpha-3-SNAPSHOT</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>jpox</groupId>
+      <artifactId>jpox</artifactId>
+        <version>1.1.1</version>
+        <exclusions>
+          <exclusion>
+            <groupId>javax.sql</groupId>
+            <artifactId>jdbc-stdext</artifactId>
+          </exclusion>
+        </exclusions>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>javax.mail</groupId>
+      <artifactId>mail</artifactId>
+      <version>1.4</version>
+      <scope>runtime</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.codehaus.plexus</groupId>
+        <artifactId>plexus-appserver-maven-plugin</artifactId>
+        <extensions>true</extensions>
+        <executions>
+          <execution>
+            <goals>
+              <goal>assemble-runtime</goal>
+              <goal>add-services</goal>
+              <goal>add-apps</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <runtimeConfiguration>src/conf/plexus.xml</runtimeConfiguration>
+          <runtimeConfigurationProperties>src/plexus.properties</runtimeConfigurationProperties>
+          <runtimePath>target/plexus-app-runtime</runtimePath>
+          <additionalCoreArtifacts>
+            <additionalCoreArtifact>commons-logging:commons-logging-api</additionalCoreArtifact>
+            <additionalCoreArtifact>log4j:log4j</additionalCoreArtifact>
+            <additionalCoreArtifact>org.apache.derby:derby</additionalCoreArtifact>
+            <additionalCoreArtifact>org.codehaus.plexus:plexus-naming</additionalCoreArtifact>
+            <additionalCoreArtifact>commons-pool:commons-pool</additionalCoreArtifact>
+            <additionalCoreArtifact>commons-dbcp:commons-dbcp</additionalCoreArtifact>
+            <additionalCoreArtifact>commons-collections:commons-collections</additionalCoreArtifact>
+            <additionalCoreArtifact>directory-naming:naming-config</additionalCoreArtifact>
+            <additionalCoreArtifact>directory-naming:naming-core</additionalCoreArtifact>
+            <additionalCoreArtifact>directory-naming:naming-factory</additionalCoreArtifact>
+            <additionalCoreArtifact>directory-naming:naming-java</additionalCoreArtifact>
+            <additionalCoreArtifact>javax.mail:mail</additionalCoreArtifact>
+            <additionalCoreArtifact>javax.activation:activation</additionalCoreArtifact>
+
+
+          </additionalCoreArtifacts>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>

Added: maven/sandbox/maven/enterprise/enterprise-runtime/src/conf/plexus.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-runtime/src/conf/plexus.xml?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-runtime/src/conf/plexus.xml (added)
+++ maven/sandbox/maven/enterprise/enterprise-runtime/src/conf/plexus.xml Mon Jan 29 00:37:34 2007
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<plexus> 
+  <load-on-start>
+    <!-- MUST come before agent (inserted by appserver plugin) since that will try and boot the services -->
+    <component>
+      <role>org.codehaus.plexus.naming.Naming</role>
+      <role-hint>dataSources</role-hint>
+    </component>
+    <component>
+      <role>org.codehaus.plexus.naming.Naming</role>
+      <role-hint>environments</role-hint>
+    </component>
+  </load-on-start>
+  <components>
+    <component>
+      <role>org.codehaus.plexus.naming.Naming</role>
+      <implementation>org.codehaus.plexus.naming.DefaultNaming</implementation>
+      <role-hint>environments</role-hint>
+      <configuration>
+        <environments>
+          <environment>
+            <name>enterpriseDataDir</name>
+            <type>java.lang.String</type>
+            <value>${plexus.home}/data</value>
+          </environment>
+        </environments>
+      </configuration>
+    </component>
+    <component>
+      <role>org.codehaus.plexus.naming.Naming</role>
+      <implementation>org.codehaus.plexus.naming.DefaultNaming</implementation>
+      <role-hint>dataSources</role-hint>
+      <configuration>
+        <resources>
+          <!--
+               Mail Session
+          -->
+          <resource>
+            <name>mail/Session</name>
+            <type>javax.mail.Session</type>
+            <properties>
+              <property>
+                <name>mail.smtp.host</name>
+                <value>localhost</value>
+              </property>
+              <property>
+                <name>mail.smtp.port</name>
+                <value>25</value>
+              </property>
+            </properties>
+          </resource>
+          <!--
+               Datasources
+          -->
+          <resource>
+            <name>jdbc/users</name>
+            <type>javax.sql.DataSource</type>
+            <properties>
+              <property>
+                <name>driverClassName</name>
+                <value>org.apache.derby.jdbc.EmbeddedDriver</value>
+              </property>
+              <property>
+                <name>url</name>
+                <value>jdbc:derby:${plexus.home}/data/users/database;create=true</value>
+              </property>
+              <property>
+                <name>username</name>
+                <value>sa</value>
+              </property>
+              <property>
+                <name>password</name>
+                <value></value>
+              </property>
+            </properties>
+          </resource>
+          <resource>
+            <name>jdbc/continuum</name>
+            <type>javax.sql.DataSource</type>
+            <properties>
+              <property>
+                <name>driverClassName</name>
+                <value>org.apache.derby.jdbc.EmbeddedDriver</value>
+              </property>
+              <property>
+                <name>url</name>
+                <value>jdbc:derby:${plexus.home}/data/continuum/database;create=true</value>
+              </property>
+              <property>
+                <name>username</name>
+                <value>sa</value>
+              </property>
+              <property>
+                <name>password</name>
+                <value></value>
+              </property>
+            </properties>
+          </resource>
+        </resources>
+      </configuration>
+    </component>
+  </components>
+</plexus>
+

Added: maven/sandbox/maven/enterprise/enterprise-runtime/src/plexus.properties
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-runtime/src/plexus.properties?view=auto&rev=500967
==============================================================================
    (empty)

Propchange: maven/sandbox/maven/enterprise/enterprise-web/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Mon Jan 29 00:37:34 2007
@@ -0,0 +1,4 @@
+target
+*.iml
+*.ipr
+*.iws

Added: maven/sandbox/maven/enterprise/enterprise-web/pom.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-web/pom.xml?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-web/pom.xml (added)
+++ maven/sandbox/maven/enterprise/enterprise-web/pom.xml Mon Jan 29 00:37:34 2007
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+    <groupId>org.apache.maven.enterprise</groupId>
+    <artifactId>enterprise</artifactId>
+    <version>1.0-SNAPSHOT</version>
+  </parent>
+  <artifactId>enterprise-web</artifactId>
+  <name>Maven Enterprise Web</name>
+  <packaging>war</packaging>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.codehaus.plexus.webdav</groupId>
+      <artifactId>plexus-webdav-simple</artifactId>
+      <version>1.0-alpha-1-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-servlet</artifactId>
+      <version>1.0-beta-6-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus.security</groupId>
+      <artifactId>plexus-security-ui-web-integration</artifactId>
+      <version>1.0-alpha-10-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-xwork-integration</artifactId>
+      <version>1.0-alpha-5-SNAPSHOT</version>
+    </dependency>
+  </dependencies>
+</project>

Added: maven/sandbox/maven/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/WebdavServlet.java
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/WebdavServlet.java?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/WebdavServlet.java (added)
+++ maven/sandbox/maven/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/WebdavServlet.java Mon Jan 29 00:37:34 2007
@@ -0,0 +1,149 @@
+package org.apache.maven.enterprise.web;
+
+import org.codehaus.plexus.webdav.servlet.multiplexed.MultiplexedWebDavServlet;
+import org.codehaus.plexus.webdav.servlet.DavServerRequest;
+import org.codehaus.plexus.webdav.DavServerException;
+import org.codehaus.plexus.security.ui.web.filter.authentication.HttpAuthenticator;
+import org.codehaus.plexus.security.policy.AccountLockedException;
+import org.codehaus.plexus.security.policy.MustChangePasswordException;
+import org.codehaus.plexus.security.authentication.AuthenticationException;
+import org.codehaus.plexus.security.authentication.AuthenticationResult;
+
+import javax.servlet.ServletConfig;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpServletRequest;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import java.io.File;
+import java.io.IOException;
+
+/**
+ * A simple webdav servlet for controlling some webdav collections
+ *
+ * @uthor: Andrew Williams
+ * @since: 1.0-SNAPSHOT
+ * @version: $Id$
+ */
+public class WebdavServlet
+    extends MultiplexedWebDavServlet
+{
+    private HttpAuthenticator httpAuth;
+
+    private File davRoot;
+
+    public void initComponents()
+        throws ServletException
+    {
+        setDebug(false); // TODO perhaps debug should be off by default?
+        super.initComponents();
+
+        httpAuth = (HttpAuthenticator) lookup( HttpAuthenticator.ROLE, "basic" );
+    }
+
+    public void initServers( ServletConfig servletConfig )
+        throws DavServerException
+    {
+        String plexusHome = "";
+        try
+        {
+            plexusHome = (String) (new InitialContext()).lookup( "java:comp/env/enterpriseDataDir" );
+        }
+        catch ( NamingException e )
+        {
+            /* default to the current directory */
+        }
+        davRoot = new File( plexusHome, "webdav" );
+
+        createWebdavServer( "idisk", servletConfig );
+        createWebdavServer( "repository", servletConfig );
+        createWebdavServer( "snapshot", servletConfig );
+    }
+
+    private void createWebdavServer( String name, ServletConfig servletConfig )
+        throws DavServerException
+    {
+        File serverRoot = new File( davRoot, name );
+
+        if ( serverRoot.exists() )
+        {
+            if ( !serverRoot.isDirectory() )
+            {
+                throw new DavServerException( "Unable to create webdav server, " + serverRoot.getAbsolutePath() +
+                    " is not a directory ");
+            }
+        }
+        else
+        {
+            serverRoot.mkdirs();
+        }
+        createServer( name, serverRoot, servletConfig );
+    }
+
+    public boolean isAuthenticated( DavServerRequest davRequest, HttpServletResponse response )
+        throws ServletException, IOException
+    {
+        HttpServletRequest request = davRequest.getRequest();
+
+        try
+        {
+            AuthenticationResult result = httpAuth.getAuthenticationResult( request, response );
+
+            if ( ( result == null ) || !result.isAuthenticated() )
+            {
+                httpAuth.challenge( request, response, "Enterprise Repository",
+                                    new AuthenticationException( "User credentials are invalid" ) );
+                return false;
+            }
+
+        }
+        catch ( AuthenticationException e )
+        {
+            log( "Fatal Http Authentication Error.", e );
+            throw new ServletException( "Fatal Http Authentication Error.", e );
+        }
+        catch ( AccountLockedException e )
+        {
+            httpAuth.challenge( request, response, "Enterprise Repository",
+                                new AuthenticationException( "User account is locked" ) );
+        }
+        catch ( MustChangePasswordException e )
+        {
+            httpAuth.challenge( request, response, "Enterprise Repository",
+                                new AuthenticationException( "User account password expired" ) );
+        }
+        return true;
+    }
+
+    public boolean isAuthorized( DavServerRequest davRequest, HttpServletResponse response )
+        throws ServletException, IOException
+    {
+        if ( davRequest.getPrefix().equals("idisk") )
+        {
+            String resource = davRequest.getLogicalResource();
+            String user = httpAuth.getSessionUser().getUsername();
+
+            if ( resource.equals( "" ) || resource.equals( "/" ) ) {
+                return true;
+            }
+
+            if ( resource.equals( "/" + user ) || resource.startsWith( "/" + user + '/' ) )
+            {
+                File userHome = new File( new File( davRoot, "idisk" ), user );
+
+                if ( !userHome.exists() )
+                {
+                    userHome.mkdir();
+                }
+
+                return true;
+            }
+
+            httpAuth.challenge( davRequest.getRequest(), response, "Enterprise Repository",
+                                new AuthenticationException( "Access denied." ) );
+            return false;
+        }
+
+        return true;
+    }
+}

Added: maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/META-INF/plexus/application.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/META-INF/plexus/application.xml?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/META-INF/plexus/application.xml (added)
+++ maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/META-INF/plexus/application.xml Mon Jan 29 00:37:34 2007
@@ -0,0 +1,63 @@
+<plexus>
+  <components>
+    <component>
+      <role>org.codehaus.plexus.security.configuration.UserConfiguration</role>
+      <implementation>org.codehaus.plexus.security.configuration.UserConfiguration</implementation>
+      <configuration>
+        <configs>
+          <config>${user.home}/.m2/security.properties</config>
+          <config>/org/apache/maven/enterprise/security.properties</config>
+        </configs>
+      </configuration>
+    </component>
+
+    <component>
+      <role>org.codehaus.plexus.jdo.JdoFactory</role>
+      <role-hint>users</role-hint>
+      <implementation>org.codehaus.plexus.jdo.DataSourceConfigurableJdoFactory</implementation>
+      <configuration>
+
+        <connectionFactoryName>java:comp/env/jdbc/users</connectionFactoryName>
+        <shutdownConnectionFactoryName>java:comp/env/jdbc/usersShutdown</shutdownConnectionFactoryName>
+
+        <!-- JPOX and JDO configuration -->
+        <persistenceManagerFactoryClass>org.jpox.PersistenceManagerFactoryImpl</persistenceManagerFactoryClass>
+        <otherProperties>
+          <property>
+            <name>org.jpox.autoCreateSchema</name>
+            <value>true</value>
+          </property>
+          <property>
+            <name>org.jpox.validateTables</name>
+            <value>false</value>
+          </property>
+          <property>
+            <name>org.jpox.validateConstraints</name>
+            <value>false</value>
+          </property>
+          <property>
+            <name>org.jpox.validateColumns</name>
+            <value>false</value>
+          </property>
+          <property>
+            <name>org.jpox.autoStartMechanism</name>
+            <value>None</value>
+          </property>
+          <property>
+            <name>org.jpox.transactionIsolation</name>
+            <value>READ_UNCOMMITTED</value>
+          </property>
+          <property>
+            <name>org.jpox.poid.transactionIsolation</name>
+            <value>READ_UNCOMMITTED</value>
+          </property>
+          <property>
+            <name>org.jpox.rdbms.dateTimezone</name>
+            <value>JDK_DEFAULT_TIMEZONE</value>
+          </property>
+        </otherProperties>
+      </configuration>
+    </component>
+
+  </components>
+</plexus>

Added: maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/org/apache/maven/enterprise/security.properties
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/org/apache/maven/enterprise/security.properties?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/org/apache/maven/enterprise/security.properties (added)
+++ maven/sandbox/maven/enterprise/enterprise-web/src/main/resources/org/apache/maven/enterprise/security.properties Mon Jan 29 00:37:34 2007
@@ -0,0 +1,14 @@
+application.name=Maven sEnterprisea
+# NOTE: do not include trailing slash on application.url 
+application.url=http://localhost
+application.timestamp=EEE d MMM yyyy HH:mm:ss Z
+# All emails sent by the system will be from the following user name (used in conjunction with address)
+email.from.address=enterprise@localhost
+email.from.name=Enterprise Administrator
+
+# The subject line for the email message.
+email.validation.subject=Welcome to Maven Enterprise
+
+security.signon.path=/
+security.rememberme.path=/
+

Added: maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/plexus.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/plexus.xml?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/plexus.xml (added)
+++ maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/plexus.xml Mon Jan 29 00:37:34 2007
@@ -0,0 +1,2 @@
+<plexus>
+</plexus>

Added: maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/web.xml?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/web.xml (added)
+++ maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/WEB-INF/web.xml Mon Jan 29 00:37:34 2007
@@ -0,0 +1,25 @@
+<web-app xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
+
+  <display-name>Maven Enterprise</display-name>
+
+  <!--listener>
+    <listener-class>org.codehaus.plexus.servlet.PlexusServletContextListener</listener-class>
+  </listener-->
+  <listener>
+    <listener-class>org.codehaus.plexus.xwork.PlexusLifecycleListener</listener-class>
+  </listener>
+
+
+  <servlet>
+    <servlet-name>webdav</servlet-name>
+    <servlet-class>org.apache.maven.enterprise.web.WebdavServlet</servlet-class>
+  </servlet>
+
+  <servlet-mapping>
+    <servlet-name>webdav</servlet-name>
+    <url-pattern>/webdav/*</url-pattern>
+  </servlet-mapping>
+
+</web-app>

Added: maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/css/enterprise.css
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/css/enterprise.css?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/css/enterprise.css (added)
+++ maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/css/enterprise.css Mon Jan 29 00:37:34 2007
@@ -0,0 +1,34 @@
+body {
+  margin: 0;
+  background-color: #ffffcc;
+  font-family: helvetica, serif;
+}
+
+#body {
+  width: 740px;
+  margin-left: 50px;
+  margin-right: auto;
+}
+
+#header {
+  padding: 5px;
+  background-color: #333399;
+  color: #ffcc33;
+}
+
+#content {
+  padding: 5px;
+  background-color: #cccccc;
+  border-left: 2px solid #333399;
+  border-right: 2px solid #333399;
+}
+
+#footer {
+  clear: both;
+  padding: 5px;
+  background-color: #333399;
+}
+
+a {
+  color: #333399;
+}
\ No newline at end of file

Added: maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/index.jsp
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/index.jsp?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/index.jsp (added)
+++ maven/sandbox/maven/enterprise/enterprise-web/src/main/webapp/index.jsp Mon Jan 29 00:37:34 2007
@@ -0,0 +1,32 @@
+<html>
+  <head>
+    <title>Maven Enterprise</title>
+
+    <link rel="stylesheet" type="text/css" href="css/enterprise.css"/>
+  </head>
+
+  <body>
+    <div id="body">
+      <div id="header">
+        <h1>Maven Enterprise</h1>
+      </div>
+
+      <div id="content">
+        <p>This page is a placeholder for now - please visit one of the installed applications:</p>
+        <ul>
+          <li><a href="/archiva/">Maven Archiva</a> - Repository Management</li>
+          <li><a href="/continuum/">Maven Continuum</a> - Continuous Integration</li>
+        </ul>
+
+        <p>There are also some webdav collections:</p>
+        <ul>
+          <li><a href="/webdav/idisk/">/webdav/idisk</a></li>
+          <li><a href="/webdav/repository/">/webdav/repository</a></li>
+          <li><a href="/webdav/snapshot/">/webdav/snapshot</a></li>
+        </ul>
+      </div>
+      <div id="footer">
+      </div>
+    </div>
+  </body>
+</html>

Added: maven/sandbox/maven/enterprise/pom.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise/pom.xml?view=auto&rev=500967
==============================================================================
--- maven/sandbox/maven/enterprise/pom.xml (added)
+++ maven/sandbox/maven/enterprise/pom.xml Mon Jan 29 00:37:34 2007
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>
+    <groupId>org.apache.maven</groupId>
+    <artifactId>maven-parent</artifactId>
+    <version>4</version>
+  </parent>
+  <groupId>org.apache.maven.enterprise</groupId>
+  <artifactId>enterprise</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>Maven Enterprise</name>
+
+  <scm>
+    <connection>scm:svn:https://svn.apache.org/repos/asf/maven/sandbox/maven/enterprise</connection>
+    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/sandbox/maven/enterprise</developerConnection>
+    <url>http://svn.apache.org/viewvc/maven/sandbox/maven/enterprise</url>
+  </scm>
+
+  <modules>
+    <module>enterprise-web</module>
+    <module>enterprise-plexus-application</module>
+    <module>enterprise-runtime</module>
+  </modules>
+
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <dependencyManagement>
+    <dependencies>
+      <dependency>
+        <groupId>org.codehaus.plexus</groupId>
+        <artifactId>plexus-component-api</artifactId>
+        <version>1.0-alpha-16</version>
+      </dependency>
+      <dependency>
+        <groupId>org.codehaus.plexus</groupId> 
+        <artifactId>plexus-container-default</artifactId>
+        <version>1.0-alpha-16</version>
+      </dependency>
+    </dependencies>
+  </dependencyManagement>
+</project>