continuum-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jmcconn...@apache.org
Subject svn commit: r469244 [1/2] - in /maven/continuum/trunk/continuum-webapp/src/main: java/org/apache/maven/continuum/web/action/notifier/ resources/ resources/org/apache/maven/continuum/web/action/notifier/ webapp/WEB-INF/jsp/ webapp/WEB-INF/jsp/components/
Date Mon, 30 Oct 2006 19:31:02 GMT
Author: jmcconnell
Date: Mon Oct 30 11:31:00 2006
New Revision: 469244

URL: http://svn.apache.org/viewvc?view=rev&rev=469244
Log:
CONTINUUM-976 rahul broke apart the notifiers into seperate group and project notifiers so that we avoid trying to determine if the action applies to the group or project based on context from the page. Its the validators, actions and jsp tweaks all at once.

Added:
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractGroupNotifierEditAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractNotifierEditActionSupport.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractProjectNotifierEditAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddGroupNotifierAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddProjectNotifierAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteGroupNotifierAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteProjectNotifierAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.java
      - copied, changed from r469213, maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcNotifierEditAction.java
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberProjectNotifierEditAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnGroupNotifierEditAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnProjectNotifierEditAction.java   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction-ircProjectGroupNotifierSave-validation.xml   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.properties   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction-ircProjectNotifierSave-validation.xml   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.properties   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction-jabberProjectGroupNotifierSave-validation.xml   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.properties   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberProjectNotifierEditAction-jabberProjectNotifierSave-validation.xml   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberProjectNotifierEditAction.properties   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction-mailProjectGroupNotifierSave-validation.xml   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.properties   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction-mailProjectNotifierSave-validation.xml   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.properties   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MsnGroupNotifierEditAction-msnProjectGroupNotifierSave-validation.xml   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MsnGroupNotifierEditAction.properties   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MsnProjectNotifierEditAction-msnProjectNotifierSave-validation.xml   (with props)
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MsnProjectNotifierEditAction.properties   (with props)
Removed:
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractNotifierEditAction.java
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddNotifierAction.java
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteNotifierAction.java
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcNotifierEditAction.java
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberNotifierEditAction.java
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailNotifierEditAction.java
    maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnNotifierEditAction.java
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcNotifierEditAction-ircNotifierSave-validation.xml
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcNotifierEditAction.properties
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberNotifierEditAction-jabberNotifierSave-validation.xml
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberNotifierEditAction.properties
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MailNotifierEditAction-mailNotifierSave-validation.xml
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MailNotifierEditAction.properties
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MsnNotifierEditAction-msnNotifierSave-validation.xml
    maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/MsnNotifierEditAction.properties
