continuum-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jmcconn...@apache.org
Subject svn commit: r432460 [2/2] - in /maven/continuum/trunk: continuum-api/src/main/java/org/apache/maven/continuum/ continuum-api/src/main/java/org/apache/maven/continuum/store/ continuum-core/src/main/java/org/apache/maven/continuum/ continuum-core/src/mai...
Date Fri, 18 Aug 2006 01:42:48 GMT
Modified: maven/continuum/trunk/continuum-store/src/test/java/org/apache/maven/continuum/store/ContinuumStoreTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-store/src/test/java/org/apache/maven/continuum/store/ContinuumStoreTest.java?rev=432460&r1=432459&r2=432460&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-store/src/test/java/org/apache/maven/continuum/store/ContinuumStoreTest.java (original)
+++ maven/continuum/trunk/continuum-store/src/test/java/org/apache/maven/continuum/store/ContinuumStoreTest.java Thu Aug 17 18:42:46 2006
@@ -1475,7 +1475,7 @@
             {
                 project.getDependencies();
 
-                fail( "dependencies should be in the default fetch group" );
+                fail( "dependencies should not be in the default fetch group" );
             }
             catch ( JDODetachedFieldAccessException expected )
             {

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java Thu Aug 17 18:42:46 2006
@@ -0,0 +1,390 @@
+package org.apache.maven.continuum.web.action;
+
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.model.project.BuildDefinition;
+import org.apache.maven.continuum.model.project.Schedule;
+import org.apache.maven.continuum.model.project.Project;
+import org.apache.maven.continuum.web.exception.ContinuumActionException;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+/*
+ * Copyright 2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * BuildDefinitionAction:
+ *
+ * @author Jesse McConnell <jmcconnell@apache.org>
+ * @version $ID:$
+ * @plexus.component role="com.opensymphony.xwork.Action"
+ * role-hint="buildDefinition"
+ */
+public class BuildDefinitionAction
+    extends ContinuumActionSupport
+{
+    public static final String CONFIRM = "confirm";
+
+    private int buildDefinitionId = -1;
+
+    private int projectId;
+
+    private int projectGroupId;
+
+    private int scheduleId;
+
+    private boolean isDefault;
+
+    private boolean confirmed = false;
+
+    private String executor;
+
+    private String goals;
+
+    private String arguments;
+
+    private String buildFile;
+
+    private Map schedules;
+
+    private Map profiles;
+
+    public void prepare()
+        throws Exception
+    {
+        super.prepare();
+
+        if ( schedules == null )
+        {
+            schedules = new HashMap();
+
+            Collection allSchedules = continuum.getSchedules();
+
+            for ( Iterator i = allSchedules.iterator(); i.hasNext(); )
+            {
+                Schedule schedule = (Schedule) i.next();
+
+                schedules.put( new Integer( schedule.getId() ), schedule.getName() );
+            }
+        }
+
+        // todo: missing from continuum, investigate
+        if ( profiles == null )
+        {
+            profiles = new HashMap();
+        }
+
+
+    }
+
+    /**
+     * if there is a build definition id set, then retrieve it..either way set us to up to work with build definition
+     *
+     * @return
+     */
+    public String input()
+    {
+        try
+        {
+        if ( executor == null )
+        {
+            if ( projectId != 0 )
+            {
+                executor = continuum.getProject( projectId ).getExecutorId();
+            }
+            else
+            {
+                Project project = (Project)continuum.getProjectGroup( projectGroupId ).getProjects().get( 0 );
+                executor = project.getExecutorId();
+
+            }
+
+        }
+        }
+        catch ( ContinuumException e )
+        {
+            addActionError( "error determining executor type" );
+            return ERROR;
+        }
+
+        if ( buildDefinitionId != -1 )
+        {
+            try
+            {
+                BuildDefinition buildDefinition = continuum.getBuildDefinition( buildDefinitionId );
+                goals = buildDefinition.getGoals();
+                arguments = buildDefinition.getArguments();
+                isDefault = buildDefinition.isDefaultForProject();
+
+            }
+            catch ( ContinuumException ce )
+            {
+                addActionError( "error getting build id" );
+                return ERROR;
+            }
+        }
+
+        return INPUT;
+    }
+
+    public String saveToProject()
+    {
+
+        try
+        {
+            if ( buildDefinitionId == -1 )
+            {
+                continuum.addBuildDefinitionToProject( projectId, getBuildDefinitionFromInput() );
+            }
+            else
+            {
+                continuum.updateBuildDefinitionForProject( projectId, getBuildDefinitionFromInput() );
+            }
+        }
+        catch ( ContinuumActionException cae )
+        {
+            addActionError( cae.getMessage() );
+            return INPUT;
+        }
+        catch ( ContinuumException ce )
+        {
+            addActionError( "error saving project build definition" );
+            return ERROR;
+        }
+
+        return SUCCESS;
+    }
+
+    public String saveToGroup()
+    {
+        try
+        {
+            if ( buildDefinitionId == -1 )
+            {
+                continuum.addBuildDefinitionToProjectGroup( projectGroupId, getBuildDefinitionFromInput() );
+            }
+            else
+            {
+                continuum.updateBuildDefinitionForProjectGroup( projectGroupId, getBuildDefinitionFromInput() );
+            }
+        }
+        catch ( ContinuumActionException cae )
+        {
+            addActionError( cae.getMessage() );
+            return INPUT;
+        }
+        catch ( ContinuumException ce )
+        {
+            addActionError( "error saving group build definition" );
+            return ERROR;
+        }
+
+        return SUCCESS;
+    }
+
+    public String removeFromProject()
+    {
+        if ( confirmed )
+        {
+            try
+            {
+                continuum.removeBuildDefinitionFromProject( projectId, buildDefinitionId );
+
+                return SUCCESS;
+            }
+            catch ( ContinuumException ce )
+            {
+                addActionError( "error removing build definition from project" );
+                return ERROR;
+            }
+        }
+        else
+        {
+            return CONFIRM;
+        }
+    }
+
+    public String removeFromProjectGroup()
+    {
+        if ( confirmed )
+        {
+            try
+            {
+                continuum.removeBuildDefinitionFromProject( projectGroupId, buildDefinitionId );
+
+                return SUCCESS;
+            }
+            catch ( ContinuumException ce )
+            {
+                addActionError( "error removing build definition from project" );
+                return ERROR;
+            }
+        }
+        else
+        {
+            return CONFIRM;
+        }
+    }
+
+    private BuildDefinition getBuildDefinitionFromInput()
+        throws ContinuumActionException
+    {
+
+        Schedule schedule;
+
+        try
+        {
+            schedule = continuum.getSchedule( scheduleId );
+        }
+        catch ( ContinuumException e )
+        {
+            addActionError( "unable to get schedule" );
+            throw new ContinuumActionException( "unable to get schedule" );
+        }
+
+        BuildDefinition buildDefinition = new BuildDefinition();
+
+        buildDefinition.setId( buildDefinitionId );
+        buildDefinition.setGoals( goals );
+        buildDefinition.setArguments( arguments );
+        buildDefinition.setBuildFile( buildFile );
+        buildDefinition.setDefaultForProject( isDefault );
+        buildDefinition.setSchedule( schedule );
+
+        return buildDefinition;
+    }
+
+    public int getBuildDefinitionId()
+    {
+        return buildDefinitionId;
+    }
+
+    public void setBuildDefinitionId( int buildDefinitionId )
+    {
+        this.buildDefinitionId = buildDefinitionId;
+    }
+
+    public int getProjectId()
+    {
+        return projectId;
+    }
+
+    public void setProjectId( int projectId )
+    {
+        this.projectId = projectId;
+    }
+
+    public int getProjectGroupId()
+    {
+        return projectGroupId;
+    }
+
+    public void setProjectGroupId( int projectGroupId )
+    {
+        this.projectGroupId = projectGroupId;
+    }
+
+    public int getScheduleId()
+    {
+        return scheduleId;
+    }
+
+    public void setScheduleId( int scheduleId )
+    {
+        this.scheduleId = scheduleId;
+    }
+
+    public boolean isDefault()
+    {
+        return isDefault;
+    }
+
+    public void setDefault( boolean aDefault )
+    {
+        isDefault = aDefault;
+    }
+
+    public boolean isConfirmed()
+    {
+        return confirmed;
+    }
+
+    public void setConfirmed( boolean confirmed )
+    {
+        this.confirmed = confirmed;
+    }
+
+    public String getExecutor()
+    {
+        return executor;
+    }
+
+    public void setExecutor( String executor )
+    {
+        this.executor = executor;
+    }
+
+    public String getGoals()
+    {
+        return goals;
+    }
+
+    public void setGoals( String goals )
+    {
+        this.goals = goals;
+    }
+
+    public String getArguments()
+    {
+        return arguments;
+    }
+
+    public void setArguments( String arguments )
+    {
+        this.arguments = arguments;
+    }
+
+    public String getBuildFile()
+    {
+        return buildFile;
+    }
+
+    public void setBuildFile( String buildFile )
+    {
+        this.buildFile = buildFile;
+    }
+
+    public Map getSchedules()
+    {
+        return schedules;
+    }
+
+    public void setSchedules( Map schedules )
+    {
+        this.schedules = schedules;
+    }
+
+    public Map getProfiles()
+    {
+        return profiles;
+    }
+
+    public void setProfiles( Map profiles )
+    {
+        this.profiles = profiles;
+    }
+}

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

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectGroupAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectGroupAction.java?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectGroupAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectGroupAction.java Thu Aug 17 18:42:46 2006
@@ -0,0 +1,100 @@
+package org.apache.maven.continuum.web.action;
+
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.ContinuumException;
+/*
+ * Copyright 2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * ProjectGroupAction:
+ *
+ * @author Jesse McConnell <jmcconnell@apache.org>
+ * @version $ID:$
+ *
+ * @plexus.component
+ *   role="com.opensymphony.xwork.Action"
+ *   role-hint="projectGroup"
+ */
+public class ProjectGroupAction
+    extends ContinuumActionSupport
+{
+    private int projectGroupId;
+
+    private ProjectGroup projectGroup;
+
+    private boolean confirmed;
+
+    public String view()
+    {
+        try
+        {
+            projectGroup = continuum.getProjectGroup( projectGroupId );
+        }
+        catch ( ContinuumException e)
+        {
+            addActionError( "unable to retrieve project group" );
+            return ERROR;
+        }
+
+        return SUCCESS;
+    }
+
+    public String buildDefinitions()
+    {
+        return view();
+    }
+
+    public String notifiers()
+    {
+        return view();
+    }
+
+    public String remove()
+    {        
+        return SUCCESS;
+    }
+
+
+    public int getProjectGroupId()
+    {
+        return projectGroupId;
+    }
+
+    public void setProjectGroupId( int projectGroupId )
+    {
+        this.projectGroupId = projectGroupId;
+    }
+
+    public ProjectGroup getProjectGroup()
+    {
+        return projectGroup;
+    }
+
+    public void setProjectGroup( ProjectGroup projectGroup )
+    {
+        this.projectGroup = projectGroup;
+    }
+
+    public boolean isConfirmed()
+    {
+        return confirmed;
+    }
+
+    public void setConfirmed( boolean confirmed )
+    {
+        this.confirmed = confirmed;
+    }
+}

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

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/component/BuildDefinitionSummaryAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/component/BuildDefinitionSummaryAction.java?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/component/BuildDefinitionSummaryAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/component/BuildDefinitionSummaryAction.java Thu Aug 17 18:42:46 2006
@@ -0,0 +1,199 @@
+package org.apache.maven.continuum.web.action.component;
+
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.model.project.BuildDefinition;
+import org.apache.maven.continuum.model.project.Project;
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.web.action.ContinuumActionSupport;
+import org.apache.maven.continuum.web.model.BuildDefinitionSummary;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+/*
+ * Copyright 2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * BuildDefinitionSummaryAction:
+ *
+ * @author Jesse McConnell <jmcconnell@apache.org>
+ * @version $ID:$
+ * @plexus.component role="com.opensymphony.xwork.Action"
+ * role-hint="buildDefinitionSummary"
+ */
+public class BuildDefinitionSummaryAction
+    extends ContinuumActionSupport
+{
+    private int projectGroupId;
+
+    private int projectId;
+
+    private List projectBuildDefinitionSummaries = new ArrayList();
+
+    private List groupBuildDefinitionSummaries = new ArrayList();
+
+    private List allBuildDefinitionSummaries = new ArrayList();
+
+    public String summarizeForProject()
+    {
+        try
+        {
+            projectGroupId = continuum.getProjectGroupByProjectId( projectId ).getId();
+            groupBuildDefinitionSummaries = gatherGroupBuildDefinitionSummaries( projectGroupId );
+            projectBuildDefinitionSummaries = gatherProjectBuildDefinitionSummaries( projectId );
+
+            allBuildDefinitionSummaries.addAll( groupBuildDefinitionSummaries );
+            allBuildDefinitionSummaries.addAll( projectBuildDefinitionSummaries );
+        }
+        catch ( ContinuumException e )
+        {
+            getLogger().info( "unable to build summary" );
+            return ERROR;
+        }
+
+        return SUCCESS;
+    }
+
+    public String summarizeForGroup()
+    {
+        try
+        {
+            groupBuildDefinitionSummaries = gatherGroupBuildDefinitionSummaries( projectGroupId );
+
+            ProjectGroup projectGroup = continuum.getProjectGroup( projectGroupId );
+
+            for (Iterator i = projectGroup.getProjects().iterator(); i.hasNext(); )
+            {
+                Project project = (Project)i.next();
+                projectBuildDefinitionSummaries.addAll( gatherProjectBuildDefinitionSummaries( project.getId() ) );
+
+            }
+
+            allBuildDefinitionSummaries.addAll( groupBuildDefinitionSummaries );
+            allBuildDefinitionSummaries.addAll( projectBuildDefinitionSummaries );
+        }
+        catch (ContinuumException e)
+        {
+           getLogger().info( "unable to build summary" );
+           return ERROR;
+        }
+
+        return SUCCESS;
+    }
+
+    private List gatherProjectBuildDefinitionSummaries( int projectId)
+        throws ContinuumException
+    {
+        List summaryList = new ArrayList();
+
+        Project project = continuum.getProjectWithAllDetails( projectId );
+        for ( Iterator i = project.getBuildDefinitions().iterator(); i.hasNext(); )
+        {
+            BuildDefinitionSummary bds = generateBuildDefinitionSummary( (BuildDefinition) i.next() );
+            bds.setFrom( "PROJECT" );
+            bds.setProjectId( project.getId() );
+            bds.setProjectName( project.getName() );
+
+            summaryList.add( bds );
+        }
+
+        return summaryList;
+    }
+
+
+    private List gatherGroupBuildDefinitionSummaries( int projectGroupId )
+        throws ContinuumException
+    {
+        List summaryList = new ArrayList();
+
+        ProjectGroup projectGroup = continuum.getProjectGroup( projectGroupId );
+
+        for ( Iterator i = projectGroup.getBuildDefinitions().iterator(); i.hasNext(); )
+        {
+            BuildDefinitionSummary bds = generateBuildDefinitionSummary( (BuildDefinition) i.next() );
+            bds.setFrom( "GROUP" );
+            bds.setProjectGroupId( projectGroup.getId() );
+
+            summaryList.add( bds );
+        }
+
+        return summaryList;
+    }
+
+    private BuildDefinitionSummary generateBuildDefinitionSummary( BuildDefinition bd )
+    {
+        BuildDefinitionSummary bds = new BuildDefinitionSummary();
+
+        bds.setGoals( bd.getGoals() );
+        bds.setId( bd.getId() );
+        bds.setArguments( bd.getArguments() );
+        bds.setBuildFile( bd.getBuildFile() );
+        bds.setScheduleName( bd.getSchedule().getName() );
+        bds.setIsDefault( bd.isDefaultForProject() );
+
+        return bds;
+    }
+
+    public int getProjectId()
+    {
+        return projectId;
+    }
+
+    public void setProjectId( int projectId )
+    {
+        this.projectId = projectId;
+    }
+
+    public int getProjectGroupId()
+    {
+        return projectGroupId;
+    }
+
+    public void setProjectGroupId( int projectGroupId )
+    {
+        this.projectGroupId = projectGroupId;
+    }
+
+    public List getProjectBuildDefinitionSummaries()
+    {
+        return projectBuildDefinitionSummaries;
+    }
+
+    public void setProjectBuildDefinitionSummaries( List projectBuildDefinitionSummaries )
+    {
+        this.projectBuildDefinitionSummaries = projectBuildDefinitionSummaries;
+    }
+
+    public List getGroupBuildDefinitionSummaries()
+    {
+        return groupBuildDefinitionSummaries;
+    }
+
+    public void setGroupBuildDefinitionSummaries( List groupBuildDefinitionSummaries )
+    {
+        this.groupBuildDefinitionSummaries = groupBuildDefinitionSummaries;
+    }
+
+    public List getAllBuildDefinitionSummaries()
+    {
+        return allBuildDefinitionSummaries;
+    }
+
+    public void setAllBuildDefinitionSummaries( List allBuildDefinitionSummaries )
+    {
+        this.allBuildDefinitionSummaries = allBuildDefinitionSummaries;
+    }
+}

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

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/exception/ContinuumActionException.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/exception/ContinuumActionException.java?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/exception/ContinuumActionException.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/exception/ContinuumActionException.java Thu Aug 17 18:42:46 2006
@@ -0,0 +1,36 @@
+package org.apache.maven.continuum.web.exception;
+/*
+ * Copyright 2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * ContinuumActionException:
+ *
+ * @author Jesse McConnell <jmcconnell@apache.org>
+ * @version $ID:$
+ */
+public class ContinuumActionException
+    extends Exception
+{
+    public ContinuumActionException( String string )
+    {
+        super( string );
+    }
+
+    public ContinuumActionException( String string, Throwable throwable )
+    {
+        super( string, throwable );
+    }
+}

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

Modified: maven/continuum/trunk/continuum-webapp/src/main/mdo/view-models.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/mdo/view-models.xml?rev=432460&r1=432459&r2=432460&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/mdo/view-models.xml (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/mdo/view-models.xml Thu Aug 17 18:42:46 2006
@@ -32,6 +32,16 @@
             <multiplicity>*</multiplicity>
           </association>
         </field>
+         <field>
+          <name>buildDefinitionSummarys</name>
+          <version>1.0.0</version>
+          <description></description>
+          <required>true</required>
+          <association>
+            <type>BuildDefinitionSummary</type>
+            <multiplicity>*</multiplicity>
+          </association>
+        </field>
       </fields>
     </class>
     <class>
@@ -175,6 +185,88 @@
           <description>number of errored builds in the project group</description>
           <type>int</type>
           <defaultValue>-1</defaultValue>
+        </field>
+      </fields>
+    </class>
+    <class>
+      <name>BuildDefinitionSummary</name>
+      <version>1.0.0+</version>
+      <fields>
+        <field>
+          <name>id</name>
+          <version>1.0.0</version>
+          <required>true</required>
+          <description>id of the build definition</description>
+          <type>int</type>
+        </field>
+        <field>
+          <name>projectId</name>
+          <version>1.0.0</version>
+          <required>false</required>
+          <description>project id of the project containing the build definition</description>
+          <type>int</type>
+        </field>
+        <field>
+          <name>projectGroupId</name>
+          <version>1.0.0</version>
+          <required>false</required>
+          <description>project group id of the project group with the build definition</description>
+          <type>int</type>
+        </field>
+        <field>
+          <name>goals</name>
+          <version>1.0.0</version>
+          <required>true</required>
+          <description>goals for build definition</description>
+          <type>String</type>
+        </field>
+        <field>
+          <name>arguments</name>
+          <version>1.0.0</version>
+          <required>true</required>
+          <description>arguments for build definition</description>
+          <type>String</type>
+        </field>
+        <field>
+          <name>buildFile</name>
+          <version>1.0.0</version>
+          <required>true</required>
+          <description>goals for build definition</description>
+          <type>String</type>
+        </field>
+        <field>
+          <name>isDefault</name>
+          <version>1.0.0</version>
+          <description>if the build definition is used in default cases</description>
+          <type>boolean</type>
+        </field>
+        <field>
+          <name>scheduleName</name>
+          <version>1.0.0</version>
+          <required>true</required>
+          <description>name of the schedule for build definition</description>
+          <type>String</type>
+        </field>
+        <field>
+          <name>from</name>
+          <version>1.0.0</version>
+          <required>true</required>
+          <description>source of build definition, project or project group lvl</description>
+          <type>String</type>
+        </field>
+        <field>
+          <name>profileName</name>
+          <version>1.0.0</version>
+          <required>true</required>
+          <description>name of the profile for the build definition</description>
+          <type>String</type>
+        </field>
+        <field>
+          <name>projectName</name>
+          <version>1.0.0</version>
+          <required>true</required>
+          <description>if project lvl, then the name of the project using the definition</description>
+          <type>String</type>
         </field>
       </fields>
     </class>

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?rev=432460&r1=432459&r2=432460&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties Thu Aug 17 18:42:46 2006
@@ -201,6 +201,7 @@
 projectView.buildDefinition.profile = Profile
 projectView.buildDefinition.schedule = Schedule
 projectView.buildDefinition.from = From
+projectView.buildDefinition.default = Default
 projectView.notifiers = Notifiers
 projectView.notifier.type = Type
 projectView.notifier.recipient = Recipient

Modified: maven/continuum/trunk/continuum-webapp/src/main/resources/xwork.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/xwork.xml?rev=432460&r1=432459&r2=432460&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/xwork.xml (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/xwork.xml Thu Aug 17 18:42:46 2006
@@ -25,6 +25,7 @@
     <default-interceptor-ref name="defaultContinuumStack"/>
 
     <global-results>
+      <result name="error">/error.jsp</result>
       <result name="internalError" type="redirect">/error.jsp</result>
       <result name="continuumInitialization" type="redirect">/configuration!input.action</result>
     </global-results>
@@ -98,25 +99,52 @@
       <result name="success" type="chain">projectView</result>
     </action>
 
-    <action name="buildDefinitionEdit" class="buildDefinitionEdit">
+    <!--
+    * build definition actions
+    -->
+    <action name="buildDefinition" class="buildDefinition">
       <result name="input">buildDefinitionEdit.jsp</result>
+    </action>
+
+    <action name="saveProjectBuildDefinition" class="buildDefinition" method="saveToProject">
       <result name="success" type="chain">projectView</result>
     </action>
 
-    <action name="buildDefinitionSave" class="buildDefinitionEdit">
-      <result name="input">buildDefinitionEdit.jsp</result>
+    <action name="removeProjectBuildDefinition" class="buildDefinition" method="removeFromProject">
+      <result name="confirm">deleteBuildDefinition.jsp</result>
       <result name="success" type="chain">projectView</result>
     </action>
 
-    <action name="deleteBuildDefinition" class="deleteBuildDefinition">
-      <result name="delete">deleteBuildDefinition.jsp</result>
+    <action name="saveGroupBuildDefinition" class="buildDefinition" method="saveToGroup">
       <result name="success" type="chain">projectView</result>
     </action>
 
-    <action name="addBuildDefinition" class="addBuildDefinition">
-      <result name="input">buildDefinitionEdit.jsp</result>
+    <action name="removeGroupBuildDefinition" class="buildDefinition" method="removeFromGroup">
+      <result name="confirm">deleteBuildDefinition.jsp</result>
+      <result name="success" type="chain">projectView</result>
+    </action>
+
+
+    <!--
+    * project group actions
+    -->
+    <action name="projectGroupView" class="projectGroup" method="view">
+      <result name="success">projectGroupView.jsp</result>
+    </action>
+
+    <action name="projectGroupBuildDefinition" class="projectGroup" method="buildDefinitions">
+      <result name="success">projectGroupBuildDefinition.jsp</result>
     </action>
 
+    <action name="projectGroupNotifier" class="projectGroup" method="notifiers">
+      <result name="success">projectGroupNotifier.jsp</result>
+    </action>
+
+
+
+    <!--
+    * notifier actions
+    -->
     <action name="deleteNotifier" class="deleteNotifier">
       <result name="delete">deleteNotifier.jsp</result>
       <result name="success" type="chain">projectView</result>
@@ -196,5 +224,25 @@
       <result name="success" type="chain">schedules</result>
     </action>
 
+  </package>
+
+  <package name="component" extends="default">
+    <!--
+    * component actions
+    -->
+    <action name="buildDefinitionSummary" class="buildDefinitionSummary" method="summarizeForProject">
+      <result name="success">/components/buildDefinitionSummaryComponent.jsp</result>
+      <result name="error">/components/failureComponent.jsp</result>
+    </action>
+
+    <action name="groupBuildDefinitionSummary" class="buildDefinitionSummary" method="summarizeForGroup">
+      <result name="success">/components/buildDefinitionGroupSummaryComponent.jsp</result>
+      <result name="error">/components/failureComponent.jsp</result>
+    </action>
+
+    <action name="projectSummary" class="summary">
+      <result name="success">/components/projectSummaryComponent.jsp</result>
+      <result name="error">/components/failureComponent.jsp</result>
+    </action>
   </package>
 </xwork>

Modified: maven/continuum/trunk/continuum-webapp/src/main/webapp/buildDefinitionEdit.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/buildDefinitionEdit.jsp?rev=432460&r1=432459&r2=432460&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/buildDefinitionEdit.jsp (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/buildDefinitionEdit.jsp Thu Aug 17 18:42:46 2006
@@ -10,26 +10,27 @@
         <h3><ww:text name="buildDefinition.section.title"/></h3>
 
         <div class="axial">
-          <ww:form action="buildDefinitionSave.action" method="post">
+          
+          <ww:form action="addProjectBuildDefinition" method="post">
             <ww:hidden name="buildDefinitionId"/>
             <ww:hidden name="projectId"/>
 
             <table>
               <tbody>
-                <ww:if test="project.executorId == 'ant'">
+                <ww:if test="executor == 'ant'">
                   <ww:textfield label="%{getText('buildDefinition.buildFile.ant.label')}" name="buildFile"  required="true"/>
                 </ww:if>
-                <ww:elseif test="project.executorId == 'shell'">
+                <ww:elseif test="executor == 'shell'">
                   <ww:textfield label="%{getText('buildDefinition.buildFile.shell.label')}" name="buildFile" required="true"/>
                 </ww:elseif>
                 <ww:else>
                   <ww:textfield label="%{getText('buildDefinition.buildFile.maven.label')}" name="buildFile" required="true"/>
                 </ww:else>
 
-                <ww:if test="project.executorId == 'ant'">
+                <ww:if test="executor == 'ant'">
                   <ww:textfield label="%{getText('buildDefinition.goals.ant.label')}" name="goals"/>
                 </ww:if>
-                <ww:elseif test="project.executorId == 'shell'">
+                <ww:elseif test="executor == 'shell'">
                 </ww:elseif>
                 <ww:else>
                   <ww:textfield label="%{getText('buildDefinition.goals.maven.label')}" name="goals"/>
@@ -37,7 +38,7 @@
 
                 <ww:textfield label="%{getText('buildDefinition.arguments.label')}" name="arguments"/>
                 <ww:checkbox label="%{getText('buildDefinition.defaultForProject.label')}"  name="defaultForProject" value="defaultForProject" fieldValue="true"/>
-                <ww:select label="%{getText('buildDefinition.schedule.label')}" name="scheduleId" list="schedulesMap"/>
+                <ww:select label="%{getText('buildDefinition.schedule.label')}" name="scheduleId" list="schedules"/>
               </tbody>
             </table>
             <div class="functnbar3">

Added: maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionGroupSummaryComponent.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionGroupSummaryComponent.jsp?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionGroupSummaryComponent.jsp (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionGroupSummaryComponent.jsp Thu Aug 17 18:42:46 2006
@@ -0,0 +1,80 @@
+<%@ taglib uri="/webwork" prefix="ww" %>
+<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>
+<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>
+<%@ taglib uri="continuum" prefix="c1" %>
+<ww:i18n name="localization.Continuum">
+
+  <h3>Group Build Definitions</h3>
+  <ec:table items="groupBuildDefinitionSummaries"
+            var="buildDefinitionSummary"
+            showExports="false"
+            showPagination="false"
+            showStatusBar="false"
+            filterable="false"
+            sortable="false">
+    <ec:row>
+      <ec:column property="goals" title="projectView.buildDefinition.goals"/>
+      <ec:column property="arguments" title="projectView.buildDefinition.arguments"/>
+      <ec:column property="buildFile" title="projectView.buildDefinition.buildFile"/>
+      <ec:column property="profile" title="projectView.buildDefinition.profile"/>
+      <ec:column property="scheduleName" title="schedule"/>
+      <ec:column property="from" title="projectView.buildDefinition.from"/>
+      <ec:column property="isDefault" title="projectView.buildDefinition.default"/>
+      <ec:column property="actions" title="&nbsp;">
+          <ww:url id="editUrl" action="buildDefinition" method="input">
+            <ww:param name="projectGroupId">${pageScope.buildDefinitionSummary.projectGroupId}</ww:param>
+            <ww:param name="buildDefinitionId">${pageScope.buildDefinitionSummary.id}</ww:param>
+          </ww:url>
+          <ww:url id="removeUrl" action="removeGroupBuildDefinition">
+            <ww:param name="projectGroupId">${pageScope.buildDefinitionSummary.projectGroupId}</ww:param>
+            <ww:param name="buildDefinitionId">${pageScope.buildDefinitionSummary.id}</ww:param>
+            <ww:param name="confirmed" value="false"/>
+          </ww:url>
+        <ww:a href="%{editUrl}"><ww:text name="edit"/></ww:a>
+        &nbsp;
+        <ww:a href="%{removeUrl}"><ww:text name="delete"/></ww:a>
+      </ec:column>
+    </ec:row>
+  </ec:table>
+  <div class="functnbar3">
+    <ww:form action="buildDefinition" method="post">
+      <input type="hidden" name="projectGroupId" value="<ww:property value="projectGroupid"/>"/>
+      <ww:submit value="%{getText('add')}"/>
+    </ww:form>
+  </div>
+
+  <h3>Project Build Definitions</h3>
+
+  <ec:table items="projectBuildDefinitionSummaries"
+            var="buildDefinitionSummary"
+            showExports="false"
+            showPagination="false"
+            showStatusBar="false"
+            filterable="false"
+            sortable="false">
+    <ec:row>
+      <ec:column property="projectName" title="Project"/>
+      <ec:column property="goals" title="projectView.buildDefinition.goals"/>
+      <ec:column property="arguments" title="projectView.buildDefinition.arguments"/>
+      <ec:column property="buildFile" title="projectView.buildDefinition.buildFile"/>
+      <ec:column property="profile" title="projectView.buildDefinition.profile"/>
+      <ec:column property="scheduleName" title="schedule"/>
+      <ec:column property="from" title="projectView.buildDefinition.from"/>
+      <ec:column property="isDefault" title="projectView.buildDefinition.default"/>
+      <ec:column property="actions" title="&nbsp;">
+          <ww:url id="editUrl" action="buildDefinition" method="input">
+            <ww:param name="projectId">${pageScope.buildDefinitionSummary.projectId}</ww:param>
+            <ww:param name="buildDefinitionId">${pageScope.buildDefinitionSummary.id}</ww:param>
+          </ww:url>
+          <ww:url id="removeUrl" action="removeProjectBuildDefinition">
+            <ww:param name="projectId">${pageScope.buildDefinitionSummary.projectId}</ww:param>
+            <ww:param name="buildDefinitionId">${pageScope.buildDefinitionSummary.id}</ww:param>
+            <ww:param name="confirmed" value="false"/>
+          </ww:url>
+        <ww:a href="%{editUrl}"><ww:text name="edit"/></ww:a>
+        &nbsp;
+        <ww:a href="%{removeUrl}"><ww:text name="delete"/></ww:a>
+      </ec:column>
+    </ec:row>
+  </ec:table>
+</ww:i18n>

Propchange: maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionGroupSummaryComponent.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionSummaryComponent.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionSummaryComponent.jsp?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionSummaryComponent.jsp (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionSummaryComponent.jsp Thu Aug 17 18:42:46 2006
@@ -0,0 +1,51 @@
+<%@ taglib uri="/webwork" prefix="ww" %>
+<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>
+<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>
+<%@ taglib uri="continuum" prefix="c1" %>
+<ww:i18n name="localization.Continuum">  
+  <ec:table items="allBuildDefinitionSummaries"
+            var="buildDefinitionSummary"
+            showExports="false"
+            showPagination="false"
+            showStatusBar="false"
+            filterable="false"
+            sortable="false">
+    <ec:row>
+      <ec:column property="goals" title="projectView.buildDefinition.goals"/>
+      <ec:column property="arguments" title="projectView.buildDefinition.arguments"/>
+      <ec:column property="buildFile" title="projectView.buildDefinition.buildFile"/>
+      <ec:column property="profile" title="projectView.buildDefinition.profile"/>
+      <ec:column property="scheduleName" title="schedule"/>
+      <ec:column property="from" title="projectView.buildDefinition.from"/>
+      <ec:column property="isDefault" title="projectView.buildDefinition.default"/>
+      <ec:column property="actions" title="&nbsp;">
+        <!-- if the from is PROJECT then render the links differently -->
+        <ww:if test="${pageScope.buildDefinitionSummary.from == 'PROJECT'}">
+          <ww:url id="editUrl" action="buildDefinition" method="input">
+            <ww:param name="projectId">${pageScope.buildDefinitionSummary.projectId}</ww:param>
+            <ww:param name="buildDefinitionId">${pageScope.buildDefinitionSummary.id}</ww:param>
+          </ww:url>
+          <ww:url id="removeUrl" action="removeProjectBuildDefinition">
+            <ww:param name="projectId">${pageScope.buildDefinitionSummary.projectId}</ww:param>
+            <ww:param name="buildDefinitionId">${pageScope.buildDefinitionSummary.id}</ww:param>
+            <ww:param name="confirmed" value="false"/>
+          </ww:url>
+        </ww:if>
+        <ww:else>
+          <ww:url id="editUrl" action="buildDefinition" method="input">
+            <ww:param name="projectGroupId">${pageScope.buildDefinitionSummary.projectGroupId}</ww:param>
+            <ww:param name="buildDefinitionId">${pageScope.buildDefinitionSummary.id}</ww:param>
+          </ww:url>
+          <ww:url id="removeUrl" action="removeGroupBuildDefinition">
+            <ww:param name="projectGroupId">${pageScope.buildDefinitionSummary.projectGroupId}</ww:param>
+            <ww:param name="buildDefinitionId">${pageScope.buildDefinitionSummary.id}</ww:param>
+            <ww:param name="confirmed" value="false"/>
+          </ww:url>
+        </ww:else>
+        <ww:a href="%{editUrl}"><ww:text name="edit"/></ww:a>
+        &nbsp;
+        <ww:a href="%{removeUrl}"><ww:text name="delete"/></ww:a>
+      </ec:column>
+    </ec:row>
+  </ec:table>
+</ww:i18n>

Propchange: maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionSummaryComponent.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-webapp/src/main/webapp/components/failureComponent.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/components/failureComponent.jsp?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/components/failureComponent.jsp (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/components/failureComponent.jsp Thu Aug 17 18:42:46 2006
@@ -0,0 +1,14 @@
+<%@ taglib uri="/webwork" prefix="ww" %>
+<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>
+<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>
+<%@ taglib uri="continuum" prefix="c1" %>
+<ww:i18n name="localization.Continuum">
+
+  <div class="axial">
+    <table>
+      <tr>
+        <td><center>This Component Failed to Render</center></td>
+      </tr>
+    </table>
+  </div>
+</ww:i18n>

Propchange: maven/continuum/trunk/continuum-webapp/src/main/webapp/components/failureComponent.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-webapp/src/main/webapp/components/projectSummaryComponent.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/components/projectSummaryComponent.jsp?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/components/projectSummaryComponent.jsp (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/components/projectSummaryComponent.jsp Thu Aug 17 18:42:46 2006
@@ -0,0 +1,72 @@
+<%@ taglib uri="/webwork" prefix="ww" %>
+<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>
+<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c' %>
+<%@ taglib uri="continuum" prefix="c1" %>
+<ww:i18n name="localization.Continuum">
+  <ec:table items="projects"
+            var="project"
+            showExports="false"
+            showPagination="false"
+            showStatusBar="false"
+            filterable="false">
+    <ec:row highlightRow="true">
+      <ec:column property="state" title="&nbsp;" width="1%" cell="org.apache.maven.continuum.web.view.StateCell"/>
+      <ec:column property="name" title="summary.projectTable.name" width="48%">
+        <a href="<ww:url action="projectView">
+                  <ww:param name="projectId" value="${project.id}"/>
+                </ww:url>">${project.name}</a>
+      </ec:column>
+      <ec:column property="version" title="summary.projectTable.version" width="13%"/>
+      <ec:column property="buildNumber" title="summary.projectTable.build" width="5%"
+                 cell="org.apache.maven.continuum.web.view.BuildCell"/>
+      <ec:column property="projectGroupName" title="summary.projectTable.group" width="13%"/>
+      <ec:column property="buildNowAction" title="&nbsp;" width="1%"
+                 cell="org.apache.maven.continuum.web.view.BuildNowCell" sortable="false"/>
+      <ec:column property="buildHistoryAction" title="&nbsp;" width="1%" sortable="false">
+        <c:choose>
+          <c:when test="${pageScope.project.latestBuildId > 0}">
+            <a href='<ww:url action="buildResults">
+                      <ww:param name="projectId" value="${project.id}"/>
+                    </ww:url>'><img src="<ww:url value='/images/buildhistory.gif'/>" alt="Build History"
+                                    title="Build History" border="0"></a>
+          </c:when>
+          <c:otherwise>
+            <img src="<ww:url value='/images/buildhistory_disabled.gif'/>" alt="Build History" title="Build History"
+                 border="0">
+          </c:otherwise>
+        </c:choose>
+      </ec:column>
+      <ec:column property="workingCopyAction" title="&nbsp;" width="1%" sortable="false">
+        <c:choose>
+          <c:when
+              test="${pageScope.project.state == 10 || pageScope.project.state == 2 || pageScope.project.state == 3 || pageScope.project.state == 4 || pageScope.project.state == 6}">
+            <a href='<ww:url action="workingCopy">
+                      <ww:param name="projectId" value="${project.id}"/>
+                    </ww:url>'><img src="<ww:url value='/images/workingcopy.gif'/>" alt="Working Copy"
+                                    title="Working Copy" border="0"></a>
+          </c:when>
+          <c:otherwise>
+            <img src="<ww:url value='/images/workingcopy_disabled.gif'/>" alt="Working Copy" title="Working Copy"
+                 border="0">
+          </c:otherwise>
+        </c:choose>
+      </ec:column>
+      <ec:column property="deleteAction" title="&nbsp;" width="1%" sortable="false">
+        <c:choose>
+          <c:when
+              test="${pageScope.project.state == 1 || pageScope.project.state == 10 || pageScope.project.state == 2 || pageScope.project.state == 3 || pageScope.project.state == 4}">
+            <a href='<ww:url value="/deleteProject!default.action">
+                    <ww:param name="projectId" value="${project.id}"/>
+                    <ww:param name="projectName" value="${project.name}"/>
+                  </ww:url>'>
+              <img src="<ww:url value='/images/delete.gif'/>" alt="Delete" title="Delete" border="0">
+            </a>
+          </c:when>
+          <c:otherwise>
+            <img src="<ww:url value='/images/delete_disabled.gif'/>" alt="Delete" title="Delete" border="0">
+          </c:otherwise>
+        </c:choose>
+      </ec:column>
+    </ec:row>
+  </ec:table>
+</ww:i18n>
\ No newline at end of file

Propchange: maven/continuum/trunk/continuum-webapp/src/main/webapp/components/projectSummaryComponent.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: maven/continuum/trunk/continuum-webapp/src/main/webapp/deleteBuildDefinition.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/deleteBuildDefinition.jsp?rev=432460&r1=432459&r2=432460&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/deleteBuildDefinition.jsp (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/deleteBuildDefinition.jsp Thu Aug 17 18:42:46 2006
@@ -19,9 +19,10 @@
           </p>
         </div>
         <div class="functnbar3">
-          <ww:form action="deleteBuildDefinition.action" method="post">
+          <ww:form action="removeProjectBuildDefinition">
             <ww:hidden name="buildDefinitionId"/>
             <ww:hidden name="projectId"/>
+            <ww:hidden name="confirmed" value="true"/>
             <c1:submitcancel value="%{getText('delete')}" cancel="%{getText('cancel')}"/>
           </ww:form>
         </div>

Modified: maven/continuum/trunk/continuum-webapp/src/main/webapp/groupSummary.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/groupSummary.jsp?rev=432460&r1=432459&r2=432460&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/groupSummary.jsp (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/groupSummary.jsp Thu Aug 17 18:42:46 2006
@@ -13,11 +13,11 @@
     <c:forEach items="${groups}" var="group">
 
       <ww:set name="group" value="${group}"/> 
-      <ww:url id="projectSummaryUrl" action="summary" namespace="/">
+      <ww:url id="projectGroupViewUrl" action="projectGroupView" namespace="/">
         <ww:param name="projectGroupId" value="%{'${group.id}'}"/>
       </ww:url>
 
-      <h3><ww:text name="groups.section.title"/>&nbsp;<ww:a href="%{projectSummaryUrl}">${group.name}</ww:a></h3>
+      <h3><ww:text name="groups.section.title"/>&nbsp;<ww:a href="%{projectGroupViewUrl}">${group.name}</ww:a></h3>
 
       <ec:table items="group.projects"
                 var="project"

Modified: maven/continuum/trunk/continuum-webapp/src/main/webapp/navigations/Menu.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/navigations/Menu.jsp?rev=432460&r1=432459&r2=432460&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/navigations/Menu.jsp (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/navigations/Menu.jsp Thu Aug 17 18:42:46 2006
@@ -8,9 +8,6 @@
         <a href="<ww:url value="/about.jsp"/>"><ww:text name="menu.continuum.about"/></a>
       </div>
       <div class="body">
-        <a href="<ww:url value="/summary.action"/>"><ww:text name="menu.continuum.showProjects"/></a>
-      </div>
-      <div class="body">
         <a href="<ww:url value="/groupSummary.action"/>"><ww:text name="menu.continuum.showProjectGroups"/></a>
       </div>
     </div>

Added: maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupBuildDefinition.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupBuildDefinition.jsp?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupBuildDefinition.jsp (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupBuildDefinition.jsp Thu Aug 17 18:42:46 2006
@@ -0,0 +1,44 @@
+<%@ taglib uri="/webwork" prefix="ww" %>
+<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>
+<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>
+<%@ taglib uri="continuum" prefix="c1" %>
+<html>
+  <ww:i18n name="localization.Continuum">
+    <head>
+        <title><ww:text name="projectView.page.title"/></title>
+    </head>
+    <body>
+      <div id="h3">
+        <div>
+          <p style="border-top: 1px solid transparent; border-bottom: 1px solid #DFDEDE;">
+            <ww:url id="projectGroupViewUrl" action="projectGroupView">
+              <ww:param name="projectGroupId" value="projectGroupId"/>
+            </ww:url>
+            <ww:url id="projectGroupBuildDefinitionUrl" action="projectGroupBuildDefinition">
+              <ww:param name="projectGroupId" value="projectGroupId"/>
+            </ww:url>
+            <ww:url id="projectGroupNotifierUrl" action="projectGroupNotifier">
+              <ww:param name="projectGroupId" value="projectGroupId"/>
+            </ww:url>
+
+            <ww:a cssStyle="border: 1px solid #DFDEDE; padding-left: 1em; padding-right: 1em; text-decoration: none;" href="%{projectGroupViewUrl}">Info</ww:a>
+            <b style="border: 1px solid #DFDEDE; padding-left: 1em; padding-right: 1em;">Build Definition</b>
+            <ww:a cssStyle="border: 1px solid #DFDEDE; padding-left: 1em; padding-right: 1em; text-decoration: none;" href="%{projectGroupNotifierUrl}">Notifier</ww:a>
+          </p>
+        </div>
+
+        <h3>Project Group Build Definitions</h3>
+            
+        <div class="axial">
+          <table border="1" cellspacing="2" cellpadding="3" width="100%">
+            <c1:data label="%{getText('projectView.project.name')}" name="projectGroup.name"/>
+           </table>         
+        </div>
+
+        <ww:action name="groupBuildDefinitionSummary" executeResult="true" namespace="component">
+          <ww:param name="projectGroupId" value="%{projectGroupId}"/>
+        </ww:action>
+      </div>
+    </body>
+  </ww:i18n>
+</html>

Propchange: maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupBuildDefinition.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupNotifier.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupNotifier.jsp?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupNotifier.jsp (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupNotifier.jsp Thu Aug 17 18:42:46 2006
@@ -0,0 +1,45 @@
+<%@ taglib uri="/webwork" prefix="ww" %>
+<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>
+<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>
+<%@ taglib uri="continuum" prefix="c1" %>
+<html>
+  <ww:i18n name="localization.Continuum">
+    <head>
+        <title><ww:text name="projectView.page.title"/></title>
+    </head>
+    <body>
+      <div id="h3">
+        <div>
+          <p style="border-top: 1px solid transparent; border-bottom: 1px solid #DFDEDE;">
+            <ww:url id="projectGroupViewUrl" action="projectGroupView">
+              <ww:param name="projectGroupId" value="projectGroupId"/>
+            </ww:url>
+            <ww:url id="projectGroupBuildDefinitionUrl" action="projectGroupBuildDefinition">
+              <ww:param name="projectGroupId" value="projectGroupId"/>
+            </ww:url>
+            <ww:url id="projectGroupNotifierUrl" action="projectGroupNotifier">
+              <ww:param name="projectGroupId" value="projectGroupId"/>
+            </ww:url>
+
+            <ww:a cssStyle="border: 1px solid #DFDEDE; padding-left: 1em; padding-right: 1em; text-decoration: none;" href="%{projectGroupViewUrl}">Info</ww:a>
+              <ww:a cssStyle="border: 1px solid #DFDEDE; padding-left: 1em; padding-right: 1em; text-decoration: none;" href="%{projectGroupBuildDefinitionUrl}">Build Definitions</ww:a>
+            <b style="border: 1px solid #DFDEDE; padding-left: 1em; padding-right: 1em;">Notifier</b>
+
+          </p>
+        </div>
+
+        <h3>PROJECT GROUP Notifiers<ww:text name="projectView.section.title"/></h3>
+            
+        <div class="axial">
+          <table border="1" cellspacing="2" cellpadding="3" width="100%">
+            <c1:data label="%{getText('projectView.project.name')}" name="projectGroup.name"/>
+           </table>         
+        </div>
+
+        <div class="axial">
+          UNDER CONSTRUCTION
+        </div>
+      </div>
+    </body>
+  </ww:i18n>
+</html>

Propchange: maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupNotifier.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupView.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupView.jsp?rev=432460&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupView.jsp (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupView.jsp Thu Aug 17 18:42:46 2006
@@ -0,0 +1,48 @@
+<%@ taglib uri="/webwork" prefix="ww" %>
+<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>
+<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>
+<%@ taglib uri="continuum" prefix="c1" %>
+<html>
+  <ww:i18n name="localization.Continuum">
+    <head>
+        <title><ww:text name="projectView.page.title"/></title>
+    </head>
+    <body>
+      <div id="h3">
+        <div>
+          <p style="border-top: 1px solid transparent; border-bottom: 1px solid #DFDEDE;">
+            <ww:url id="projectGroupViewUrl" action="projectGroupView">
+              <ww:param name="projectGroupId" value="projectGroupId"/>
+            </ww:url>
+            <ww:url id="projectGroupBuildDefinitionUrl" action="projectGroupBuildDefinition">
+              <ww:param name="projectGroupId" value="projectGroupId"/>
+            </ww:url>
+            <ww:url id="projectGroupNotifierUrl" action="projectGroupNotifier">
+              <ww:param name="projectGroupId" value="projectGroupId"/>
+            </ww:url>
+
+            <b style="border: 1px solid #DFDEDE; padding-left: 1em; padding-right: 1em;">Info</b>
+            <ww:a cssStyle="border: 1px solid #DFDEDE; padding-left: 1em; padding-right: 1em; text-decoration: none;" href="%{projectGroupBuildDefinitionUrl}">Build Definitions</ww:a>
+            <ww:a cssStyle="border: 1px solid #DFDEDE; padding-left: 1em; padding-right: 1em; text-decoration: none;" href="%{projectGroupNotifierUrl}">Notifiers</ww:a>
+          </p>
+        </div>
+        <h3>Project Group Information</h3>
+            
+        <div class="axial">
+          <table border="1" cellspacing="2" cellpadding="3" width="100%">
+            <c1:data label="%{getText('projectView.project.name')}" name="projectGroup.name"/>
+            <c1:data label="Group Id" name="projectGroup.groupId"/>
+            <c1:data label="Description" name="projectGroup.description"/>
+           </table>
+        </div>
+
+        <h3>Projects</h3>
+
+        <ww:action name="projectSummary" executeResult="true" namespace="component">
+          <ww:param name="projectGroupId" value="%{projectGroupId}"/>
+        </ww:action>
+
+      </div>
+    </body>
+  </ww:i18n>
+</html>

Propchange: maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupView.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: maven/continuum/trunk/continuum-webapp/src/main/webapp/projectView.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/projectView.jsp?rev=432460&r1=432459&r2=432460&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/webapp/projectView.jsp (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/webapp/projectView.jsp Thu Aug 17 18:42:46 2006
@@ -49,41 +49,13 @@
         </div>
 
         <h3><ww:text name="projectView.buildDefinitions"/></h3>
-        <ww:set name="buildDefinitions" value="project.buildDefinitions" scope="request"/>
-        <ec:table items="buildDefinitions"
-                  var="buildDefinition"
-                  showExports="false"
-                  showPagination="false"
-                  showStatusBar="false"
-                  filterable="false"
-                  sortable="false">
-          <ec:row>
-            <ec:column property="goals" title="projectView.buildDefinition.goals"/>
-            <ec:column property="arguments" title="projectView.buildDefinition.arguments"/>
-            <ec:column property="buildFile" title="projectView.buildDefinition.buildFile"/>
-            <ec:column property="profile" title="projectView.buildDefinition.profile"/>
-            <ec:column property="schedule" title="schedule">
-                ${pageScope.buildDefinition.schedule.name}
-            </ec:column>
-            <ec:column property="from" title="projectView.buildDefinition.from">
-                PROJECT
-            </ec:column>
-            <ec:column property="actions" title="&nbsp;">
-                <!-- TODO: REPLACE THIS WITH A NEW CELL CLASS -->
-                <a href='<ww:url value="/buildDefinitionEdit!default.action">
-                  <ww:param name="projectId" value="project.id"/>
-                  <ww:param name="buildDefinitionId" value="${buildDefinition.id}"/>
-                </ww:url>'><ww:text name="edit"/></a>
-                &nbsp;
-                <a href='<ww:url value="/deleteBuildDefinition!default.action">
-                  <ww:param name="projectId" value="project.id"/>
-                  <ww:param name="buildDefinitionId" value="${buildDefinition.id}"/>
-                </ww:url>'><ww:text name="delete"/></a>
-            </ec:column>
-          </ec:row>
-        </ec:table>
+
+        <ww:action name="buildDefinitionSummary" id="summary" namespace="component" executeResult="true">
+          <ww:param name="projectId" value="%{project.id}" />
+        </ww:action>
+
         <div class="functnbar3">
-          <ww:form action="addBuildDefinition.action" method="post">
+          <ww:form action="buildDefinition" method="post">
             <input type="hidden" name="projectId" value="<ww:property value="project.id"/>"/>
             <ww:submit value="%{getText('add')}"/>
           </ww:form>



Mime
View raw message