You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by br...@apache.org on 2006/12/01 07:26:17 UTC

svn commit: r481166 [1/2] - in /maven/continuum/trunk: ./ continuum-api/src/main/java/org/apache/maven/continuum/configuration/ continuum-api/src/main/java/org/apache/maven/continuum/store/ continuum-configuration/ continuum-configuration/src/ continuu...

Author: brett
Date: Thu Nov 30 22:26:12 2006
New Revision: 481166

URL: http://svn.apache.org/viewvc?view=rev&rev=481166
Log:
move the company information to be configured from a POM in the repository

Added:
    maven/continuum/trunk/continuum-configuration/   (with props)
    maven/continuum/trunk/continuum-configuration/pom.xml   (with props)
    maven/continuum/trunk/continuum-configuration/src/
    maven/continuum/trunk/continuum-configuration/src/main/
    maven/continuum/trunk/continuum-configuration/src/main/java/
    maven/continuum/trunk/continuum-configuration/src/main/java/org/
    maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/
    maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/
    maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/
    maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/
    maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeException.java   (with props)
    maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeListener.java   (with props)
    maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStore.java   (with props)
    maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStoreException.java   (with props)
    maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationStore.java   (with props)
    maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/InvalidConfigurationException.java   (with props)
    maven/continuum/trunk/continuum-configuration/src/main/mdo/
    maven/continuum/trunk/continuum-configuration/src/main/mdo/configuration.mdo
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction-validation.xml   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.properties   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/admin/appearance.jsp   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/admin/editAppearance.jsp   (with props)
Removed:
    maven/continuum/trunk/continuum-model/src/main/mdo/general.xml
    maven/continuum/trunk/continuum-webapp/src/main/webapp/scripts/
Modified:
    maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/configuration/ConfigurationService.java
    maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/store/ContinuumStore.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationService.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java
    maven/continuum/trunk/continuum-model/pom.xml
    maven/continuum/trunk/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java
    maven/continuum/trunk/continuum-webapp/pom.xml
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigurationAction.java
    maven/continuum/trunk/continuum-webapp/src/main/resources/META-INF/plexus/application.xml
    maven/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties
    maven/continuum/trunk/continuum-webapp/src/main/resources/xwork.xml
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/admin/configuration.jsp
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/admin/configurationEdit.jsp
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/decorators/default.jsp
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/navigations/Menu.jsp
    maven/continuum/trunk/design/white-site/src/site/xdoc/admin/appearance.xml
    maven/continuum/trunk/pom.xml

Modified: maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/configuration/ConfigurationService.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/configuration/ConfigurationService.java?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
--- maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/configuration/ConfigurationService.java (original)
+++ maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/configuration/ConfigurationService.java Thu Nov 30 22:26:12 2006
@@ -17,7 +17,6 @@
  */
 
 import java.io.File;
-import java.util.Map;
 
 /**
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
@@ -52,24 +51,6 @@
     File getDeploymentRepositoryDirectory();
 
     void setDeploymentRepositoryDirectory( File deploymentRepositoryDirectory );
-
-    void setJdks( Map jdks );
-
-    String getCompanyLogo();
-
-    void setCompanyLogo( String companyLogoUrl );
-
-    String getCompanyName();
-
-    void setCompanyName( String companyName );
-
-    String getCompanyUrl();
-
-    void setCompanyUrl( String companyUrl );
-
-    boolean isGuestAccountEnabled();
-
-    void setGuestAccountEnabled( boolean enabled );
 
     String getBuildOutput( int buildId, int projectId )
         throws ConfigurationException;

Modified: maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/store/ContinuumStore.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/store/ContinuumStore.java?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
--- maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/store/ContinuumStore.java (original)
+++ maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/store/ContinuumStore.java Thu Nov 30 22:26:12 2006
@@ -16,7 +16,6 @@
  * limitations under the License.
  */
 
-import org.apache.maven.continuum.model.general.CompanyInformation;
 import org.apache.maven.continuum.model.project.BuildDefinition;
 import org.apache.maven.continuum.model.project.BuildResult;
 import org.apache.maven.continuum.model.project.Profile;
@@ -108,7 +107,7 @@
         throws ContinuumStoreException;
 
     Collection getAllProjectGroupsWithProjects();
-    
+
     Collection getAllProjectGroups();
 
     List getAllProjectsByName();
@@ -188,7 +187,7 @@
 
     List getProjectsInGroup( int projectGroupId )
         throws ContinuumObjectNotFoundException, ContinuumStoreException;
-    
+
     ProjectGroup getProjectGroupWithProjects( int projectGroupId )
         throws ContinuumObjectNotFoundException, ContinuumStoreException;
 
@@ -241,14 +240,6 @@
         throws ContinuumStoreException;
 
     SystemConfiguration getSystemConfiguration()
-        throws ContinuumStoreException;
-
-    CompanyInformation addCompanyInformation( CompanyInformation companyInfo );
-
-    void updateCompanyInformation( CompanyInformation companyInfo )
-        throws ContinuumStoreException;
-
-    CompanyInformation getCompanyInformation()
         throws ContinuumStoreException;
 
     void closeStore();

Propchange: maven/continuum/trunk/continuum-configuration/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Nov 30 22:26:12 2006
@@ -0,0 +1,2 @@
+target
+*.iml

Added: maven/continuum/trunk/continuum-configuration/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-configuration/pom.xml?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-configuration/pom.xml (added)
+++ maven/continuum/trunk/continuum-configuration/pom.xml Thu Nov 30 22:26:12 2006
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+<!--
+  ~ 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>
+  <parent>
+    <artifactId>continuum-parent</artifactId>
+    <groupId>org.apache.maven.continuum</groupId>
+    <version>1.1-SNAPSHOT</version>
+  </parent>
+  <modelVersion>4.0.0</modelVersion>
+  <artifactId>continuum-configuration</artifactId>
+  <name>Continuum Configuration</name>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.codehaus.modello</groupId>
+        <artifactId>modello-maven-plugin</artifactId>
+        <executions>
+          <execution>
+            <goals>
+              <goal>xpp3-writer</goal>
+              <goal>java</goal>
+              <goal>xpp3-reader</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <version>1.1.0</version>
+          <model>src/main/mdo/configuration.mdo</model>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.plexus</groupId>
+        <artifactId>plexus-maven-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>generate</id>
+            <goals>
+              <goal>descriptor</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+</project>
\ No newline at end of file