Modified:
    maven/continuum/trunk/continuum-webapp/src/main/resources/xwork.xml
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/components/projectGroupNotifierSummaryComponent.jsp
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/components/projectNotifierSummaryComponent.jsp
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifierIrc.jsp
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifierJabber.jsp
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifierMail.jsp
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifierMsn.jsp
    maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/notifierSelectType.jsp

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractGroupNotifierEditAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractGroupNotifierEditAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractGroupNotifierEditAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractGroupNotifierEditAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,86 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-2006 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.
+ */
+
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+
+/**
+ * Common base class for all Project Group notifier edit actions.
+ * 
+ * @author <a href='mailto:rahul.thakur.xdev@gmail.com'>Rahul Thakur</a>
+ * @version $Id$
+ */
+public abstract class AbstractGroupNotifierEditAction
+    extends AbstractNotifierEditActionSupport
+{
+
+    /**
+     * {@link ProjectGroup} identifier for which the notifier is being edited.
+     */
+    private int projectGroupId;
+
+    /** 
+     * Creates or updates the {@link ProjectNotifier} instance for the 
+     * {@link ProjectGroup} here.<p>
+     * This is used by the subclasses that create/obtain an instance of 
+     * {@link ProjectNotifier} to be saved.
+     * 
+     * @see org.apache.maven.continuum.web.action.notifier.AbstractNotifierEditActionSupport#saveNotifier(ProjectNotifier)
+     */
+    protected void saveNotifier( ProjectNotifier notifier )
+        throws ContinuumException
+    {
+        boolean isNew = notifier.getId() <= 0;
+        if ( !isNew )
+        {            
+            getContinuum().updateGroupNotifier( projectGroupId, notifier );
+        }
+        else
+        {         
+            getContinuum().addGroupNotifier( projectGroupId, notifier );
+        }
+    }
+
+    /**
+     * @return the notifier
+     * @throws ContinuumException 
+     */
+    protected ProjectNotifier getNotifier()
+        throws ContinuumException
+    {
+        return getContinuum().getGroupNotifier( projectGroupId, getNotifierId() );
+    }
+
+    /**
+     * @return the projectGroupId
+     */
+    public int getProjectGroupId()
+    {
+        return projectGroupId;
+    }
+
+    /**
+     * @param projectGroupId the projectGroupId to set
+     */
+    public void setProjectGroupId( int projectGroupId )
+    {
+        this.projectGroupId = projectGroupId;
+    }
+
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractGroupNotifierEditAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractNotifierEditActionSupport.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractNotifierEditActionSupport.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractNotifierEditActionSupport.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractNotifierEditActionSupport.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,254 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+import java.util.Map;
+
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+import org.apache.maven.continuum.web.action.ContinuumActionSupport;
+
+/**
+ * Common base class that consolidates the common properties used by extending 
+ * <code>XXXEditAction</code> implementations and defines a contract expected of 
+ * the extending clases.
+ * 
+ * @author <a href='mailto:rahul.thakur.xdev@gmail.com'>Rahul Thakur</a>
+ * @version $Id$
+ * @since 1.1
+ */
+public abstract class AbstractNotifierEditActionSupport
+    extends ContinuumActionSupport
+{
+
+    /**
+     * Identifier for the {@link ProjectNotifier} instance being edited.
+     */
+    private int notifierId;
+
+    /**
+     * Type of {@link ProjectNotifier} tagged as a String value.
+     */
+    private String notifierType;
+
+    /**
+     * Detemines if the notifier should fire when build was successful.<p>
+     * <code>true</code> implies notifier executes on a successful build.
+     */
+    private boolean sendOnSuccess;
+
+    /**
+     * Detemines if the notifier should fire when build failed.<p>
+     * <code>true</code> implies notifier executes for a failed build.
+     */
+    private boolean sendOnFailure;
+
+    /**
+     * Detemines if the notifier should fire when build resulted in any error(s).<p>
+     * <code>true</code> implies notifier executes when any error(s) is/are detected 
+     * for the build.
+     */
+    private boolean sendOnError;
+
+    /**
+     * Detemines if the notifier should fire when build resulted in any warning(s).<p>
+     * <code>true</code> implies notifier executes when any warning(s) is/are detected 
+     * for the build.
+     */
+    private boolean sendOnWarning;
+
+    /**
+     * Obtain and return the {@link ProjectNotifier} instance for editing.
+     * @return {@link ProjectNotifier} instance.
+     * 
+     * @throws ContinuumException if there was error retrieving 
+     *              the target {@link ProjectNotifier} instance.
+     */
+    protected abstract ProjectNotifier getNotifier()
+        throws ContinuumException;
+
+    /**
+     * Persists update to the {@link ProjectNotifier} instance being edited.
+     * @param notifier {@link ProjectNotifier} to save.
+     * 
+     * @throws ContinuumException if there was an error saving the 
+     *                              {@link ProjectNotifier} instance.
+     */
+    protected abstract void saveNotifier( ProjectNotifier notifier )
+        throws ContinuumException;
+
+    /**
+     * Creates or updates {@link ProjectNotifier} instance.
+     * 
+     * @return result as String.
+     * @throws ContinuumException
+     */
+    public String save()
+        throws ContinuumException
+    {
+        ProjectNotifier notifier = getNotifier();
+
+        boolean isNew = ( notifier == null || getNotifierId() == 0 );
+
+        if ( isNew )
+        {
+            notifier = new ProjectNotifier();
+        }
+
+        notifier.setType( getNotifierType() );
+
+        notifier.setSendOnSuccess( isSendOnSuccess() );
+
+        notifier.setSendOnFailure( isSendOnFailure() );
+
+        notifier.setSendOnError( isSendOnError() );
+
+        notifier.setSendOnWarning( isSendOnWarning() );
+
+        setNotifierConfiguration( notifier );
+
+        saveNotifier( notifier );
+
+        return SUCCESS;
+    }
+
+    /**
+     * Obtains the {@link ProjectNotifier} instance for edit purposes.
+     * 
+     * @return result as String.
+     * @throws ContinuumException
+     */
+    public String edit()
+        throws ContinuumException
+    {
+        ProjectNotifier notifier = getNotifier();
+
+        if ( notifier == null )
+        {
+            notifier = new ProjectNotifier();
+        }
+
+        // setup Action fields 
+        setNotifierType( notifier.getType() );
+
+        setSendOnSuccess( notifier.isSendOnSuccess() );
+
+        setSendOnFailure( notifier.isSendOnFailure() );
+
+        setSendOnError( notifier.isSendOnError() );
+
+        setSendOnWarning( notifier.isSendOnWarning() );
+
+        initConfiguration( notifier.getConfiguration() );
+
+        return SUCCESS;
+    }
+
+    public int getNotifierId()
+    {
+        return notifierId;
+    }
+
+    /**
+     * @return the notifierType
+     */
+    public String getNotifierType()
+    {        
+        return notifierType;
+    }
+
+    /**
+     * @param notifierType the notifierType to set
+     */
+    public void setNotifierType( String notifierType )
+    {        
+        this.notifierType = notifierType;
+    }
+
+    /**
+     * @return the sendOnSuccess
+     */
+    public boolean isSendOnSuccess()
+    {
+        return sendOnSuccess;
+    }
+
+    /**
+     * @param sendOnSuccess the sendOnSuccess to set
+     */
+    public void setSendOnSuccess( boolean sendOnSuccess )
+    {
+        this.sendOnSuccess = sendOnSuccess;
+    }
+
+    /**
+     * @return the sendOnFailure
+     */
+    public boolean isSendOnFailure()
+    {
+        return sendOnFailure;
+    }
+
+    /**
+     * @param sendOnFailure the sendOnFailure to set
+     */
+    public void setSendOnFailure( boolean sendOnFailure )
+    {
+        this.sendOnFailure = sendOnFailure;
+    }
+
+    /**
+     * @return the sendOnError
+     */
+    public boolean isSendOnError()
+    {
+        return sendOnError;
+    }
+
+    /**
+     * @param sendOnError the sendOnError to set
+     */
+    public void setSendOnError( boolean sendOnError )
+    {
+        this.sendOnError = sendOnError;
+    }
+
+    /**
+     * @return the sendOnWarning
+     */
+    public boolean isSendOnWarning()
+    {
+        return sendOnWarning;
+    }
+
+    /**
+     * @param sendOnWarning the sendOnWarning to set
+     */
+    public void setSendOnWarning( boolean sendOnWarning )
+    {
+        this.sendOnWarning = sendOnWarning;
+    }
+
+    /**
+     * @param notifierId the notifierId to set
+     */
+    public void setNotifierId( int notifierId )
+    {
+        this.notifierId = notifierId;
+    }
+
+    /**
+     * Initialises the configuration map that the {@link ProjectNotifier} 
+     * instance is to be inited with.
+     * 
+     * @param configuration map of configuration key-value pairs.
+     */
+    protected abstract void initConfiguration( Map configuration );
+
+    /**
+     * Sets the configuration for the specified {@link ProjectNotifier} 
+     * instance.
+     * @param notifier
+     * @see #initConfiguration(Map)
+     */
+    protected abstract void setNotifierConfiguration( ProjectNotifier notifier );
+
+}
\ No newline at end of file

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractNotifierEditActionSupport.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractProjectNotifierEditAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractProjectNotifierEditAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractProjectNotifierEditAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractProjectNotifierEditAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,86 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-2006 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.
+ */
+
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.model.project.Project;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: AbstractNotifierEditAction.java 467122 2006-10-23 20:50:19Z jmcconnell $
+ */
+public abstract class AbstractProjectNotifierEditAction
+    extends AbstractNotifierEditActionSupport
+{
+
+    /**
+     * Identifier for the {@link Project} who's {@link ProjectNotifier} is being edited.
+     */
+    private int projectId;
+
+    /**
+     * Save the notifier for the {@link Project} here.<p>
+     * This is used by the subclasses that create/obtain an instance of 
+     * {@link ProjectNotifier} to be saved.
+     * 
+     * @see org.apache.maven.continuum.web.action.notifier.AbstractNotifierEditActionSupport#saveNotifier(ProjectNotifier)
+     */
+    protected void saveNotifier( ProjectNotifier notifier )
+        throws ContinuumException
+    {
+        boolean isNew = notifier.getId() <= 0;
+        if ( !isNew )
+        {
+            getContinuum().updateNotifier( projectId, notifier );
+        }
+        else
+        {
+            getContinuum().addNotifier( projectId, notifier );
+        }
+    }
+
+    /**
+     * @see org.apache.maven.continuum.web.action.notifier.AbstractNotifierEditActionSupport#getNotifier()
+     */
+    protected ProjectNotifier getNotifier()
+        throws ContinuumException
+    {
+        return getContinuum().getNotifier( projectId, getNotifierId() );
+    }
+
+    /**
+     * Returns the identifier for the current project.
+     * 
+     * @return current project's id.
+     */
+    public int getProjectId()
+    {
+        return projectId;
+    }
+
+    /**
+     * Sets the id of the current project for this action.
+     * 
+     * @param projectId current project's id.
+     */
+    public void setProjectId( int projectId )
+    {
+        this.projectId = projectId;
+    }
+
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AbstractProjectNotifierEditAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddGroupNotifierAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddGroupNotifierAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddGroupNotifierAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddGroupNotifierAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,89 @@
+/**
+ * 
+ */
+package org.apache.maven.continuum.web.action.notifier;
+
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+import org.apache.maven.continuum.web.action.ContinuumActionSupport;
+
+/**
+ * WW action that sets up a new {@link ProjectNotifier} instance for 
+ * the specified {@link ProjectGroup}.
+ * 
+ * @author <a href='mailto:rahul.thakur.xdev@gmail.com'>Rahul Thakur</a>
+ * @version $Id$
+ * @since 1.1
+ * @plexus.component 
+ *   role="com.opensymphony.xwork.Action" 
+ *   role-hint="addGroupNotifier"
+ */
+public class AddGroupNotifierAction
+    extends ContinuumActionSupport
+{
+
+    /**
+     * Target {@link ProjectGroup} instance to add the Notifier for.
+     */
+    private int projectGroupId;
+
+    /**
+     * String based type identifier for the {@link ProjectNotifier}.
+     */
+    private String notifierType;
+
+    /**
+     * Default action method executed in case no method is specified 
+     * for invocation.
+     * @return a String result that determines the control flow.
+     */
+    public String execute()
+    {
+        return notifierType + "_" + INPUT;
+    }
+
+    public String doDefault()
+    {
+        return INPUT;
+    }
+
+    /**
+     * Returns the type identifier for the {@link ProjectNotifier} being 
+     * edited as String.
+     * 
+     * @return notifier type as String.
+     */
+    public String getNotifierType()
+    {
+        return notifierType;
+    }
+
+    /**
+     * Sets the notifier type for the {@link ProjectNotifier} instance 
+     * being edited.
+     * @param notifierType notifier type to set.
+     */
+    public void setNotifierType( String notifierType )
+    {
+        this.notifierType = notifierType;
+    }
+
+    /**
+     * Returns the current {@link ProjectGroup} Identifier.
+     * @return the projectGroupId
+     */
+    public int getProjectGroupId()
+    {
+        return projectGroupId;
+    }
+
+    /**
+     * Sets the Id for the target {@link ProjectGroup}.
+     * @param projectGroupId the projectGroupId to set
+     */
+    public void setProjectGroupId( int projectGroupId )
+    {
+        this.projectGroupId = projectGroupId;
+    }
+
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddGroupNotifierAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddProjectNotifierAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddProjectNotifierAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddProjectNotifierAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddProjectNotifierAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,105 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+import org.apache.maven.continuum.model.project.Project;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+import org.apache.maven.continuum.web.action.ContinuumActionSupport;
+
+/*
+ * Copyright 2004-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.
+ */
+
+/**
+ * Action to add a {@link ProjectNotifier} for a specified {@link Project}.
+ * 
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: AddNotifierAction.java 466640 2006-10-22 13:11:30Z jmcconnell $
+ * @since 1.1
+ *
+ * @plexus.component 
+ *   role="com.opensymphony.xwork.Action" 
+ *   role-hint="addProjectNotifier"
+ */
+public class AddProjectNotifierAction
+    extends ContinuumActionSupport
+{
+    /**
+     * Identifier for the {@link Project} instance.
+     */
+    private int projectId;
+
+    /**
+     * Type for a {@link ProjectNotifier}.
+     */
+    private String notifierType;
+
+    /**
+     * Default method executed when no specific method is specified
+     * for invocation.
+     * @return result as a String value to determines the control flow.
+     */
+    public String execute()
+    {
+        return notifierType + "_" + INPUT;
+    }
+
+    /**
+     * TODO: document!
+     */
+    public String doDefault()
+    {
+        return INPUT;
+    }
+
+    /**
+     * Returns the type for the {@link ProjectNotifier}.
+     * @return Notifier type as String.
+     */
+    public String getNotifierType()
+    {
+        return notifierType;
+    }
+
+    /**
+     * Sets the type for the {@link ProjectNotifier}.
+     * 
+     * @param notifierType Notifier type to set.
+     */
+    public void setNotifierType( String notifierType )
+    {
+        this.notifierType = notifierType;
+    }
+
+    /**
+     * Identifier for the Project being edited.
+     * 
+     * @return project id.
+     */
+    public int getProjectId()
+    {
+        return projectId;
+    }
+
+    /**
+     * Sets the identifier for the Project to be edited for 
+     * project notifiers.
+     * 
+     * @param projectId
+     */
+    public void setProjectId( int projectId )
+    {
+        this.projectId = projectId;
+    }
+
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/AddProjectNotifierAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteGroupNotifierAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteGroupNotifierAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteGroupNotifierAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteGroupNotifierAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,93 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-2006 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.
+ */
+
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+import org.apache.maven.continuum.web.action.ContinuumActionSupport;
+
+/**
+ * Action to delete a {@link ProjectNotifier} instance from a 
+ * specified {@link ProjectGroup}.
+ * 
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: DeleteNotifierAction.java 467122 2006-10-23 20:50:19Z jmcconnell $
+ * @since 1.1
+ * @plexus.component 
+ *   role="com.opensymphony.xwork.Action"  
+ *   role-hint="deleteGroupNotifier"
+ */
+public class DeleteGroupNotifierAction
+    extends ContinuumActionSupport
+{
+
+    private int projectGroupId;
+
+    private int notifierId;
+
+    private String notifierType;
+
+    public String execute()
+        throws ContinuumException
+    {
+        getContinuum().removeGroupNotifier( projectGroupId, notifierId );
+        return SUCCESS;
+    }
+
+    public String doDefault()
+    {
+        return "delete";
+    }
+
+    public void setNotifierId( int notifierId )
+    {
+        this.notifierId = notifierId;
+    }
+
+    public int getNotifierId()
+    {
+        return notifierId;
+    }
+
+    public void setNotifierType( String notifierType )
+    {
+        this.notifierType = notifierType;
+    }
+
+    public String getNotifierType()
+    {
+        return notifierType;
+    }
+
+    /**
+     * @return the projectGroupId
+     */
+    public int getProjectGroupId()
+    {
+        return projectGroupId;
+    }
+
+    /**
+     * @param projectGroupId the projectGroupId to set
+     */
+    public void setProjectGroupId( int projectGroupId )
+    {
+        this.projectGroupId = projectGroupId;
+    }
+
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteGroupNotifierAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteProjectNotifierAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteProjectNotifierAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteProjectNotifierAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteProjectNotifierAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,87 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-2006 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.
+ */
+
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+import org.apache.maven.continuum.web.action.ContinuumActionSupport;
+
+/**
+ * Action that deletes a {@link ProjectNotifier} of type 'IRC' from the 
+ * specified {@link ProjectGroup}.
+ * 
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: DeleteNotifierAction.java 467122 2006-10-23 20:50:19Z jmcconnell $
+ *
+ * @plexus.component
+ *   role="com.opensymphony.xwork.Action"
+ *   role-hint="deleteProjectNotifier"
+ */
+public class DeleteProjectNotifierAction
+    extends ContinuumActionSupport
+{
+
+    private int projectId;
+
+    private int notifierId;
+
+    private String notifierType;
+
+    public String execute()
+        throws ContinuumException
+    {
+        getContinuum().removeNotifier( projectId, notifierId );
+        return SUCCESS;
+    }
+
+    public String doDefault()
+    {
+        return "delete";
+    }
+
+    public void setProjectId( int projectId )
+    {
+        this.projectId = projectId;
+    }
+
+    public int getProjectId()
+    {
+        return projectId;
+    }
+
+    public void setNotifierId( int notifierId )
+    {
+        this.notifierId = notifierId;
+    }
+
+    public int getNotifierId()
+    {
+        return notifierId;
+    }
+
+    public void setNotifierType( String notifierType )
+    {
+        this.notifierType = notifierType;
+    }
+
+    public String getNotifierType()
+    {
+        return notifierType;
+    }
+
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteProjectNotifierAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,148 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-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.
+ */
+
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Action that deletes a {@link ProjectNotifier} of type 'IRC' from the 
+ * specified {@link ProjectGroup}.
+ * 
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: IrcNotifierEditAction.java 465060 2006-10-17 21:24:38Z jmcconnell $
+ * @since 1.1
+ *
+ * @plexus.component
+ *   role="com.opensymphony.xwork.Action"
+ *   role-hint="ircGroupNotifierEdit"
+ */
+public class IrcGroupNotifierEditAction
+    extends AbstractGroupNotifierEditAction
+{
+    private String host;
+
+    private int port = 6667;
+
+    private String channel;
+
+    private String nick;
+
+    private String fullName;
+
+    private String password;
+
+    protected void initConfiguration( Map configuration )
+    {
+        host = (String) configuration.get( "host" );
+
+        if ( configuration.get( "port" ) != null )
+        {
+            port = Integer.parseInt( (String) configuration.get( "port" ) );
+        }
+
+        channel = (String) configuration.get( "channel" );
+
+        nick = (String) configuration.get( "nick" );
+
+        fullName = (String) configuration.get( "fullName" );
+
+        password = (String) configuration.get( "password" );
+    }
+
+    protected void setNotifierConfiguration( ProjectNotifier notifier )
+    {
+        HashMap configuration = new HashMap();
+
+        configuration.put( "host", host );
+
+        configuration.put( "port", String.valueOf( port ) );
+
+        configuration.put( "channel", channel );
+
+        configuration.put( "nick", nick );
+
+        configuration.put( "fullName", fullName );
+
+        configuration.put( "password", password );
+
+        notifier.setConfiguration( configuration );
+    }
+
+    public String getHost()
+    {
+        return host;
+    }
+
+    public void setHost( String host )
+    {
+        this.host = host;
+    }
+
+    public int getPort()
+    {
+        return port;
+    }
+
+    public void setPort( int port )
+    {
+        this.port = port;
+    }
+
+    public String getChannel()
+    {
+        return channel;
+    }
+
+    public void setChannel( String channel )
+    {
+        this.channel = channel;
+    }
+
+    public String getNick()
+    {
+        return nick;
+    }
+
+    public void setNick( String nick )
+    {
+        this.nick = nick;
+    }
+
+    public String getFullName()
+    {
+        return fullName;
+    }
+
+    public void setFullName( String fullName )
+    {
+        this.fullName = fullName;
+    }
+
+    public String getPassword()
+    {
+        return password;
+    }
+
+    public void setPassword( String password )
+    {
+        this.password = password;
+    }
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.java
------------------------------------------------------------------------------
    svn:executable = *

Copied: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.java (from r469213, maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcNotifierEditAction.java)
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.java?view=diff&rev=469244&p1=maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcNotifierEditAction.java&r1=469213&p2=maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.java&r2=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcNotifierEditAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.java Mon Oct 30 11:31:00 2006
@@ -1,144 +1,143 @@
-package org.apache.maven.continuum.web.action.notifier;
-
-/*
- * Copyright 2004-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.
- */
-
-import org.apache.maven.continuum.model.project.ProjectNotifier;
-import org.apache.maven.continuum.web.action.notifier.AbstractNotifierEditAction;
-
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
- * @version $Id$
- *
- * @plexus.component
- *   role="com.opensymphony.xwork.Action"
- *   role-hint="ircNotifierEdit"
- */
-public class IrcNotifierEditAction
-    extends AbstractNotifierEditAction
-{
-    private String host;
-
-    private int port = 6667;
-
-    private String channel;
-
-    private String nick;
-
-    private String fullName;
-
-    private String password;
-
-    protected void initConfiguration( Map configuration )
-    {
-        host = (String) configuration.get( "host" );
-
-        if ( configuration.get( "port" ) != null )
-        {
-            port = Integer.parseInt( (String) configuration.get( "port" ) );
-        }
-
-        channel = (String) configuration.get( "channel" );
-
-        nick = (String) configuration.get( "nick" );
-
-        fullName = (String) configuration.get( "fullName" );
-
-        password = (String) configuration.get( "password" );
-    }
-
-    protected void setNotifierConfiguration( ProjectNotifier notifier )
-    {
-        HashMap configuration = new HashMap();
-
-        configuration.put( "host", host );
-
-        configuration.put( "port", String.valueOf( port ) );
-
-        configuration.put( "channel", channel );
-
-        configuration.put( "nick", nick );
-
-        configuration.put( "fullName", fullName );
-
-        configuration.put( "password", password );
-
-        notifier.setConfiguration( configuration );
-    }
-
-    public String getHost()
-    {
-        return host;
-    }
-
-    public void setHost( String host )
-    {
-        this.host = host;
-    }
-
-    public int getPort()
-    {
-        return port;
-    }
-
-    public void setPort( int port )
-    {
-        this.port = port;
-    }
-
-    public String getChannel()
-    {
-        return channel;
-    }
-
-    public void setChannel( String channel )
-    {
-        this.channel = channel;
-    }
-
-    public String getNick()
-    {
-        return nick;
-    }
-
-    public void setNick( String nick )
-    {
-        this.nick = nick;
-    }
-
-    public String getFullName()
-    {
-        return fullName;
-    }
-
-    public void setFullName( String fullName )
-    {
-        this.fullName = fullName;
-    }
-
-    public String getPassword()
-    {
-        return password;
-    }
-
-    public void setPassword( String password )
-    {
-        this.password = password;
-    }
-}
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-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.
+ */
+
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: IrcNotifierEditAction.java 465060 2006-10-17 21:24:38Z jmcconnell $
+ *
+ * @plexus.component
+ *   role="com.opensymphony.xwork.Action"
+ *   role-hint="ircProjectNotifierEdit"
+ */
+public class IrcProjectNotifierEditAction
+    extends AbstractGroupNotifierEditAction
+{
+    private String host;
+
+    private int port = 6667;
+
+    private String channel;
+
+    private String nick;
+
+    private String fullName;
+
+    private String password;
+
+    protected void initConfiguration( Map configuration )
+    {
+        host = (String) configuration.get( "host" );
+
+        if ( configuration.get( "port" ) != null )
+        {
+            port = Integer.parseInt( (String) configuration.get( "port" ) );
+        }
+
+        channel = (String) configuration.get( "channel" );
+
+        nick = (String) configuration.get( "nick" );
+
+        fullName = (String) configuration.get( "fullName" );
+
+        password = (String) configuration.get( "password" );
+    }
+
+    protected void setNotifierConfiguration( ProjectNotifier notifier )
+    {
+        HashMap configuration = new HashMap();
+
+        configuration.put( "host", host );
+
+        configuration.put( "port", String.valueOf( port ) );
+
+        configuration.put( "channel", channel );
+
+        configuration.put( "nick", nick );
+
+        configuration.put( "fullName", fullName );
+
+        configuration.put( "password", password );
+
+        notifier.setConfiguration( configuration );
+    }
+
+    public String getHost()
+    {
+        return host;
+    }
+
+    public void setHost( String host )
+    {
+        this.host = host;
+    }
+
+    public int getPort()
+    {
+        return port;
+    }
+
+    public void setPort( int port )
+    {
+        this.port = port;
+    }
+
+    public String getChannel()
+    {
+        return channel;
+    }
+
+    public void setChannel( String channel )
+    {
+        this.channel = channel;
+    }
+
+    public String getNick()
+    {
+        return nick;
+    }
+
+    public void setNick( String nick )
+    {
+        this.nick = nick;
+    }
+
+    public String getFullName()
+    {
+        return fullName;
+    }
+
+    public void setFullName( String fullName )
+    {
+        this.fullName = fullName;
+    }
+
+    public String getPassword()
+    {
+        return password;
+    }
+
+    public void setPassword( String password )
+    {
+        this.password = password;
+    }
+}

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,180 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-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.
+ */
+
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Action that deletes a {@link ProjectNotifier} of type 'Jabber' from the 
+ * specified {@link ProjectGroup}.
+ * 
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: JabberNotifierEditAction.java 465060 2006-10-17 21:24:38Z jmcconnell $
+ * @since 1.1
+ * 
+ * @plexus.component
+ *   role="com.opensymphony.xwork.Action"
+ *   role-hint="jabberGroupNotifierEdit"
+ */
+public class JabberGroupNotifierEditAction
+    extends AbstractGroupNotifierEditAction
+{
+    private String host;
+
+    private int port = 5222;
+
+    private String login;
+
+    private String password;
+
+    private String domainName;
+
+    private String address;
+
+    private boolean sslConnection;
+
+    private boolean group;
+
+    protected void initConfiguration( Map configuration )
+    {
+        host = (String) configuration.get( "host" );
+
+        if ( configuration.get( "port" ) != null )
+        {
+            port = Integer.parseInt( (String) configuration.get( "port" ) );
+        }
+
+        login = (String) configuration.get( "login" );
+
+        password = (String) configuration.get( "password" );
+
+        domainName = (String) configuration.get( "domainName" );
+
+        address = (String) configuration.get( "address" );
+
+        sslConnection = Boolean.valueOf( (String) configuration.get( "sslConnection" ) ).booleanValue();
+
+        group = Boolean.valueOf( (String) configuration.get( "isGroup" ) ).booleanValue();
+    }
+
+    protected void setNotifierConfiguration( ProjectNotifier notifier )
+    {
+        HashMap configuration = new HashMap();
+
+        configuration.put( "host", host );
+
+        configuration.put( "port", String.valueOf( port ) );
+
+        configuration.put( "login", login );
+
+        configuration.put( "password", password );
+
+        configuration.put( "domainName", domainName );
+
+        configuration.put( "address", address );
+
+        configuration.put( "sslConnection", String.valueOf( sslConnection ) );
+
+        configuration.put( "isGroup", String.valueOf( group ) );
+
+        notifier.setConfiguration( configuration );
+    }
+
+    public String getHost()
+    {
+        return host;
+    }
+
+    public void setHost( String host )
+    {
+        this.host = host;
+    }
+
+    public int getPort()
+    {
+        return port;
+    }
+
+    public void setPort( int port )
+    {
+        this.port = port;
+    }
+
+    public String getLogin()
+    {
+        return login;
+    }
+
+    public void setLogin( String login )
+    {
+        this.login = login;
+    }
+
+    public String getPassword()
+    {
+        return password;
+    }
+
+    public void setPassword( String password )
+    {
+        this.password = password;
+    }
+
+    public String getDomainName()
+    {
+        return domainName;
+    }
+
+    public void setDomainName( String domainName )
+    {
+        this.domainName = domainName;
+    }
+
+    public String getAddress()
+    {
+        return address;
+    }
+
+    public void setAddress( String address )
+    {
+        this.address = address;
+    }
+
+    public boolean isSslConnection()
+    {
+        return sslConnection;
+    }
+
+    public void setSslConnection( boolean sslConnection )
+    {
+        this.sslConnection = sslConnection;
+    }
+
+    public boolean isGroup()
+    {
+        return group;
+    }
+
+    public void setGroup( boolean group )
+    {
+        this.group = group;
+    }
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberProjectNotifierEditAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberProjectNotifierEditAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberProjectNotifierEditAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberProjectNotifierEditAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,178 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-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.
+ */
+
+import org.apache.maven.continuum.model.project.Project;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Action that deletes a {@link ProjectNotifier} of type 'Jabber' from the 
+ * specified {@link Project}.
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: JabberNotifierEditAction.java 465060 2006-10-17 21:24:38Z jmcconnell $
+ *
+ * @plexus.component
+ *   role="com.opensymphony.xwork.Action"
+ *   role-hint="jabberProjectNotifierEdit"
+ */
+public class JabberProjectNotifierEditAction
+    extends AbstractProjectNotifierEditAction
+{
+    private String host;
+
+    private int port = 5222;
+
+    private String login;
+
+    private String password;
+
+    private String domainName;
+
+    private String address;
+
+    private boolean sslConnection;
+
+    private boolean group;
+
+    protected void initConfiguration( Map configuration )
+    {
+        host = (String) configuration.get( "host" );
+
+        if ( configuration.get( "port" ) != null )
+        {
+            port = Integer.parseInt( (String) configuration.get( "port" ) );
+        }
+
+        login = (String) configuration.get( "login" );
+
+        password = (String) configuration.get( "password" );
+
+        domainName = (String) configuration.get( "domainName" );
+
+        address = (String) configuration.get( "address" );
+
+        sslConnection = Boolean.valueOf( (String) configuration.get( "sslConnection" ) ).booleanValue();
+
+        group = Boolean.valueOf( (String) configuration.get( "isGroup" ) ).booleanValue();
+    }
+
+    protected void setNotifierConfiguration( ProjectNotifier notifier )
+    {
+        HashMap configuration = new HashMap();
+
+        configuration.put( "host", host );
+
+        configuration.put( "port", String.valueOf( port ) );
+
+        configuration.put( "login", login );
+
+        configuration.put( "password", password );
+
+        configuration.put( "domainName", domainName );
+
+        configuration.put( "address", address );
+
+        configuration.put( "sslConnection", String.valueOf( sslConnection ) );
+
+        configuration.put( "isGroup", String.valueOf( group ) );
+
+        notifier.setConfiguration( configuration );
+    }
+
+    public String getHost()
+    {
+        return host;
+    }
+
+    public void setHost( String host )
+    {
+        this.host = host;
+    }
+
+    public int getPort()
+    {
+        return port;
+    }
+
+    public void setPort( int port )
+    {
+        this.port = port;
+    }
+
+    public String getLogin()
+    {
+        return login;
+    }
+
+    public void setLogin( String login )
+    {
+        this.login = login;
+    }
+
+    public String getPassword()
+    {
+        return password;
+    }
+
+    public void setPassword( String password )
+    {
+        this.password = password;
+    }
+
+    public String getDomainName()
+    {
+        return domainName;
+    }
+
+    public void setDomainName( String domainName )
+    {
+        this.domainName = domainName;
+    }
+
+    public String getAddress()
+    {
+        return address;
+    }
+
+    public void setAddress( String address )
+    {
+        this.address = address;
+    }
+
+    public boolean isSslConnection()
+    {
+        return sslConnection;
+    }
+
+    public void setSslConnection( boolean sslConnection )
+    {
+        this.sslConnection = sslConnection;
+    }
+
+    public boolean isGroup()
+    {
+        return group;
+    }
+
+    public void setGroup( boolean group )
+    {
+        this.group = group;
+    }
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/JabberProjectNotifierEditAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,65 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-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.
+ */
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+
+/**
+ * Action that deletes a {@link ProjectNotifier} of type 'Mail' from the 
+ * specified {@link ProjectGroup}.
+ * 
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: MailNotifierEditAction.java 465060 2006-10-17 21:24:38Z jmcconnell $
+ * @since 1.1
+ * 
+ * @plexus.component
+ *   role="com.opensymphony.xwork.Action"
+ *   role-hint="mailGroupNotifierEdit"
+ */
+public class MailGroupNotifierEditAction
+    extends AbstractGroupNotifierEditAction
+{
+    private String address;
+
+    protected void initConfiguration( Map configuration )
+    {
+        address = (String) configuration.get( "address" );
+    }
+
+    protected void setNotifierConfiguration( ProjectNotifier notifier )
+    {
+        HashMap configuration = new HashMap();
+
+        configuration.put( "address", address );
+
+        notifier.setConfiguration( configuration );
+    }
+
+    public String getAddress()
+    {
+        return address;
+    }
+
+    public void setAddress( String address )
+    {
+        this.address = address;
+    }
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailGroupNotifierEditAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,65 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-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.
+ */
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.maven.continuum.model.project.Project;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+
+/**
+ * Action that deletes a {@link ProjectNotifier} of type 'Mail' from the 
+ * specified {@link Project}.
+ * 
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: MailNotifierEditAction.java 465060 2006-10-17 21:24:38Z jmcconnell $
+ * @since 1.1
+ * 
+ * @plexus.component
+ *   role="com.opensymphony.xwork.Action"
+ *   role-hint="mailProjectNotifierEdit"
+ */
+public class MailProjectNotifierEditAction
+    extends AbstractProjectNotifierEditAction
+{
+    private String address;
+
+    protected void initConfiguration( Map configuration )
+    {
+        address = (String) configuration.get( "address" );
+    }
+
+    protected void setNotifierConfiguration( ProjectNotifier notifier )
+    {
+        HashMap configuration = new HashMap();
+
+        configuration.put( "address", address );
+
+        notifier.setConfiguration( configuration );
+    }
+
+    public String getAddress()
+    {
+        return address;
+    }
+
+    public void setAddress( String address )
+    {
+        this.address = address;
+    }
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MailProjectNotifierEditAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnGroupNotifierEditAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnGroupNotifierEditAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnGroupNotifierEditAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnGroupNotifierEditAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,96 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-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.
+ */
+
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Action that deletes a {@link ProjectNotifier} of type 'MSN' from the 
+ * specified {@link ProjectGroup}.
+ * 
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: MsnNotifierEditAction.java 465060 2006-10-17 21:24:38Z jmcconnell $
+ *
+ * @plexus.component
+ *   role="com.opensymphony.xwork.Action"
+ *   role-hint="msnGroupNotifierEdit"
+ */
+public class MsnGroupNotifierEditAction
+    extends AbstractGroupNotifierEditAction
+{
+    private String login;
+
+    private String password;
+
+    private String address;
+
+    protected void initConfiguration( Map configuration )
+    {
+        login = (String) configuration.get( "login" );
+
+        password = (String) configuration.get( "password" );
+
+        address = (String) configuration.get( "address" );
+    }
+
+    protected void setNotifierConfiguration( ProjectNotifier notifier )
+    {
+        HashMap configuration = new HashMap();
+
+        configuration.put( "login", login );
+
+        configuration.put( "password", password );
+
+        configuration.put( "address", address );
+
+        notifier.setConfiguration( configuration );
+    }
+
+    public String getLogin()
+    {
+        return login;
+    }
+
+    public void setLogin( String login )
+    {
+        this.login = login;
+    }
+
+    public String getPassword()
+    {
+        return password;
+    }
+
+    public void setPassword( String password )
+    {
+        this.password = password;
+    }
+
+    public String getAddress()
+    {
+        return address;
+    }
+
+    public void setAddress( String address )
+    {
+        this.address = address;
+    }
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnGroupNotifierEditAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnProjectNotifierEditAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnProjectNotifierEditAction.java?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnProjectNotifierEditAction.java (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnProjectNotifierEditAction.java Mon Oct 30 11:31:00 2006
@@ -0,0 +1,97 @@
+package org.apache.maven.continuum.web.action.notifier;
+
+/*
+ * Copyright 2004-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.
+ */
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.maven.continuum.model.project.Project;
+import org.apache.maven.continuum.model.project.ProjectNotifier;
+
+/**
+ * Action that deletes a {@link ProjectNotifier} of type 'MSN' from the 
+ * specified {@link Project}.
+ * 
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: MsnNotifierEditAction.java 465060 2006-10-17 21:24:38Z jmcconnell $
+ * @since 1.1
+ * 
+ * @plexus.component
+ *   role="com.opensymphony.xwork.Action"
+ *   role-hint="msnProjectNotifierEdit"
+ */
+public class MsnProjectNotifierEditAction
+    extends AbstractProjectNotifierEditAction
+{
+    private String login;
+
+    private String password;
+
+    private String address;
+
+    protected void initConfiguration( Map configuration )
+    {
+        login = (String) configuration.get( "login" );
+
+        password = (String) configuration.get( "password" );
+
+        address = (String) configuration.get( "address" );
+    }
+
+    protected void setNotifierConfiguration( ProjectNotifier notifier )
+    {
+        HashMap configuration = new HashMap();
+
+        configuration.put( "login", login );
+
+        configuration.put( "password", password );
+
+        configuration.put( "address", address );
+
+        notifier.setConfiguration( configuration );
+    }
+
+    public String getLogin()
+    {
+        return login;
+    }
+
+    public void setLogin( String login )
+    {
+        this.login = login;
+    }
+
+    public String getPassword()
+    {
+        return password;
+    }
+
+    public void setPassword( String password )
+    {
+        this.password = password;
+    }
+
+    public String getAddress()
+    {
+        return address;
+    }
+
+    public void setAddress( String address )
+    {
+        this.address = address;
+    }
+}

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/MsnProjectNotifierEditAction.java
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction-ircProjectGroupNotifierSave-validation.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction-ircProjectGroupNotifierSave-validation.xml?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction-ircProjectGroupNotifierSave-validation.xml (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction-ircProjectGroupNotifierSave-validation.xml Mon Oct 30 11:31:00 2006
@@ -0,0 +1,27 @@
+<!DOCTYPE validators PUBLIC
+    "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
+    "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
+
+<!-- TODO: there was a problem with getting the message values from the properties file so
+    the error messages were just specified here -->
+<validators>
+  <field name="host">
+    <field-validator type="required">
+      <message>Host is required</message>
+      <!--message key="ircNotifier.host.required"/-->
+    </field-validator>
+  </field>
+  <field name="port">
+    <field-validator type="regex">
+      <param name="expression"><![CDATA[([0-9])]]></param>
+      <message>Port must be an integer</message>
+      <!--message key="ircNotifier.port.invalid"/-->
+    </field-validator>
+  </field>
+  <field name="channel">
+    <field-validator type="required">
+      <message>Channel is required</message>
+      <!--message key="ircNotifier.channel.required"/-->
+    </field-validator>
+  </field>
+</validators>
\ No newline at end of file

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction-ircProjectGroupNotifierSave-validation.xml
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.properties
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.properties?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.properties (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.properties Mon Oct 30 11:31:00 2006
@@ -0,0 +1,3 @@
+ircNotifier.host.required = Host is required
+ircNotifier.port.invalid = Port must be an integer
+ircNotifier.channel.required = Channel is required
\ No newline at end of file

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcGroupNotifierEditAction.properties
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction-ircProjectNotifierSave-validation.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction-ircProjectNotifierSave-validation.xml?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction-ircProjectNotifierSave-validation.xml (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction-ircProjectNotifierSave-validation.xml Mon Oct 30 11:31:00 2006
@@ -0,0 +1,27 @@
+<!DOCTYPE validators PUBLIC
+    "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
+    "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
+
+<!-- TODO: there was a problem with getting the message values from the properties file so
+    the error messages were just specified here -->
+<validators>
+  <field name="host">
+    <field-validator type="required">
+      <message>Host is required</message>
+      <!--message key="ircNotifier.host.required"/-->
+    </field-validator>
+  </field>
+  <field name="port">
+    <field-validator type="regex">
+      <param name="expression"><![CDATA[([0-9])]]></param>
+      <message>Port must be an integer</message>
+      <!--message key="ircNotifier.port.invalid"/-->
+    </field-validator>
+  </field>
+  <field name="channel">
+    <field-validator type="required">
+      <message>Channel is required</message>
+      <!--message key="ircNotifier.channel.required"/-->
+    </field-validator>
+  </field>
+</validators>
\ No newline at end of file

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction-ircProjectNotifierSave-validation.xml
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.properties
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.properties?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.properties (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.properties Mon Oct 30 11:31:00 2006
@@ -0,0 +1,3 @@
+ircNotifier.host.required = Host is required
+ircNotifier.port.invalid = Port must be an integer
+ircNotifier.channel.required = Channel is required
\ No newline at end of file

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/IrcProjectNotifierEditAction.properties
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction-jabberProjectGroupNotifierSave-validation.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction-jabberProjectGroupNotifierSave-validation.xml?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction-jabberProjectGroupNotifierSave-validation.xml (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction-jabberProjectGroupNotifierSave-validation.xml Mon Oct 30 11:31:00 2006
@@ -0,0 +1,40 @@
+<!DOCTYPE validators PUBLIC
+    "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
+    "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
+
+<!-- TODO: there was a problem with getting the message values from the properties file so
+    the error messages were just specified here -->
+
+<validators>
+  <field name="host">
+    <field-validator type="required">
+      <message>Host is required</message>
+      <!--message key="jabberNotifier.host.required"/-->
+    </field-validator>
+  </field>
+  <field name="port">
+    <field-validator type="regex">
+      <param name="expression"><![CDATA[([0-9])]]></param>
+      <message>Port must be an integer</message>
+      <!--message key="jabberNotifier.port.invalid"/-->
+    </field-validator>
+  </field>
+  <field name="login">
+    <field-validator type="required">
+      <message>Login is required</message>
+      <!--message key="jabberNotifier.login.required"/-->
+    </field-validator>
+  </field>
+  <field name="password">
+    <field-validator type="required">
+      <message>Password is required</message>
+      <!--message key="jabberNotifier.password.required"/-->
+    </field-validator>
+  </field>
+  <field name="address">
+    <field-validator type="required">
+      <message>Address is required</message>
+      <!--message key="jabberNotifier.address.required"/-->
+    </field-validator>
+  </field>
+</validators>
\ No newline at end of file

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction-jabberProjectGroupNotifierSave-validation.xml
------------------------------------------------------------------------------
    svn:executable = *

Added: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.properties
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.properties?view=auto&rev=469244
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.properties (added)
+++ maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.properties Mon Oct 30 11:31:00 2006
@@ -0,0 +1,5 @@
+jabberNotifier.host.required = Host is required
+jabberNotifier.port.invalid = Port must be an integer
+jabberNotifier.login.required = Login is required
+jabberNotifier.password.required = Password is required
+jabberNotifier.address.required = Address is required
\ No newline at end of file

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

Propchange: maven/continuum/trunk/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/notifier/JabberGroupNotifierEditAction.properties
------------------------------------------------------------------------------
    svn:executable = *



Mime
View raw message