Index: src/main/java/org/apache/maven/continuum/web/action/DeleteNotifierAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/DeleteNotifierAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/DeleteNotifierAction.java (working copy)
@@ -18,16 +18,22 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="deleteNotification"
*/
public class DeleteNotifierAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private int projectId;
Index: src/main/java/org/apache/maven/continuum/web/action/AddScheduleAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/AddScheduleAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/AddScheduleAction.java (working copy)
@@ -19,15 +19,21 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.Schedule;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Nik Gonzalez
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="addSchedule"
*/
public class AddScheduleAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private boolean active = true;
Index: src/main/java/org/apache/maven/continuum/web/action/AddMavenOneProjectAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/AddMavenOneProjectAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/AddMavenOneProjectAction.java (working copy)
@@ -20,19 +20,25 @@
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.project.builder.ContinuumProjectBuildingResult;
import org.codehaus.plexus.util.StringUtils;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
import java.io.File;
import java.net.MalformedURLException;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Nick Gonzalez
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="addMavenOneProject"
*/
public class AddMavenOneProjectAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private String m1PomUrl;
Index: src/main/java/org/apache/maven/continuum/web/action/LoginAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/LoginAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/LoginAction.java (working copy)
@@ -1,5 +1,7 @@
package org.apache.maven.continuum.web.action;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
+
/*
* Copyright 2004-2005 The Apache Software Foundation.
*
@@ -16,20 +18,16 @@
* limitations under the License.
*/
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.servlet.http.HttpSession;
-
-import com.opensymphony.webwork.ServletActionContext;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="login"
*/
public class LoginAction
- extends ActionSupport
+ extends PlexusActionSupport
{
private String username = "";
Index: src/main/java/org/apache/maven/continuum/web/action/WorkingCopyAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/WorkingCopyAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/WorkingCopyAction.java (working copy)
@@ -19,10 +19,10 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.web.util.WorkingCopyContentGenerator;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
import com.opensymphony.webwork.ServletActionContext;
import com.opensymphony.webwork.views.util.UrlHelper;
-import com.opensymphony.xwork.ActionSupport;
import java.util.HashMap;
import java.util.List;
@@ -30,12 +30,22 @@
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="workingCopy"
*/
public class WorkingCopyAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
+ /**
+ * @plexus.requirement
+ */
private WorkingCopyContentGenerator generator;
private int projectId;
@@ -137,4 +147,4 @@
{
return currentFileContent;
}
-}
\ No newline at end of file
+}
Index: src/main/java/org/apache/maven/continuum/web/action/ProjectEditAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/ProjectEditAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/ProjectEditAction.java (working copy)
@@ -19,16 +19,22 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.Project;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="projectEdit"
*/
public class ProjectEditAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private Project project;
Index: src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionEditAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionEditAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionEditAction.java (working copy)
@@ -21,21 +21,27 @@
import org.apache.maven.continuum.model.project.BuildDefinition;
import org.apache.maven.continuum.model.project.Project;
import org.apache.maven.continuum.model.project.Schedule;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="buildDefinitionEdit"
*/
public class BuildDefinitionEditAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private BuildDefinition bd;
Index: src/main/java/org/apache/maven/continuum/web/action/AddProjectAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/AddProjectAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/AddProjectAction.java (working copy)
@@ -19,16 +19,22 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.Project;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Nick Gonzalez
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="addProject"
*/
public class AddProjectAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private String projectName;
Index: src/main/java/org/apache/maven/continuum/web/action/AddBuildDefinitionAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/AddBuildDefinitionAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/AddBuildDefinitionAction.java (working copy)
@@ -20,21 +20,27 @@
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.Project;
import org.apache.maven.continuum.model.project.Schedule;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="addBuildDefinition"
*/
public class AddBuildDefinitionAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private Project project;
Index: src/main/java/org/apache/maven/continuum/web/action/BuildProjectAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/BuildProjectAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/BuildProjectAction.java (working copy)
@@ -18,16 +18,22 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="buildProject"
*/
public class BuildProjectAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private int projectId;
@@ -66,4 +72,4 @@
{
return projectId;
}
-}
\ No newline at end of file
+}
Index: src/main/java/org/apache/maven/continuum/web/action/DeleteProjectAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/DeleteProjectAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/DeleteProjectAction.java (working copy)
@@ -18,16 +18,22 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="deleteProject"
*/
public class DeleteProjectAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private int projectId;
@@ -76,4 +82,4 @@
{
return projectName;
}
-}
\ No newline at end of file
+}
Index: src/main/java/org/apache/maven/continuum/web/action/DeleteBuildDefinitionAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/DeleteBuildDefinitionAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/DeleteBuildDefinitionAction.java (working copy)
@@ -18,16 +18,22 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="deleteBuildDefinition"
*/
public class DeleteBuildDefinitionAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private int projectId;
@@ -76,4 +82,4 @@
{
return buildDefinitionId;
}
-}
\ No newline at end of file
+}
Index: src/main/java/org/apache/maven/continuum/web/action/ScheduleAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/ScheduleAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/ScheduleAction.java (working copy)
@@ -16,20 +16,25 @@
* limitations under the License.
*/
-import java.util.Collection;
-
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
+import java.util.Collection;
/**
* @author Nik Gonzalez
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="schedule"
*/
public class ScheduleAction
- extends ActionSupport
+ extends PlexusActionSupport
{
-
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private Collection schedules;
Index: src/main/java/org/apache/maven/continuum/web/action/SummaryAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/SummaryAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/SummaryAction.java (working copy)
@@ -20,9 +20,8 @@
import org.apache.maven.continuum.model.project.BuildResult;
import org.apache.maven.continuum.model.project.Project;
import org.apache.maven.continuum.web.model.SummaryProjectModel;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
@@ -32,10 +31,17 @@
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="summary"
*/
public class SummaryAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private int nbSuccesses;
Index: src/main/java/org/apache/maven/continuum/web/action/ProjectViewAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/ProjectViewAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/ProjectViewAction.java (working copy)
@@ -19,16 +19,22 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.Project;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="projectView"
*/
public class ProjectViewAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private Project project;
Index: src/main/java/org/apache/maven/continuum/web/action/DeleteUserAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/DeleteUserAction.java (revision 0)
+++ src/main/java/org/apache/maven/continuum/web/action/DeleteUserAction.java (revision 0)
@@ -0,0 +1,83 @@
+package org.apache.maven.continuum.web.action;
+
+/*
+ * 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.Continuum;
+import org.apache.maven.continuum.ContinuumException;
+
+import org.codehaus.plexus.xwork.action.PlexusActionSupport
+
+/**
+ * @author Henry Isidro
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="deleteUser"
+ */
+public class DeleteUserAction
+ extends PlexusActionSupport
+{
+ private Continuum continuum;
+
+ private int accountId;
+
+ private String username;
+
+ public String execute()
+ throws Exception
+ {
+ try
+ {
+ continuum.removeUser( accountId );
+ }
+ catch ( ContinuumException e )
+ {
+ addActionMessage( "Can't delete user (id=" + accountId + ") : " + e.getMessage() );
+
+ e.printStackTrace();
+
+ return ERROR;
+ }
+
+ return SUCCESS;
+ }
+
+ public String doDelete()
+ {
+ return "delete";
+ }
+
+ public int getAccountId()
+ {
+ return accountId;
+ }
+
+ public void setAccountId( int accountId )
+ {
+ this.accountId = accountId;
+ }
+
+ public String getUsername()
+ {
+ return username;
+ }
+ public void setUsername( String username )
+ {
+ this.username = username;
+ }
+
+}
Property changes on: src/main/java/org/apache/maven/continuum/web/action/DeleteUserAction.java
___________________________________________________________________
Name: svn:keywords
+ "Author Date Id Revision"
Name: svn:eol-style
+ native
Index: src/main/java/org/apache/maven/continuum/web/action/UsersAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/UsersAction.java (revision 0)
+++ src/main/java/org/apache/maven/continuum/web/action/UsersAction.java (revision 0)
@@ -0,0 +1,63 @@
+package org.apache.maven.continuum.web.action;
+
+/*
+ * 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.Continuum;
+import org.apache.maven.continuum.ContinuumException;
+
+import java.util.Collection;
+
+import org.codehaus.plexus.xwork.action.PlexusActionSupport
+
+/**
+ * @author Henry Isidro
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="users"
+ */
+public class UsersAction
+ extends PlexusActionSupport
+{
+ private Continuum continuum;
+
+ private Collection users;
+
+ public String execute()
+ {
+ try
+ {
+ users = continuum.getUsers();
+ }
+ catch ( ContinuumException ce )
+ {
+ addActionError( "Can't get continuum users: " + ce.getMessage() );
+
+ ce.printStackTrace();
+
+ return ERROR;
+ }
+
+ return SUCCESS;
+ }
+
+ public Collection getUsers()
+ {
+ return users;
+ }
+
+}
Property changes on: src/main/java/org/apache/maven/continuum/web/action/UsersAction.java
___________________________________________________________________
Name: svn:keywords
+ "Author Date Id Revision"
Name: svn:eol-style
+ native
Index: src/main/java/org/apache/maven/continuum/web/action/EditScheduleAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/EditScheduleAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/EditScheduleAction.java (working copy)
@@ -19,16 +19,22 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.Schedule;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Nik Gonzalez
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="editSchedule"
*/
public class EditScheduleAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private Schedule schedule;
Index: src/main/java/org/apache/maven/continuum/web/action/MsnNotifierEditAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/MsnNotifierEditAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/MsnNotifierEditAction.java (working copy)
@@ -24,6 +24,10 @@
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="msnNotifierEdit"
*/
public class MsnNotifierEditAction
extends AbstractNotifierEditAction
Index: src/main/java/org/apache/maven/continuum/web/action/CheckConfigurationAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/CheckConfigurationAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/CheckConfigurationAction.java (working copy)
@@ -17,16 +17,22 @@
*/
import org.apache.maven.continuum.Continuum;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="checkConfiguration"
*/
public class CheckConfigurationAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
public String execute()
Index: src/main/java/org/apache/maven/continuum/web/action/ConfigurationAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/ConfigurationAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/ConfigurationAction.java (working copy)
@@ -16,22 +16,28 @@
* limitations under the License.
*/
+import com.opensymphony.xwork.Preparable;
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.configuration.ConfigurationStoringException;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
import java.io.File;
-import com.opensymphony.xwork.ActionSupport;
-import com.opensymphony.xwork.Preparable;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="configuration"
*/
public class ConfigurationAction
- extends ActionSupport
+ extends PlexusActionSupport
implements Preparable
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private boolean guestAccountEnabled;
Index: src/main/java/org/apache/maven/continuum/web/action/AddUserRoleAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/AddUserRoleAction.java (revision 0)
+++ src/main/java/org/apache/maven/continuum/web/action/AddUserRoleAction.java (revision 0)
@@ -0,0 +1,114 @@
+package org.apache.maven.continuum.web.action;
+
+/*
+ * 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.List;
+
+import org.apache.maven.continuum.Continuum;
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.model.system.ContinuumUser;
+import org.apache.maven.continuum.model.system.Permission;
+import org.apache.maven.continuum.store.ContinuumStore;
+
+import org.codehaus.plexus.xwork.action.PlexusActionSupport
+
+/**
+ * @author Teody Cue
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="addUserRole"
+ */
+public class AddUserRoleAction
+ extends PlexusActionSupport
+{
+
+ private Continuum continuum;
+
+ private ContinuumStore store;
+
+ private ContinuumUser user;
+
+ private List permissions;
+
+ private Permission permission;
+
+ private int accountId;
+
+ private String permissionName;
+
+ public String execute()
+ throws Exception
+ {
+ try
+ {
+ user = continuum.getUser( accountId );
+ permissions = store.getPermissions();
+ int i;
+ for ( i = 0; i < permissions.size(); i++ )
+ {
+ permission = (Permission) permissions.get( i );
+ if ( permission.getName().equalsIgnoreCase( permissionName ) )
+ {
+ break;
+ }
+ }
+ if ( i < permissions.size() )
+ {
+ user.getGroup().addPermission( permission );
+ continuum.updateUser( user );
+ }
+ else
+ {
+ addActionMessage( "Can't add user role (id=" + accountId + ", role=" + permissionName
+ + ") : Role does not exist." );
+ }
+ }
+ catch ( ContinuumException e )
+ {
+ addActionMessage( "Can't add user role (id=" + accountId + ", role=" + permissionName + ") : "
+ + e.getMessage() );
+
+ e.printStackTrace();
+
+ return ERROR;
+ }
+
+ return SUCCESS;
+ }
+
+ public int getAccountId()
+ {
+ return accountId;
+ }
+
+ public void setAccountId( int accountId )
+ {
+ this.accountId = accountId;
+ }
+
+ public String getPermissionName()
+ {
+ return permissionName;
+ }
+
+ public void setPermissionName( String permissionName )
+ {
+ this.permissionName = permissionName;
+ }
+
+}
\ No newline at end of file
Property changes on: src/main/java/org/apache/maven/continuum/web/action/AddUserRoleAction.java
___________________________________________________________________
Name: svn:keywords
+ "Author Date Id Revision"
Name: svn:eol-style
+ native
Index: src/main/java/org/apache/maven/continuum/web/action/AbstractNotifierEditAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/AbstractNotifierEditAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/AbstractNotifierEditAction.java (working copy)
@@ -19,17 +19,16 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.ProjectNotifier;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
import java.util.Map;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
*/
public abstract class AbstractNotifierEditAction
- extends ActionSupport
+ extends PlexusActionSupport
{
private Continuum continuum;
Index: src/main/java/org/apache/maven/continuum/web/action/BuildResultsListAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/BuildResultsListAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/BuildResultsListAction.java (working copy)
@@ -18,18 +18,24 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
-import com.opensymphony.xwork.ActionSupport;
-
import java.util.Collection;
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="buildResultsList"
*/
public class BuildResultsListAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private Collection buildResults;
@@ -80,4 +86,4 @@
{
return buildResults;
}
-}
\ No newline at end of file
+}
Index: src/main/java/org/apache/maven/continuum/web/action/IrcNotifierEditAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/IrcNotifierEditAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/IrcNotifierEditAction.java (working copy)
@@ -24,6 +24,10 @@
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="ircNotifierEdit"
*/
public class IrcNotifierEditAction
extends AbstractNotifierEditAction
Index: src/main/java/org/apache/maven/continuum/web/action/EditUserAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/EditUserAction.java (revision 0)
+++ src/main/java/org/apache/maven/continuum/web/action/EditUserAction.java (revision 0)
@@ -0,0 +1,396 @@
+package org.apache.maven.continuum.web.action;
+
+/*
+ * 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.ArrayList;
+import java.util.List;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.maven.continuum.Continuum;
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.model.system.ContinuumUser;
+import org.apache.maven.continuum.model.system.Permission;
+import org.apache.maven.continuum.model.system.UserGroup;
+import org.apache.maven.continuum.store.ContinuumStore;
+import org.apache.maven.continuum.store.ContinuumStoreException;
+
+import com.opensymphony.webwork.interceptor.ServletRequestAware;
+
+import org.codehaus.plexus.xwork.action.PlexusActionSupport
+
+/**
+ * @author Henry Isidro
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="editUser"
+ */
+public class EditUserAction
+ extends PlexusActionSupport
+ implements ServletRequestAware
+{
+
+ private ContinuumStore store;
+
+ private Continuum continuum;
+
+ private ContinuumUser user;
+
+ private UserGroup userGroup;
+
+ private List staticPermissions;
+
+ private List availablePermissions;
+
+ private Permission staticPermission;
+
+ private Permission permission;
+
+ private String permissionName;
+
+ private boolean addMode = false;
+
+ private int accountId;
+
+ private String username;
+
+ private String password;
+
+ private String email;
+
+ private List permissions;
+
+ private HttpServletRequest request;
+
+ public String execute()
+ throws Exception
+ {
+ permissions = (List) request.getSession().getAttribute( "permissions" );
+ try
+ {
+ username = username.substring( 0, username.indexOf( "," ) );
+ password = password.substring( 0, password.indexOf( "," ) );
+ email = email.substring( 0, email.indexOf( "," ) );
+ }
+ catch ( StringIndexOutOfBoundsException e )
+ {
+ }
+ if ( addMode )
+ {
+ try
+ {
+ userGroup = new UserGroup();
+ userGroup.setName( username );
+ userGroup.setPermissions( permissions );
+
+ user = new ContinuumUser();
+ user.setUsername( username );
+ user.setPassword( password );
+ user.setEmail( email );
+ user.setGroup( userGroup );
+ continuum.addUser( user );
+ }
+ catch ( ContinuumException e )
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+
+ return ERROR;
+ }
+ }
+ else
+ {
+ try
+ {
+ user = continuum.getUser( accountId );
+ user.setUsername( username );
+ user.setPassword( password );
+ user.setEmail( email );
+ user.getGroup().setPermissions( permissions );
+ }
+ catch ( ContinuumException e )
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+
+ return ERROR;
+ }
+
+ try
+ {
+ continuum.updateUser( user );
+ }
+ catch ( ContinuumException e )
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+
+ return ERROR;
+ }
+ }
+
+ request.getSession().removeAttribute( "addMode" );
+ request.getSession().removeAttribute( "accountId" );
+ request.getSession().removeAttribute( "username" );
+ request.getSession().removeAttribute( "password" );
+ request.getSession().removeAttribute( "email" );
+ request.getSession().removeAttribute( "permissions" );
+
+ return SUCCESS;
+ }
+
+ public String doAdd()
+ throws Exception
+ {
+ addMode = true;
+ return INPUT;
+ }
+
+ public String doEdit()
+ throws Exception
+ {
+ try
+ {
+ addMode = false;
+ user = continuum.getUser( accountId );
+ username = user.getUsername();
+ password = user.getPassword();
+ email = user.getEmail();
+ permissions = user.getGroup().getPermissions();
+ if ( permissions.size() == 1 )
+ {
+ permissionName = ( (Permission) permissions.get( 0 ) ).getName();
+ }
+ }
+ catch ( ContinuumException e )
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+
+ return ERROR;
+ }
+
+ return INPUT;
+ }
+
+ public String doGetAvailablePermissions()
+ throws Exception
+ {
+ try
+ {
+ int i, j;
+ availablePermissions = new ArrayList();
+ staticPermissions = store.getPermissions();
+ permissions = (List) request.getSession().getAttribute( "permissions" );
+ if ( permissions == null || permissions.size() == 0 )
+ {
+ availablePermissions.addAll( staticPermissions );
+ }
+ else
+ {
+ for ( i = 0; i < staticPermissions.size(); i++ )
+ {
+ staticPermission = (Permission) staticPermissions.get( i );
+ for ( j = 0; j < permissions.size(); j++ )
+ {
+ permission = (Permission) permissions.get( j );
+ if ( permission.getName().equalsIgnoreCase( staticPermission.getName() ) )
+ {
+ break;
+ }
+ }
+ if ( j >= permissions.size() )
+ {
+ availablePermissions.add( staticPermission );
+ }
+ }
+ }
+ }
+ catch ( ContinuumStoreException e )
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+
+ return ERROR;
+ }
+
+ request.getSession().setAttribute( "addMode", Boolean.valueOf( addMode ) );
+ request.getSession().setAttribute( "accountId", new Integer( accountId ) );
+ request.getSession().setAttribute( "username", username );
+ request.getSession().setAttribute( "password", password );
+ request.getSession().setAttribute( "email", email );
+
+ return "permissions";
+ }
+
+ public String doAddPermission()
+ throws Exception
+ {
+ try
+ {
+ staticPermissions = store.getPermissions();
+ int i, j;
+ for ( i = 0; i < staticPermissions.size(); i++ )
+ {
+ permission = (Permission) staticPermissions.get( i );
+ if ( permission.getName().equalsIgnoreCase( permissionName ) )
+ {
+ permissions = (List) request.getSession().getAttribute( "permissions" );
+ if ( permissions == null )
+ {
+ permissions = new ArrayList();
+ permissions.add( permission );
+ }
+ else
+ {
+ for ( j = 0; j < permissions.size(); j++ )
+ {
+ Permission permission = (Permission) permissions.get( j );
+ if ( permission.getName().equalsIgnoreCase( permissionName ) )
+ {
+ break;
+ }
+ }
+ if ( j >= permissions.size() )
+ {
+ permissions.add( permission );
+ }
+ }
+ if ( permissions.size() == 1 )
+ {
+ permissionName = ( (Permission) permissions.get( 0 ) ).getName();
+ }
+ break;
+ }
+ }
+ }
+ catch ( ContinuumStoreException e )
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+
+ return ERROR;
+ }
+
+ addMode = ( (Boolean) request.getSession().getAttribute( "addMode" ) ).booleanValue();
+ accountId = ( (Integer) request.getSession().getAttribute( "accountId" ) ).intValue();
+ username = (String) request.getSession().getAttribute( "username" );
+ password = (String) request.getSession().getAttribute( "password" );
+ email = (String) request.getSession().getAttribute( "email" );
+
+ return INPUT;
+ }
+
+ public String doDeletePermission()
+ throws Exception
+ {
+ int i = 0;
+ permissions = (List) request.getSession().getAttribute( "permissions" );
+ for ( ; i < permissions.size(); i++ )
+ {
+ permission = (Permission) permissions.get( i );
+ if ( permission.getName().equalsIgnoreCase( permissionName ) )
+ {
+ permissions.remove( i );
+ break;
+ }
+ if ( permissions.size() == 1 )
+ {
+ permissionName = ( (Permission) permissions.get( 0 ) ).getName();
+ }
+ }
+
+ return INPUT;
+ }
+
+ public List getAvailablePermissions()
+ {
+ return availablePermissions;
+ }
+
+ public String getPermissionName()
+ {
+ return permissionName;
+ }
+
+ public void setPermissionName( String permissionName )
+ {
+ this.permissionName = permissionName;
+ }
+
+ public boolean isAddMode()
+ {
+ return addMode;
+ }
+
+ public void setAddMode( boolean addMode )
+ {
+ this.addMode = addMode;
+ }
+
+ public int getAccountId()
+ {
+ return accountId;
+ }
+
+ public void setAccountId( int accountId )
+ {
+ this.accountId = accountId;
+ }
+
+ public String getUsername()
+ {
+ return username;
+ }
+
+ public void setUsername( String username )
+ {
+ this.username = username;
+ }
+
+ public String getPassword()
+ {
+ return password;
+ }
+
+ public void setPassword( String password )
+ {
+ this.password = password;
+ }
+
+ public String getEmail()
+ {
+ return email;
+ }
+
+ public void setEmail( String email )
+ {
+ this.email = email;
+ }
+
+ public List getPermissions()
+ {
+ return this.permissions;
+ }
+
+ public void setServletRequest( HttpServletRequest request )
+ {
+ this.request = request;
+ }
+
+}
\ No newline at end of file
Property changes on: src/main/java/org/apache/maven/continuum/web/action/EditUserAction.java
___________________________________________________________________
Name: svn:keywords
+ "Author Date Id Revision"
Name: svn:eol-style
+ native
Index: src/main/java/org/apache/maven/continuum/web/action/AddNotifierAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/AddNotifierAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/AddNotifierAction.java (working copy)
@@ -16,14 +16,16 @@
* limitations under the License.
*/
-import com.opensymphony.xwork.ActionSupport;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component role="com.opensymphony.xwork.Action" role-hint="addNotifierAction"
*/
public class AddNotifierAction
- extends ActionSupport
+ extends PlexusActionSupport
{
private int projectId;
Index: src/main/java/org/apache/maven/continuum/web/action/MailNotifierEditAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/MailNotifierEditAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/MailNotifierEditAction.java (working copy)
@@ -24,6 +24,10 @@
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="MailNotifierEdit"
*/
public class MailNotifierEditAction
extends AbstractNotifierEditAction
Index: src/main/java/org/apache/maven/continuum/web/action/JabberNotifierEditAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/JabberNotifierEditAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/JabberNotifierEditAction.java (working copy)
@@ -24,6 +24,10 @@
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="jabberNotifierEdit"
*/
public class JabberNotifierEditAction
extends AbstractNotifierEditAction
Index: src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java (working copy)
@@ -19,18 +19,25 @@
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.BuildResult;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
import java.util.List;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Emmanuel Venisse
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="buildResult"
*/
public class BuildResultAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private BuildResult buildResult;
Index: src/main/java/org/apache/maven/continuum/web/action/AddMavenTwoProjectAction.java
===================================================================
--- src/main/java/org/apache/maven/continuum/web/action/AddMavenTwoProjectAction.java (revision 422576)
+++ src/main/java/org/apache/maven/continuum/web/action/AddMavenTwoProjectAction.java (working copy)
@@ -20,19 +20,25 @@
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.project.builder.ContinuumProjectBuildingResult;
import org.codehaus.plexus.util.StringUtils;
+import org.codehaus.plexus.xwork.action.PlexusActionSupport;
import java.io.File;
import java.net.MalformedURLException;
-import com.opensymphony.xwork.ActionSupport;
-
/**
* @author Nick Gonzalez
* @version $Id$
+ *
+ * @plexus.component
+ * role="com.opensymphony.xwork.Action"
+ * role-hint="addMavenTwoProject"
*/
public class AddMavenTwoProjectAction
- extends ActionSupport
+ extends PlexusActionSupport
{
+ /**
+ * @plexus.requirement
+ */
private Continuum continuum;
private String m2PomUrl;
Index: src/main/resources/plexus-request.xml
===================================================================
--- src/main/resources/plexus-request.xml (revision 422576)
+++ src/main/resources/plexus-request.xml (working copy)
@@ -256,5 +256,38 @@
+
+ com.opensymphony.xwork.Action
+ users
+ org.apache.maven.continuum.web.action.UsersAction
+
+
+ org.apache.maven.continuum.Continuum
+
+
+
+
+ com.opensymphony.xwork.Action
+ editUser
+ org.apache.maven.continuum.web.action.EditUserAction
+
+
+ org.apache.maven.continuum.Continuum
+
+
+ org.apache.maven.continuum.store.ContinuumStore
+
+
+
+
+ com.opensymphony.xwork.Action
+ deleteUser
+ org.apache.maven.continuum.web.action.DeleteUserAction
+
+
+ org.apache.maven.continuum.Continuum
+
+
+
\ No newline at end of file
Index: src/main/resources/localization/Continuum.properties
===================================================================
--- src/main/resources/localization/Continuum.properties (revision 422576)
+++ src/main/resources/localization/Continuum.properties (working copy)
@@ -330,3 +330,6 @@
deleteUser.page.title = Continuum - Delete User
deleteUser.section.title = Delete User
deleteUser.confirmation.message = Are you sure you want to delete the user "{0}"?
+role.page.title = Continuum - Roles List
+role.section.title = Roles List
+role.rolename = Roles
Index: src/main/resources/xwork.xml
===================================================================
--- src/main/resources/xwork.xml (revision 422576)
+++ src/main/resources/xwork.xml (working copy)
@@ -184,5 +184,20 @@
schedules
+
+ users.jsp
+
+
+
+ editUser.jsp
+ addUserRole.jsp
+ users
+
+
+
+ deleteUser.jsp
+ users
+
+
Index: src/main/webapp/editUser.jsp
===================================================================
--- src/main/webapp/editUser.jsp (revision 422576)
+++ src/main/webapp/editUser.jsp (working copy)
@@ -1,30 +1,98 @@
<%@ taglib uri="/webwork" prefix="ww" %>
+<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>
<%@ taglib uri="continuum" prefix="c1" %>
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+ |
+
+
+
+
+
+
+
+ ">
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+