Propchange: maven/continuum/trunk/continuum-configuration/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeException.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeException.java?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeException.java (added)
+++ maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeException.java Thu Nov 30 22:26:12 2006
@@ -0,0 +1,34 @@
+package org.apache.maven.continuum.configuration;
+
+/*
+ * 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.
+ */
+
+/**
+ * An error changing the configuration
+ *
+ * @author <a href="mailto:brett@apache.org">Brett Porter</a>
+ */
+public class ConfigurationChangeException
+    extends Exception
+{
+    public ConfigurationChangeException( String message, Throwable cause )
+    {
+        super( message, cause );
+    }
+}

Propchange: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeListener.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeListener.java?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeListener.java (added)
+++ maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeListener.java Thu Nov 30 22:26:12 2006
@@ -0,0 +1,39 @@
+package org.apache.maven.continuum.configuration;
+
+/*
+ * 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.
+ */
+
+/**
+ * Component capable of noticing configuration changes and adjusting accordingly.
+ * This is not a Plexus role.
+ *
+ * @author <a href="mailto:brett@apache.org">Brett Porter</a>
+ */
+public interface ConfigurationChangeListener
+{
+    /**
+     * Notify the object that there has been a configuration change.
+     *
+     * @param configuration the new configuration
+     * @throws InvalidConfigurationException if there is a problem with the new configuration
+     * @throws ConfigurationChangeException  if there is a problem changing the configuration, but the configuration is valid
+     */
+    void notifyOfConfigurationChange( Configuration configuration )
+        throws InvalidConfigurationException, ConfigurationChangeException;
+}

Propchange: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationChangeListener.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStore.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStore.java?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStore.java (added)
+++ maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStore.java Thu Nov 30 22:26:12 2006
@@ -0,0 +1,62 @@
+package org.apache.maven.continuum.configuration;
+
+/*
+ * 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.
+ */
+
+/**
+ * A component for loading the configuration into the model.
+ *
+ * @author <a href="mailto:brett@apache.org">Brett Porter</a>
+ * @todo this is something that could possibly be generalised into Modello.
+ * @todo it is currently very similar to that in Archiva
+ */
+public interface ConfigurationStore
+{
+    /**
+     * The Plexus role for the component.
+     */
+    String ROLE = ConfigurationStore.class.getName();
+
+    /**
+     * Get the configuration from the store. A cached version may be used.
+     *
+     * @return the configuration
+     * @throws ConfigurationStoreException if there is a problem loading the configuration
+     */
+    Configuration getConfigurationFromStore()
+        throws ConfigurationStoreException;
+
+    /**
+     * Save the configuration to the store.
+     *
+     * @param configuration the configuration to store
+     * @throws ConfigurationStoreException   if there was a problem storing the configuration
+     * @throws InvalidConfigurationException if the configuration supplied is not valid
+     * @throws ConfigurationChangeException  if there is a problem executing a configuration change on one of the listeners
+     */
+    void storeConfiguration( Configuration configuration )
+        throws ConfigurationStoreException, InvalidConfigurationException, ConfigurationChangeException;
+
+    /**
+     * Add a configuration change listener.
+     *
+     * @param listener the listener
+     */
+    void addChangeListener( ConfigurationChangeListener listener );
+}

Propchange: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStore.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStoreException.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStoreException.java?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStoreException.java (added)
+++ maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStoreException.java Thu Nov 30 22:26:12 2006
@@ -0,0 +1,34 @@
+package org.apache.maven.continuum.configuration;
+
+/*
+ * 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.
+ */
+
+/**
+ * Exception occurring using the configuration store.
+ *
+ * @author <a href="mailto:brett@apache.org">Brett Porter</a>
+ */
+public class ConfigurationStoreException
+    extends Exception
+{
+    public ConfigurationStoreException( String message, Throwable cause )
+    {
+        super( message, cause );
+    }
+}

Propchange: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/ConfigurationStoreException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationStore.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationStore.java?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationStore.java (added)
+++ maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationStore.java Thu Nov 30 22:26:12 2006
@@ -0,0 +1,149 @@
+package org.apache.maven.continuum.configuration;
+
+/*
+ * 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.
+ */
+
+import org.apache.maven.continuum.configuration.io.xpp3.ConfigurationXpp3Reader;
+import org.apache.maven.continuum.configuration.io.xpp3.ConfigurationXpp3Writer;
+import org.codehaus.plexus.logging.AbstractLogEnabled;
+import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
+import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException;
+import org.codehaus.plexus.util.IOUtil;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileReader;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+
+/**
+ * Load and store the configuration. No synchronization is used, but it is unnecessary as the old configuration object
+ * can continue to be used.
+ *
+ * @author <a href="mailto:brett@apache.org">Brett Porter</a>
+ * @plexus.component
+ */
+public class DefaultConfigurationStore
+    extends AbstractLogEnabled
+    implements ConfigurationStore, Initializable
+{
+    /**
+     * @plexus.configuration default-value="${configuration.store.file}"
+     */
+    private File file;
+
+    /**
+     * The cached configuration.
+     */
+    private Configuration configuration;
+
+    /**
+     * List of listeners to configuration changes.
+     */
+    private List/*<ConfigurationChangeListener>*/ listeners = new LinkedList();
+
+    public Configuration getConfigurationFromStore()
+        throws ConfigurationStoreException
+    {
+        if ( configuration == null )
+        {
+            ConfigurationXpp3Reader reader = new ConfigurationXpp3Reader();
+
+            FileReader fileReader;
+            try
+            {
+                fileReader = new FileReader( file );
+            }
+            catch ( FileNotFoundException e )
+            {
+                getLogger().warn( "Configuration file: " + file + " not found. Using defaults." );
+                configuration = new Configuration();
+                return configuration;
+            }
+
+            getLogger().info( "Reading configuration from " + file );
+            try
+            {
+                configuration = reader.read( fileReader, false );
+            }
+            catch ( IOException e )
+            {
+                throw new ConfigurationStoreException( e.getMessage(), e );
+            }
+            catch ( XmlPullParserException e )
+            {
+                throw new ConfigurationStoreException( e.getMessage(), e );
+            }
+            finally
+            {
+                IOUtil.close( fileReader );
+            }
+        }
+        return configuration;
+    }
+
+    public void storeConfiguration( Configuration configuration )
+        throws ConfigurationStoreException, InvalidConfigurationException, ConfigurationChangeException
+    {
+        for ( Iterator i = listeners.iterator(); i.hasNext(); )
+        {
+            ConfigurationChangeListener listener = (ConfigurationChangeListener) i.next();
+
+            listener.notifyOfConfigurationChange( configuration );
+        }
+
+        ConfigurationXpp3Writer writer = new ConfigurationXpp3Writer();
+
+        getLogger().info( "Writing configuration to " + file );
+        FileWriter fileWriter = null;
+        try
+        {
+            file.getParentFile().mkdirs();
+
+            fileWriter = new FileWriter( file );
+            writer.write( fileWriter, configuration );
+        }
+        catch ( IOException e )
+        {
+            throw new ConfigurationStoreException( e.getMessage(), e );
+        }
+        finally
+        {
+            IOUtil.close( fileWriter );
+        }
+    }
+
+    public void addChangeListener( ConfigurationChangeListener listener )
+    {
+        listeners.add( listener );
+    }
+
+    public void initialize()
+        throws InitializationException
+    {
+        if ( file == null )
+        {
+            file = new File( System.getProperty( "user.home" ), "/.m2/continuum.xml" );
+        }
+    }
+}

Propchange: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationStore.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/InvalidConfigurationException.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/InvalidConfigurationException.java?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/InvalidConfigurationException.java (added)
+++ maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/InvalidConfigurationException.java Thu Nov 30 22:26:12 2006
@@ -0,0 +1,49 @@
+package org.apache.maven.continuum.configuration;
+
+/*
+ * 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.
+ */
+
+/**
+ * An error in the configuration.
+ *
+ * @author <a href="mailto:brett@apache.org">Brett Porter</a>
+ */
+public class InvalidConfigurationException
+    extends Exception
+{
+    private final String name;
+
+    public InvalidConfigurationException( String name, String message )
+    {
+        super( message );
+        this.name = name;
+    }
+
+    public InvalidConfigurationException( String name, String message, Throwable cause )
+    {
+        super( message, cause );
+
+        this.name = name;
+    }
+
+    public String getName()
+    {
+        return name;
+    }
+}
\ No newline at end of file

Propchange: maven/continuum/trunk/continuum-configuration/src/main/java/org/apache/maven/continuum/configuration/InvalidConfigurationException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-configuration/src/main/mdo/configuration.mdo
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-configuration/src/main/mdo/configuration.mdo?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-configuration/src/main/mdo/configuration.mdo (added)
+++ maven/continuum/trunk/continuum-configuration/src/main/mdo/configuration.mdo Thu Nov 30 22:26:12 2006
@@ -0,0 +1,67 @@
+<!--
+  ~ 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.
+  -->
+
+<model>
+  <id>configuration</id>
+  <name>Configuration</name>
+  <description>
+    Configuration for Continuum.
+  </description>
+  <defaults>
+    <default>
+      <key>package</key>
+      <value>org.apache.maven.continuum.configuration</value>
+    </default>
+  </defaults>
+  <classes>
+    <class rootElement="true" xml.tagName="configuration">
+      <name>Configuration</name>
+      <version>1.1.0+</version>
+      <fields>
+        <field>
+          <name>companyPom</name>
+          <version>1.1.0+</version>
+          <description>The identifier of the company super POM.</description>
+          <association>
+            <type>CompanyPom</type>
+          </association>
+        </field>
+      </fields>
+    </class>
+    <class>
+      <name>CompanyPom</name>
+      <version>1.1.0+</version>
+      <fields>
+        <field>
+          <name>groupId</name>
+          <type>String</type>
+          <version>1.1.0+</version>
+        </field>
+        <field>
+          <name>artifactId</name>
+          <type>String</type>
+          <version>1.1.0+</version>
+        </field>
+      </fields>
+    </class>
+  </classes>
+</model>
+
+
+

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java Thu Nov 30 22:26:12 2006
@@ -41,6 +41,7 @@
 import org.apache.maven.continuum.project.builder.ContinuumProjectBuildingResult;
 import org.apache.maven.continuum.project.builder.maven.MavenOneContinuumProjectBuilder;
 import org.apache.maven.continuum.project.builder.maven.MavenTwoContinuumProjectBuilder;
+import org.apache.maven.continuum.release.ContinuumReleaseManager;
 import org.apache.maven.continuum.scm.queue.CheckOutTask;
 import org.apache.maven.continuum.store.ContinuumObjectNotFoundException;
 import org.apache.maven.continuum.store.ContinuumStore;
@@ -48,7 +49,6 @@
 import org.apache.maven.continuum.utils.PlexusContainerManager;
 import org.apache.maven.continuum.utils.ProjectSorter;
 import org.apache.maven.continuum.utils.WorkingDirectoryService;
-import org.apache.maven.continuum.release.ContinuumReleaseManager;
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusContainer;
 import org.codehaus.plexus.action.Action;
@@ -85,9 +85,7 @@
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
  * @author <a href="mailto:trygvis@inamo.no">Trygve Laugst&oslash;l </a>
  * @version $Id$
- *
- * @plexus.component
- *   role="org.apache.maven.continuum.Continuum"
+ * @plexus.component role="org.apache.maven.continuum.Continuum"
  */
 public class DefaultContinuum
     extends AbstractLogEnabled
@@ -220,7 +218,7 @@
             throw new ContinuumException( "could not find project group containing " + projectGroupId );
         }
     }
-    
+
     public ProjectGroup getProjectGroupByProjectId( int projectId )
         throws ContinuumException
     {
@@ -241,12 +239,12 @@
 
         store.removeProjectGroup( projectGroup );
     }
-    
+
     public void addProjectGroup( ProjectGroup projectGroup )
         throws ContinuumException
     {
         ProjectGroup pg = null;
-        
+
         try
         {
             pg = store.getProjectGroupByGroupId( projectGroup.getGroupId() );
@@ -260,21 +258,22 @@
         {
             throw new ContinuumException( "Unable to add the requested project group", e );
         }
-        
+
         if ( pg == null )
         {
 
             ProjectGroup new_pg = store.addProjectGroup( projectGroup );
-            
+
             try
             {
                 addBuildDefinitionToProjectGroup( new_pg.getId(), getDefaultBuildDefinition() );
             }
             catch ( ContinuumStoreException e )
             {
-                throw new ContinuumException( "Error adding default build definition to the requested project group", e );
+                throw new ContinuumException( "Error adding default build definition to the requested project group",
+                                              e );
             }
-            
+
             getLogger().info( "Added new project group: " + new_pg.getName() );
         }
         else
@@ -282,7 +281,7 @@
             throw new ContinuumException( "Unable to add the requested project group: groupId already exists." );
         }
     }
-    
+
     private BuildDefinition getDefaultBuildDefinition()
         throws ContinuumStoreException
     {
@@ -300,12 +299,12 @@
 
         return bd;
     }
-    
+
     public Collection getAllProjectGroups()
     {
         return store.getAllProjectGroups();
     }
-    
+
     public ProjectGroup getProjectGroupByGroupId( String groupId )
         throws ContinuumException
     {
@@ -315,14 +314,14 @@
         }
         catch ( ContinuumObjectNotFoundException e )
         {
-            throw new ContinuumException( "Unable to find project group", e);
+            throw new ContinuumException( "Unable to find project group", e );
         }
         catch ( ContinuumStoreException e )
         {
-            throw new ContinuumException( "Error retrieving", e);
+            throw new ContinuumException( "Error retrieving", e );
         }
     }
-    
+
     public ProjectGroup getProjectGroupByGroupIdWithBuildDetails( String groupId )
         throws ContinuumException
     {
@@ -332,15 +331,14 @@
         }
         catch ( ContinuumObjectNotFoundException e )
         {
-            throw new ContinuumException( "Unable to find project group", e);
+            throw new ContinuumException( "Unable to find project group", e );
         }
         catch ( ContinuumStoreException e )
         {
-            throw new ContinuumException( "Error retrieving", e);
+            throw new ContinuumException( "Error retrieving", e );
         }
     }
 
-
     // ----------------------------------------------------------------------
     // Projects
     // ----------------------------------------------------------------------
@@ -592,8 +590,8 @@
             }
             catch ( ContinuumStoreException e )
             {
-                throw new ContinuumException(
-                    "Project (id=" + project.getId() + " doens't have a default build definition, this should be impossible, parent should have default definition set." );
+                throw new ContinuumException( "Project (id=" + project.getId() +
+                    " doens't have a default build definition, this should be impossible, parent should have default definition set." );
             }
 
             buildProject( project, buildDefId.intValue(), trigger );
@@ -623,7 +621,7 @@
         }
 
         //Map buildDefinitionsIds = store.getDefaultBuildDefinitions();
-        
+
         BuildDefinition groupDefaultBD = null;
         try
         {
@@ -631,17 +629,13 @@
         }
         catch ( ContinuumObjectNotFoundException e )
         {
-            throw new ContinuumException(
-                                         "Project Group (id="
-                                             + projectGroupId
-                                             + " doens't have a default build definition, this should be impossible, it should always have a default definition set." );
+            throw new ContinuumException( "Project Group (id=" + projectGroupId +
+                " doens't have a default build definition, this should be impossible, it should always have a default definition set." );
         }
         catch ( ContinuumStoreException e )
         {
-            throw new ContinuumException(
-                                         "Project Group (id="
-                                             + projectGroupId
-                                             + " doens't have a default build definition, this should be impossible, it should always have a default definition set." );
+            throw new ContinuumException( "Project Group (id=" + projectGroupId +
+                " doens't have a default build definition, this should be impossible, it should always have a default definition set." );
         }
 
         for ( Iterator i = projectsList.iterator(); i.hasNext(); )
@@ -664,14 +658,16 @@
                 getLogger().debug( e.getMessage() );
             }
 
-            if( projectDefaultBD != null )
+            if ( projectDefaultBD != null )
             {
                 buildDefId = projectDefaultBD.getId();
-                getLogger().debug( "Project " + project.getId() + " has own default build definition, will use it instead of group's.");
+                getLogger().debug( "Project " + project.getId() +
+                    " has own default build definition, will use it instead of group's." );
             }
-            else if( !"maven2".equals( project.getExecutorId() ) )
+            else if ( !"maven2".equals( project.getExecutorId() ) )
             {
-                getLogger().debug( "Project " + project.getId() + " is not a maven2 project, will not be included in group build.");
+                getLogger().debug(
+                    "Project " + project.getId() + " is not a maven2 project, will not be included in group build." );
                 continue;
             }
 
@@ -681,8 +677,8 @@
 
     /**
      * takes a given schedule and determines which projects need to build
-     *
-     * The build order is determined by the 
+     * <p/>
+     * The build order is determined by the
      *
      * @param schedule
      * @throws ContinuumException
@@ -750,8 +746,8 @@
             {
                 Integer buildDefId = (Integer) buildDefinitionIterator.next();
 
-                if ( buildDefId != null && !isInBuildingQueue( project.getId(), buildDefId.intValue() )
-                    && !isInCheckoutQueue( project.getId() ) )
+                if ( buildDefId != null && !isInBuildingQueue( project.getId(), buildDefId.intValue() ) &&
+                    !isInCheckoutQueue( project.getId() ) )
                 {
                     buildProject( project, buildDefId.intValue(), ContinuumProjectState.TRIGGER_SCHEDULED, false );
                 }
@@ -1011,7 +1007,8 @@
     public ContinuumProjectBuildingResult addMavenOneProject( String metadataUrl, int projectGroupId )
         throws ContinuumException
     {
-        return executeAddProjectsFromMetadataActivity( metadataUrl, MavenOneContinuumProjectBuilder.ID, projectGroupId );
+        return executeAddProjectsFromMetadataActivity( metadataUrl, MavenOneContinuumProjectBuilder.ID,
+                                                       projectGroupId );
     }
 
     // ----------------------------------------------------------------------
@@ -1027,7 +1024,8 @@
     public ContinuumProjectBuildingResult addMavenTwoProject( String metadataUrl, int projectGroupId )
         throws ContinuumException
     {
-        return executeAddProjectsFromMetadataActivity( metadataUrl, MavenTwoContinuumProjectBuilder.ID, projectGroupId );
+        return executeAddProjectsFromMetadataActivity( metadataUrl, MavenTwoContinuumProjectBuilder.ID,
+                                                       projectGroupId );
     }
 
     // ----------------------------------------------------------------------
@@ -1106,15 +1104,15 @@
      * @throws ContinuumException
      */
     private ContinuumProjectBuildingResult executeAddProjectsFromMetadataActivity( String metadataUrl,
-                                                                                  String projectBuilderId )
+                                                                                   String projectBuilderId )
         throws ContinuumException
     {
         return executeAddProjectsFromMetadataActivity( metadataUrl, projectBuilderId, -1 );
     }
 
     private ContinuumProjectBuildingResult executeAddProjectsFromMetadataActivity( String metadataUrl,
-                                                                                  String projectBuilderId,
-                                                                                  int projectGroupId )
+                                                                                   String projectBuilderId,
+                                                                                   int projectGroupId )
         throws ContinuumException
     {
         Map context = new HashMap();
@@ -1177,35 +1175,36 @@
 
         try
         {
-            if (projectGroupId == -1) {
+            if ( projectGroupId == -1 )
+            {
                 try
                 {
                     projectGroup = store.getProjectGroupByGroupId( projectGroup.getGroupId() );
-    
+
                     projectGroupId = projectGroup.getId();
-    
+
                     getLogger().info(
-                                      "Using existing project group with the group id: '" + projectGroup.getGroupId()
-                                          + "'." );
+                        "Using existing project group with the group id: '" + projectGroup.getGroupId() + "'." );
                 }
                 catch ( ContinuumObjectNotFoundException e )
                 {
-                    getLogger().info( "Creating project group with the group id: '" + projectGroup.getGroupId() + "'." );
-    
+                    getLogger().info(
+                        "Creating project group with the group id: '" + projectGroup.getGroupId() + "'." );
+
                     Map pgContext = new HashMap();
-    
+
                     pgContext.put( AbstractContinuumAction.KEY_WORKING_DIRECTORY, getWorkingDirectory() );
-    
+
                     pgContext.put( AbstractContinuumAction.KEY_UNVALIDATED_PROJECT_GROUP, projectGroup );
-    
+
                     executeAction( "validate-project-group", pgContext );
-    
+
                     executeAction( "store-project-group", pgContext );
-    
+
                     projectGroupId = AbstractContinuumAction.getProjectGroupId( pgContext );
                 }
             }
-    
+
             projectGroup = store.getProjectGroupWithBuildDetails( projectGroupId );
 
             /* add the project group loaded from database, which has more info, like id */
@@ -1269,6 +1268,7 @@
 
     // This whole section needs a scrub but will need to be dealt with generally
     // when we add schedules and profiles to the mix.
+
     public ProjectNotifier getNotifier( int projectId, int notifierId )
         throws ContinuumException
     {
@@ -1328,7 +1328,7 @@
         return addNotifier( projectId, notifier );
     }
 
-     public ProjectNotifier updateGroupNotifier( int projectGroupId, ProjectNotifier notifier )
+    public ProjectNotifier updateGroupNotifier( int projectGroupId, ProjectNotifier notifier )
         throws ContinuumException
     {
         ProjectGroup projectGroup = getProjectGroup( projectGroupId );
@@ -1395,7 +1395,7 @@
         return notifierProperties;
     }
     */
-    
+
     public ProjectNotifier addNotifier( int projectId, ProjectNotifier notifier )
         throws ContinuumException
     {
@@ -1544,7 +1544,7 @@
                 catch ( ContinuumStoreException cse )
                 {
                     throw new ContinuumException( "Unable to remove notifer from project group.", cse );
-                }                            
+                }
             }
         }
     }
@@ -1981,15 +1981,6 @@
     {
         try
         {
-            if ( convertBoolean( (String) configuration.get( "conf.enableGuest" ) ) )
-            {
-                configurationService.setGuestAccountEnabled( true );
-            }
-            else
-            {
-                configurationService.setGuestAccountEnabled( false );
-            }
-
             if ( configuration.get( "conf.workingDirectory" ) != null )
             {
                 configurationService.setWorkingDirectory( configurationService.getFile( (String) configuration
@@ -2025,12 +2016,6 @@
                 throw new ContinuumException( "base url can't be null" );
             }
 
-            configurationService.setCompanyName( (String) configuration.get( "conf.companyName" ) );
-
-            configurationService.setCompanyLogo( (String) configuration.get( "conf.companyLogo" ) );
-
-            configurationService.setCompanyUrl( (String) configuration.get( "conf.companyUrl" ) );
-
             configurationService.store();
         }
         catch ( ConfigurationStoringException e )
@@ -2254,7 +2239,7 @@
         }
         catch ( ActionNotFoundException e )
         {
-            e.printStackTrace( );
+            e.printStackTrace();
             throw new ContinuumException( "Error while executing the action '" + actionName + "'.", e );
         }
         catch ( ContinuumException e )
@@ -2559,8 +2544,7 @@
         }
         catch ( ContinuumObjectNotFoundException e )
         {
-            throw new ContinuumException(
-                                          "Continuum is not properly initialized, default project group does not exist",
+            throw new ContinuumException( "Continuum is not properly initialized, default project group does not exist",
                                           e );
         }
         catch ( ContinuumStoreException ex )

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationService.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationService.java?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationService.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationService.java Thu Nov 30 22:26:12 2006
@@ -16,7 +16,6 @@
  * limitations under the License.
  */
 
-import org.apache.maven.continuum.model.general.CompanyInformation;
 import org.apache.maven.continuum.model.system.SystemConfiguration;
 import org.apache.maven.continuum.store.ContinuumStore;
 import org.apache.maven.continuum.store.ContinuumStoreException;
@@ -25,14 +24,11 @@
 
 import java.io.File;
 import java.io.IOException;
-import java.util.Map;
 
 /**
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
  * @version $Id$
- *
- * @plexus.component
- *   role="org.apache.maven.continuum.configuration.ConfigurationService"
+ * @plexus.component role="org.apache.maven.continuum.configuration.ConfigurationService"
  */
 public class DefaultConfigurationService
     extends AbstractLogEnabled
@@ -54,8 +50,6 @@
 
     private SystemConfiguration systemConf;
 
-    private CompanyInformation companyInformation;
-
     private boolean loaded = false;
 
     // ----------------------------------------------------------------------
@@ -142,51 +136,6 @@
             deploymentRepositoryDirectory != null ? deploymentRepositoryDirectory.getAbsolutePath() : null );
     }
 
-    public void setJdks( Map jdks )
-    {
-        // no-op
-    }
-
-    public String getCompanyLogo()
-    {
-        return companyInformation.getCompanyLogoUrl();
-    }
-
-    public void setCompanyLogo( String companyLogoUrl )
-    {
-        companyInformation.setCompanyLogoUrl( companyLogoUrl );
-    }
-
-    public String getCompanyName()
-    {
-        return companyInformation.getCompanyName();
-    }
-
-    public void setCompanyName( String companyName )
-    {
-        companyInformation.setCompanyName( companyName );
-    }
-
-    public String getCompanyUrl()
-    {
-        return companyInformation.getCompanyUrl();
-    }
-
-    public void setCompanyUrl( String companyUrl )
-    {
-        companyInformation.setCompanyUrl( companyUrl );
-    }
-
-    public boolean isGuestAccountEnabled()
-    {
-        return systemConf.isGuestAccountEnabled();
-    }
-
-    public void setGuestAccountEnabled( boolean enabled )
-    {
-        systemConf.setGuestAccountEnabled( enabled );
-    }
-
     public String getBuildOutput( int buildId, int projectId )
         throws ConfigurationException
     {
@@ -288,15 +237,6 @@
                 systemConf = store.addSystemConfiguration( systemConf );
             }
 
-            companyInformation = store.getCompanyInformation();
-
-            if ( companyInformation == null )
-            {
-                companyInformation = new CompanyInformation();
-
-                companyInformation = store.addCompanyInformation( companyInformation );
-            }
-
             loaded = true;
         }
         catch ( ContinuumStoreException e )
@@ -311,7 +251,6 @@
         try
         {
             store.updateSystemConfiguration( systemConf );
-            store.updateCompanyInformation( companyInformation );
         }
         catch ( ContinuumStoreException e )
         {

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
    (empty)

Modified: maven/continuum/trunk/continuum-model/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-model/pom.xml?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
--- maven/continuum/trunk/continuum-model/pom.xml (original)
+++ maven/continuum/trunk/continuum-model/pom.xml Thu Nov 30 22:26:12 2006
@@ -16,8 +16,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">
+         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">
   <parent>
     <artifactId>continuum-parent</artifactId>
     <groupId>org.apache.maven.continuum</groupId>
@@ -47,16 +47,6 @@
             </configuration>
           </execution>
           <execution>
-            <id>modello-general</id>
-            <goals>
-              <goal>java</goal>
-              <goal>jpox-metadata-class</goal>
-            </goals>
-            <configuration>
-              <model>src/main/mdo/general.xml</model>
-            </configuration>
-          </execution>
-          <execution>
             <id>jpox-jdo-mapping-replication</id>
             <goals>
               <goal>jpox-jdo-mapping</goal>
@@ -64,16 +54,6 @@
             <configuration>
               <model>src/main/mdo/continuum.xml</model>
               <replicationParameters>true</replicationParameters>
-            </configuration>
-          </execution>
-          <execution>
-            <id>jpox-jdo-mapping-general</id>
-            <goals>
-              <goal>jpox-jdo-mapping</goal>
-            </goals>
-            <configuration>
-              <model>src/main/mdo/general.xml</model>
-              <outputDirectory>${basedir}/target/classes/org/apache/maven/continuum/model/general</outputDirectory>
             </configuration>
           </execution>
         </executions>

Modified: maven/continuum/trunk/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
--- maven/continuum/trunk/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java (original)
+++ maven/continuum/trunk/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java Thu Nov 30 22:26:12 2006
@@ -16,7 +16,6 @@
  * limitations under the License.
  */
 
-import org.apache.maven.continuum.model.general.CompanyInformation;
 import org.apache.maven.continuum.model.project.BuildDefinition;
 import org.apache.maven.continuum.model.project.BuildResult;
 import org.apache.maven.continuum.model.project.Profile;
@@ -26,14 +25,14 @@
 import org.apache.maven.continuum.model.project.ProjectGroup;
 import org.apache.maven.continuum.model.project.ProjectNotifier;
 import org.apache.maven.continuum.model.project.Schedule;
-import org.apache.maven.continuum.model.system.Installation;
-import org.apache.maven.continuum.model.system.SystemConfiguration;
-import org.apache.maven.continuum.model.scm.TestCaseFailure;
-import org.apache.maven.continuum.model.scm.ChangeSet;
 import org.apache.maven.continuum.model.scm.ChangeFile;
-import org.apache.maven.continuum.model.scm.SuiteResult;
+import org.apache.maven.continuum.model.scm.ChangeSet;
 import org.apache.maven.continuum.model.scm.ScmResult;
+import org.apache.maven.continuum.model.scm.SuiteResult;
+import org.apache.maven.continuum.model.scm.TestCaseFailure;
 import org.apache.maven.continuum.model.scm.TestResult;
+import org.apache.maven.continuum.model.system.Installation;
+import org.apache.maven.continuum.model.system.SystemConfiguration;
 import org.apache.maven.continuum.project.ContinuumProjectState;
 import org.codehaus.plexus.jdo.JdoFactory;
 import org.codehaus.plexus.jdo.PlexusJdoUtils;
@@ -1351,37 +1350,6 @@
             return (SystemConfiguration) systemConfs.get( 0 );
         }
     }
-
-    public CompanyInformation addCompanyInformation( CompanyInformation companyInfo )
-    {
-        return (CompanyInformation) addObject( getPersistenceManager( usersPmf ), companyInfo );
-    }
-
-    public void updateCompanyInformation( CompanyInformation companyInfo )
-        throws ContinuumStoreException
-    {
-        updateObject( getPersistenceManager( usersPmf ), companyInfo );
-    }
-
-    public CompanyInformation getCompanyInformation()
-        throws ContinuumStoreException
-    {
-        List companyInfos = getAllObjectsDetached( getPersistenceManager( usersPmf ), CompanyInformation.class );
-
-        if ( companyInfos == null || companyInfos.isEmpty() )
-        {
-            return null;
-        }
-        else if ( companyInfos.size() > 1 )
-        {
-            throw new ContinuumStoreException(
-                "Database is corrupted. There are more than one companyInformation object." );
-        }
-        else
-        {
-            return (CompanyInformation) companyInfos.get( 0 );
-        }
-    }  
 
     private PersistenceManager getPersistenceManager()
     {

Modified: maven/continuum/trunk/continuum-webapp/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/pom.xml?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
--- maven/continuum/trunk/continuum-webapp/pom.xml (original)
+++ maven/continuum/trunk/continuum-webapp/pom.xml Thu Nov 30 22:26:12 2006
@@ -1,7 +1,7 @@
 <?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">
+         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">
   <parent>
     <artifactId>continuum-parent</artifactId>
     <groupId>org.apache.maven.continuum</groupId>
@@ -50,17 +50,28 @@
               <includes>
                 <!-- TODO: META-INF shouldn't be required, seems to be an issue with the current war plugin -->
                 <include>META-INF</include>
-                <include>WEB-INF/classes</include>      <!-- Classes and Resources from other wars -->
-                <include>WEB-INF/lib</include>          <!-- Dependencies from other wars -->
-                <include>WEB-INF/database</include>     <!-- Database location configured in application.xml -->
-                <include>WEB-INF/logs</include>         <!-- Log file location specified in application.xml -->
-                <include>pss</include>                  <!-- plexus-security css and javascript -->
-                <include>WEB-INF/jsp/pss</include>      <!-- plexus-security jsps -->
-                <include>WEB-INF/template/pss</include> <!-- plexus-security xwork templates -->
-                <include>WEB-INF/build-output-directory</include> <!-- Directory created by jetty:run -->
-                <include>WEB-INF/working-directory</include>      <!-- Directory created by jetty:run -->
-                <include>WEB-INF/logs</include>         <!-- Directory created by jetty:run -->
-                <include>WEB-INF/temp</include>         <!-- Directory created by jetty:run -->
+                <include>WEB-INF/classes</include>
+                <!-- Classes and Resources from other wars -->
+                <include>WEB-INF/lib</include>
+                <!-- Dependencies from other wars -->
+                <include>WEB-INF/database</include>
+                <!-- Database location configured in application.xml -->
+                <include>WEB-INF/logs</include>
+                <!-- Log file location specified in application.xml -->
+                <include>pss</include>
+                <!-- plexus-security css and javascript -->
+                <include>WEB-INF/jsp/pss</include>
+                <!-- plexus-security jsps -->
+                <include>WEB-INF/template/pss</include>
+                <!-- plexus-security xwork templates -->
+                <include>WEB-INF/build-output-directory</include>
+                <!-- Directory created by jetty:run -->
+                <include>WEB-INF/working-directory</include>
+                <!-- Directory created by jetty:run -->
+                <include>WEB-INF/logs</include>
+                <!-- Directory created by jetty:run -->
+                <include>WEB-INF/temp</include>
+                <!-- Directory created by jetty:run -->
               </includes>
             </fileset>
           </filesets>
@@ -74,7 +85,8 @@
           <!-- Some versions of maven-war-plugin (snapshots) have this incorrectly defaulted to true.
                Specifically setting this to false to avoid accidental jar file creation. -->
           <archiveClasses>false</archiveClasses>
-          <dependentWarExcludes>META-INF/**,WEB-INF/web.xml,WEB-INF/classes/xwork.xml,WEB-INF/lib/**</dependentWarExcludes>
+          <dependentWarExcludes>META-INF/**,WEB-INF/web.xml,WEB-INF/classes/xwork.xml,WEB-INF/lib/**
+          </dependentWarExcludes>
         </configuration>
         <!-- TODO: would be good to make the jetty plugin aware of these and remove the below -->
         <executions>
@@ -188,6 +200,10 @@
   <dependencies>
     <dependency>
       <groupId>org.apache.maven.continuum</groupId>
+      <artifactId>continuum-configuration</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.continuum</groupId>
       <artifactId>continuum-core</artifactId>
     </dependency>
     <dependency>
@@ -367,7 +383,7 @@
       <groupId>org.codehaus.plexus.security</groupId>
       <artifactId>plexus-security-keys-jdo</artifactId>
     </dependency>
-     <dependency>
+    <dependency>
       <groupId>org.codehaus.plexus.security</groupId>
       <artifactId>plexus-security-authentication-provider-keystore</artifactId>
     </dependency>

Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigurationAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigurationAction.java?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigurationAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigurationAction.java Thu Nov 30 22:26:12 2006
@@ -57,43 +57,22 @@
 
     private String baseUrl;
 
-    private String companyLogo;
-
-    private String companyName;
-
-    private String companyUrl;
-
-
     public void prepare()
     {
-        try
-        {
-
-            ConfigurationService configuration = getContinuum().getConfiguration();
-
-            workingDirectory = configuration.getWorkingDirectory().getAbsolutePath();
+        ConfigurationService configuration = getContinuum().getConfiguration();
 
-            buildOutputDirectory = configuration.getBuildOutputDirectory().getAbsolutePath();
+        workingDirectory = configuration.getWorkingDirectory().getAbsolutePath();
 
-            baseUrl = configuration.getUrl();
+        buildOutputDirectory = configuration.getBuildOutputDirectory().getAbsolutePath();
 
-            if ( StringUtils.isEmpty( baseUrl ) )
-            {
-                HttpServletRequest request = ServletActionContext.getRequest();
-                baseUrl = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() +
-                    request.getContextPath();
-                getLogger().info( "baseUrl='" + baseUrl + "'" );
-            }
+        baseUrl = configuration.getUrl();
 
-            companyLogo = configuration.getCompanyLogo();
-
-            companyName = configuration.getCompanyName();
-
-            companyUrl = configuration.getCompanyUrl();
-        }
-        catch ( Exception e )
+        if ( StringUtils.isEmpty( baseUrl ) )
         {
-            e.printStackTrace();
+            HttpServletRequest request = ServletActionContext.getRequest();
+            baseUrl = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() +
+                request.getContextPath();
+            getLogger().info( "baseUrl='" + baseUrl + "'" );
         }
     }
 
@@ -113,12 +92,6 @@
 
             configuration.setUrl( baseUrl );
 
-            configuration.setCompanyLogo( companyLogo );
-
-            configuration.setCompanyName( companyName );
-
-            configuration.setCompanyUrl( companyUrl );
-
             configuration.setInitialized( true );
             configuration.store();
         }
@@ -169,37 +142,6 @@
     {
         this.baseUrl = baseUrl;
     }
-
-    public String getCompanyLogo()
-    {
-        return companyLogo;
-    }
-
-    public void setCompanyLogo( String companyLogo )
-    {
-        this.companyLogo = companyLogo;
-    }
-
-    public String getCompanyName()
-    {
-        return companyName;
-    }
-
-    public void setCompanyName( String companyName )
-    {
-        this.companyName = companyName;
-    }
-
-    public String getCompanyUrl()
-    {
-        return companyUrl;
-    }
-
-    public void setCompanyUrl( String companyUrl )
-    {
-        this.companyUrl = companyUrl;
-    }
-
 
     public SecureActionBundle getSecureActionBundle()
         throws SecureActionException

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java Thu Nov 30 22:26:12 2006
@@ -0,0 +1,170 @@
+package org.apache.maven.continuum.web.action.admin;
+
+/*
+ * 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.
+ */
+
+import com.opensymphony.xwork.ModelDriven;
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
+import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
+import org.apache.maven.continuum.configuration.CompanyPom;
+import org.apache.maven.continuum.configuration.Configuration;
+import org.apache.maven.continuum.configuration.ConfigurationChangeException;
+import org.apache.maven.continuum.configuration.ConfigurationStore;
+import org.apache.maven.continuum.configuration.ConfigurationStoreException;
+import org.apache.maven.continuum.configuration.InvalidConfigurationException;
+import org.apache.maven.continuum.execution.maven.m2.MavenBuilderHelper;
+import org.apache.maven.continuum.security.ContinuumRoleConstants;
+import org.apache.maven.continuum.web.action.ContinuumActionSupport;
+import org.apache.maven.model.Model;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.MavenProjectBuilder;
+import org.apache.maven.project.ProjectBuildingException;
+import org.codehaus.plexus.security.rbac.Resource;
+import org.codehaus.plexus.security.ui.web.interceptor.SecureAction;
+import org.codehaus.plexus.security.ui.web.interceptor.SecureActionBundle;
+import org.codehaus.plexus.security.ui.web.interceptor.SecureActionException;
+import org.codehaus.plexus.util.StringUtils;
+
+import java.io.IOException;
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * @author <a href="mailto:brett@apache.org">Brett Porter</a>
+ * @version $Id: ConfigurationAction.java 480950 2006-11-30 14:58:35Z evenisse $
+ * @plexus.component role="com.opensymphony.xwork.Action"
+ * role-hint="configureAppearance"
+ */
+public class ConfigureAppearanceAction
+    extends ContinuumActionSupport
+    implements ModelDriven, SecureAction
+{
+    /**
+     * @plexus.requirement
+     */
+    private ConfigurationStore configurationStore;
+
+    /**
+     * The configuration.
+     */
+    private Configuration configuration;
+
+    /**
+     * The company POM.
+     */
+    private Model companyModel;
+
+    /**
+     * @plexus.requirement
+     */
+    private MavenProjectBuilder projectBuilder;
+
+    /**
+     * @plexus.requirement
+     */
+    private ArtifactFactory artifactFactory;
+
+    /**
+     * @plexus.requirement
+     */
+    private MavenBuilderHelper helper;
+
+    /**
+     * @plexus.requirement
+     */
+    private ArtifactMetadataSource artifactMetadataSource;
+
+    public String execute()
+        throws IOException, ConfigurationStoreException, InvalidConfigurationException, ConfigurationChangeException
+    {
+        configurationStore.storeConfiguration( configuration );
+
+        return SUCCESS;
+    }
+
+    public Object getModel()
+    {
+        return configuration;
+    }
+
+    public void prepare()
+        throws ConfigurationStoreException, ProjectBuildingException, ArtifactMetadataRetrievalException
+    {
+        configuration = configurationStore.getConfigurationFromStore();
+
+        CompanyPom companyPom = configuration.getCompanyPom();
+        if ( companyPom != null )
+        {
+            if ( StringUtils.isNotEmpty( companyPom.getGroupId() ) &&
+                StringUtils.isNotEmpty( companyPom.getArtifactId() ) )
+            {
+                Artifact artifact = artifactFactory.createProjectArtifact( companyPom.getGroupId(),
+                                                                           companyPom.getArtifactId(),
+                                                                           Artifact.RELEASE_VERSION );
+
+                ArtifactRepository localRepository = helper.getLocalRepository();
+
+                List repositories =
+                    projectBuilder.buildStandaloneSuperProject( localRepository ).getRemoteArtifactRepositories();
+                List versions =
+                    artifactMetadataSource.retrieveAvailableVersions( artifact, localRepository, repositories );
+
+                if ( !versions.isEmpty() )
+                {
+                    Collections.sort( versions );
+
+                    DefaultArtifactVersion artifactVersion =
+                        (DefaultArtifactVersion) versions.get( versions.size() - 1 );
+                    artifact = artifactFactory.createProjectArtifact( companyPom.getGroupId(),
+                                                                      companyPom.getArtifactId(),
+                                                                      artifactVersion.toString() );
+
+                    MavenProject project =
+                        projectBuilder.buildFromRepository( artifact, repositories, localRepository );
+
+                    companyModel = project.getModel();
+                }
+                else
+                {
+                    addActionMessage( "Company POM '" + companyPom.getGroupId() + ":" + companyPom.getArtifactId() +
+                        "' doesn't exist. Click on the 'Edit Company POM' link to create it." );
+                }
+            }
+        }
+    }
+
+    public SecureActionBundle getSecureActionBundle()
+        throws SecureActionException
+    {
+        SecureActionBundle bundle = new SecureActionBundle();
+        bundle.setRequiresAuthentication( true );
+        bundle.addRequiredAuthorization( ContinuumRoleConstants.CONTINUUM_MANAGE_CONFIGURATION, Resource.GLOBAL );
+
+        return bundle;
+    }
+
+    public Model getCompanyModel()
+    {
+        return companyModel;
+    }
+}

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: maven/continuum/trunk/continuum-webapp/src/main/resources/META-INF/plexus/application.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/META-INF/plexus/application.xml?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/META-INF/plexus/application.xml (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/META-INF/plexus/application.xml Thu Nov 30 22:26:12 2006
@@ -570,7 +570,7 @@
           <role>org.codehaus.plexus.security.policy.PasswordRule</role>
           <field-name>rules</field-name>
         </requirement>
-         <requirement>
+        <requirement>
           <role>org.codehaus.plexus.security.policy.RememberMeSettings</role>
           <field-name>rememberMeSettings</field-name>
         </requirement>
@@ -696,5 +696,36 @@
     </component>
 
   </components>
+
+  <!-- Override default configuration of components -->
+  <lifecycle-handler-manager implementation="org.codehaus.plexus.lifecycle.DefaultLifecycleHandlerManager">
+    <default-lifecycle-handler-id>webapp</default-lifecycle-handler-id>
+    <lifecycle-handlers>
+      <lifecycle-handler implementation="org.codehaus.plexus.personality.plexus.PlexusLifecycleHandler">
+        <id>webapp</id>
+        <name>Web Application Component Lifecycle Handler</name>
+        <begin-segment>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.LogEnablePhase"/>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.CompositionPhase"/>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.ContextualizePhase"/>
+          <phase implementation="org.codehaus.plexus.xwork.ConfigurationPhase"/>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.ServiceablePhase"/>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializePhase"/>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.StartPhase"/>
+        </begin-segment>
+        <suspend-segment>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.SuspendPhase"/>
+        </suspend-segment>
+        <resume-segment>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.ResumePhase"/>
+        </resume-segment>
+        <end-segment>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.StopPhase"/>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.DisposePhase"/>
+          <phase implementation="org.codehaus.plexus.personality.plexus.lifecycle.phase.LogDisablePhase"/>
+        </end-segment>
+      </lifecycle-handler>
+    </lifecycle-handlers>
+  </lifecycle-handler-manager>
 
 </plexus>

Modified: maven/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties?view=diff&rev=481166&r1=481165&r2=481166
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties Thu Nov 30 22:26:12 2006
@@ -43,6 +43,7 @@
 menu.add.shellProject = Shell Project
 menu.administration = Administration
 menu.administration.configuration = Configuration
+menu.administration.appearance = Appearance
 menu.administration.schedules = Schedules
 menu.administration.users = Users
 menu.administration.userGroups = User Groups
@@ -132,9 +133,6 @@
 configuration.buildOutputDirectory.label = Build Output Directory
 configuration.deploymentRepositoryDirectory.label = Deployment Repository Directory
 configuration.baseUrl.label = Base URL
-configuration.companyName.label = Company Name
-configuration.companyLogo.label = Company Logo
-configuration.companyUrl.label = Company URL
 configuration.submit.edit = Edit
 configuration.guest.message = Enable/Disable login as guest
 configuration.workingDirectory.message = Enter the working directory of the Continuum web application

Added: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction-validation.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction-validation.xml?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction-validation.xml (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction-validation.xml Thu Nov 30 22:26:12 2006
@@ -0,0 +1,35 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<!DOCTYPE validators PUBLIC
+    "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
+    "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
+
+<validators>
+  <field name="companyPom.groupId">
+    <field-validator type="requiredstring">
+      <message key="appearance.groupId.required"/>
+    </field-validator>
+  </field>
+  <field name="companyPom.artifactId">
+    <field-validator type="requiredstring">
+      <message key="appearance.artifactId.required"/>
+    </field-validator>
+  </field>
+</validators>

Propchange: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction-validation.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.properties
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.properties?view=auto&rev=481166
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.properties (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.properties Thu Nov 30 22:26:12 2006
@@ -0,0 +1,22 @@
+#
+# 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.
+#
+
+appearance.groupId.required = You must define a group identifier.
+appearance.artifactId.required = You must define an artifact identifier.
+

Propchange: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.properties
------------------------------------------------------------------------------
    svn:eol-style = native