You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ev...@apache.org on 2007/02/22 17:00:46 UTC
svn commit: r510564 - in
/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action:
./ admin/ notifier/
Author: evenisse
Date: Thu Feb 22 08:00:45 2007
New Revision: 510564
URL: http://svn.apache.org/viewvc?view=rev&rev=510564
Log:
Remove more SecureAction implementation
Modified:
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ReleasePerformAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ReleasePrepareAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ScheduleAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/SurefireReportAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigurationAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/EditPomAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteGroupNotifierAction.java
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ReleasePerformAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ReleasePerformAction.java?view=diff&rev=510564&r1=510563&r2=510564
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ReleasePerformAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ReleasePerformAction.java Thu Feb 22 08:00:45 2007
@@ -28,7 +28,6 @@
import org.apache.maven.scm.provider.svn.repository.SvnScmProviderRepository;
import org.apache.maven.shared.release.ReleaseResult;
import org.apache.maven.shared.release.config.ReleaseDescriptor;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureAction;
import java.io.File;
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ReleasePrepareAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ReleasePrepareAction.java?view=diff&rev=510564&r1=510563&r2=510564
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ReleasePrepareAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ReleasePrepareAction.java Thu Feb 22 08:00:45 2007
@@ -32,7 +32,6 @@
import org.apache.maven.shared.release.ReleaseResult;
import org.apache.maven.shared.release.versions.DefaultVersionInfo;
import org.apache.maven.shared.release.versions.VersionInfo;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureAction;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.xml.Xpp3Dom;
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ScheduleAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ScheduleAction.java?view=diff&rev=510564&r1=510563&r2=510564
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ScheduleAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ScheduleAction.java Thu Feb 22 08:00:45 2007
@@ -20,11 +20,9 @@
*/
import org.apache.maven.continuum.ContinuumException;
-import org.apache.maven.continuum.security.ContinuumRoleConstants;
import org.apache.maven.continuum.model.project.Schedule;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureAction;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureActionBundle;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureActionException;
+import org.apache.maven.continuum.web.exception.AuthenticationRequiredException;
+import org.apache.maven.continuum.web.exception.AuthorizationRequiredException;
import java.util.Collection;
@@ -34,7 +32,6 @@
*/
public class ScheduleAction
extends ContinuumConfirmAction
- implements SecureAction
{
private int id;
@@ -71,6 +68,21 @@
public String summary()
throws ContinuumException
{
+ try
+ {
+ checkManageSchedulesAuthorization();
+ }
+ catch ( AuthorizationRequiredException authzE )
+ {
+ addActionError( authzE.getMessage() );
+ return REQUIRES_AUTHORIZATION;
+ }
+ catch ( AuthenticationRequiredException e )
+ {
+ addActionError( e.getMessage() );
+ return REQUIRES_AUTHENTICATION;
+ }
+
schedules = getContinuum().getSchedules();
return SUCCESS;
@@ -79,6 +91,21 @@
public String input()
throws ContinuumException
{
+ try
+ {
+ checkManageSchedulesAuthorization();
+ }
+ catch ( AuthorizationRequiredException authzE )
+ {
+ addActionError( authzE.getMessage() );
+ return REQUIRES_AUTHORIZATION;
+ }
+ catch ( AuthenticationRequiredException e )
+ {
+ addActionError( e.getMessage() );
+ return REQUIRES_AUTHENTICATION;
+ }
+
if ( id != 0 )
{
schedule = getContinuum().getSchedule( id );
@@ -113,10 +140,25 @@
public String save()
throws ContinuumException
{
- if ( ( "".equals( name ) ) || ( name == null ) )
+ try
+ {
+ checkManageSchedulesAuthorization();
+ }
+ catch ( AuthorizationRequiredException authzE )
+ {
+ addActionError( authzE.getMessage() );
+ return REQUIRES_AUTHORIZATION;
+ }
+ catch ( AuthenticationRequiredException e )
+ {
+ addActionError( e.getMessage() );
+ return REQUIRES_AUTHENTICATION;
+ }
+
+ if ( ( "".equals( name ) ) || ( name == null ) )
{
getLogger().error( "Can't create schedule. No schedule name was supplied." );
- addActionError( "buildDefinition.noname.save.error.message");
+ addActionError( "buildDefinition.noname.save.error.message" );
return ERROR;
}
else
@@ -130,7 +172,7 @@
{
getContinuum().updateSchedule( setFields( getContinuum().getSchedule( id ) ) );
return SUCCESS;
- }
+ }
}
}
@@ -149,6 +191,21 @@
public String confirm()
throws ContinuumException
{
+ try
+ {
+ checkManageSchedulesAuthorization();
+ }
+ catch ( AuthorizationRequiredException authzE )
+ {
+ addActionError( authzE.getMessage() );
+ return REQUIRES_AUTHORIZATION;
+ }
+ catch ( AuthenticationRequiredException e )
+ {
+ addActionError( e.getMessage() );
+ return REQUIRES_AUTHENTICATION;
+ }
+
schedule = getContinuum().getSchedule( id );
return SUCCESS;
@@ -157,16 +214,31 @@
public String remove()
throws ContinuumException
{
+ try
+ {
+ checkManageSchedulesAuthorization();
+ }
+ catch ( AuthorizationRequiredException authzE )
+ {
+ addActionError( authzE.getMessage() );
+ return REQUIRES_AUTHORIZATION;
+ }
+ catch ( AuthenticationRequiredException e )
+ {
+ addActionError( e.getMessage() );
+ return REQUIRES_AUTHENTICATION;
+ }
+
if ( confirmed )
{
getContinuum().removeSchedule( id );
}
else
- {
+ {
setConfirmationInfo( "Schedule Removal", "removeSchedule", name, "id", "" + id );
-
+
name = getContinuum().getSchedule( id ).getName();
-
+
return CONFIRM;
}
@@ -330,17 +402,7 @@
private String getCronExpression()
{
- return ( second + " " + minute + " " + hour + " " + dayOfMonth + " " +
- month + " " + dayOfWeek + " " + year ).trim();
- }
-
- public SecureActionBundle getSecureActionBundle()
- throws SecureActionException
- {
- SecureActionBundle bundle = new SecureActionBundle();
- bundle.setRequiresAuthentication( true );
- bundle.addRequiredAuthorization( ContinuumRoleConstants.CONTINUUM_MANAGE_SCHEDULES );
-
- return bundle;
+ return ( second + " " + minute + " " + hour + " " + dayOfMonth + " " + month + " " + dayOfWeek + " " +
+ year ).trim();
}
}
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/SurefireReportAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/SurefireReportAction.java?view=diff&rev=510564&r1=510563&r2=510564
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/SurefireReportAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/SurefireReportAction.java Thu Feb 22 08:00:45 2007
@@ -21,10 +21,7 @@
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.Project;
-import org.apache.maven.continuum.security.ContinuumRoleConstants;
import org.apache.maven.continuum.web.exception.AuthorizationRequiredException;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureActionBundle;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureActionException;
import org.codehaus.plexus.util.DirectoryScanner;
import org.codehaus.plexus.util.StringUtils;
import org.xml.sax.Attributes;
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigurationAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigurationAction.java?view=diff&rev=510564&r1=510563&r2=510564
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigurationAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigurationAction.java Thu Feb 22 08:00:45 2007
@@ -23,14 +23,11 @@
import com.opensymphony.xwork.Preparable;
import org.apache.maven.continuum.configuration.ConfigurationService;
import org.apache.maven.continuum.configuration.ConfigurationStoringException;
-import org.apache.maven.continuum.security.ContinuumRoleConstants;
import org.apache.maven.continuum.store.ContinuumStore;
import org.apache.maven.continuum.store.ContinuumStoreException;
import org.apache.maven.continuum.web.action.ContinuumActionSupport;
-import org.codehaus.plexus.security.rbac.Resource;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureAction;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureActionBundle;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureActionException;
+import org.apache.maven.continuum.web.exception.AuthenticationRequiredException;
+import org.apache.maven.continuum.web.exception.AuthorizationRequiredException;
import org.codehaus.plexus.util.StringUtils;
import javax.servlet.http.HttpServletRequest;
@@ -39,12 +36,11 @@
/**
* @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
* @version $Id$
- * @plexus.component role="com.opensymphony.xwork.Action"
- * role-hint="configuration"
+ * @plexus.component role="com.opensymphony.xwork.Action" role-hint="configuration"
*/
public class ConfigurationAction
extends ContinuumActionSupport
- implements Preparable, SecureAction
+ implements Preparable
{
/**
@@ -96,6 +92,21 @@
public String save()
throws ConfigurationStoringException, ContinuumStoreException
{
+ try
+ {
+ checkManageConfigurationAuthorization();
+ }
+ catch ( AuthorizationRequiredException authzE )
+ {
+ addActionError( authzE.getMessage() );
+ return REQUIRES_AUTHORIZATION;
+ }
+ catch ( AuthenticationRequiredException e )
+ {
+ addActionError( e.getMessage() );
+ return REQUIRES_AUTHENTICATION;
+ }
+
ConfigurationService configuration = getContinuum().getConfiguration();
configuration.setWorkingDirectory( new File( workingDirectory ) );
@@ -154,15 +165,5 @@
public void setBaseUrl( String baseUrl )
{
this.baseUrl = baseUrl;
- }
-
- public SecureActionBundle getSecureActionBundle()
- throws SecureActionException
- {
- SecureActionBundle bundle = new SecureActionBundle();
- bundle.setRequiresAuthentication( true );
- bundle.addRequiredAuthorization( ContinuumRoleConstants.CONTINUUM_MANAGE_CONFIGURATION, Resource.GLOBAL );
-
- return bundle;
}
}
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java?view=diff&rev=510564&r1=510563&r2=510564
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java Thu Feb 22 08:00:45 2007
@@ -23,30 +23,26 @@
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.continuum.execution.maven.m2.MavenBuilderHelper;
import org.apache.maven.continuum.execution.maven.m2.SettingsConfigurationException;
-import org.apache.maven.continuum.security.ContinuumRoleConstants;
import org.apache.maven.continuum.web.action.ContinuumActionSupport;
+import org.apache.maven.continuum.web.exception.AuthenticationRequiredException;
+import org.apache.maven.continuum.web.exception.AuthorizationRequiredException;
import org.apache.maven.model.Model;
import org.apache.maven.project.ProjectBuildingException;
import org.apache.maven.shared.app.company.CompanyPomHandler;
import org.apache.maven.shared.app.configuration.Configuration;
import org.apache.maven.shared.app.configuration.MavenAppConfiguration;
import org.codehaus.plexus.registry.RegistryException;
-import org.codehaus.plexus.security.rbac.Resource;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureAction;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureActionBundle;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureActionException;
import java.io.IOException;
/**
* @author <a href="mailto:brett@apache.org">Brett Porter</a>
* @version $Id: ConfigurationAction.java 480950 2006-11-30 14:58:35Z evenisse $
- * @plexus.component role="com.opensymphony.xwork.Action"
- * role-hint="configureAppearance"
+ * @plexus.component role="com.opensymphony.xwork.Action" role-hint="configureAppearance"
*/
public class ConfigureAppearanceAction
extends ContinuumActionSupport
- implements ModelDriven, SecureAction
+ implements ModelDriven
{
/**
* @plexus.requirement
@@ -73,6 +69,21 @@
public String execute()
throws IOException, RegistryException
{
+ try
+ {
+ checkManageConfigurationAuthorization();
+ }
+ catch ( AuthorizationRequiredException authzE )
+ {
+ addActionError( authzE.getMessage() );
+ return REQUIRES_AUTHORIZATION;
+ }
+ catch ( AuthenticationRequiredException e )
+ {
+ addActionError( e.getMessage() );
+ return REQUIRES_AUTHENTICATION;
+ }
+
appConfiguration.save( configuration );
return SUCCESS;
@@ -90,16 +101,6 @@
companyModel =
companyPomHandler.getCompanyPomModel( configuration.getCompanyPom(), helper.getLocalRepository() );
- }
-
- public SecureActionBundle getSecureActionBundle()
- throws SecureActionException
- {
- SecureActionBundle bundle = new SecureActionBundle();
- bundle.setRequiresAuthentication( true );
- bundle.addRequiredAuthorization( ContinuumRoleConstants.CONTINUUM_MANAGE_CONFIGURATION, Resource.GLOBAL );
-
- return bundle;
}
public Model getCompanyModel()
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/EditPomAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/EditPomAction.java?view=diff&rev=510564&r1=510563&r2=510564
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/EditPomAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/EditPomAction.java Thu Feb 22 08:00:45 2007
@@ -24,30 +24,26 @@
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.continuum.execution.maven.m2.MavenBuilderHelper;
import org.apache.maven.continuum.execution.maven.m2.SettingsConfigurationException;
-import org.apache.maven.continuum.security.ContinuumRoleConstants;
import org.apache.maven.continuum.web.action.ContinuumActionSupport;
+import org.apache.maven.continuum.web.exception.AuthenticationRequiredException;
+import org.apache.maven.continuum.web.exception.AuthorizationRequiredException;
import org.apache.maven.model.Model;
import org.apache.maven.project.ProjectBuildingException;
import org.apache.maven.shared.app.company.CompanyPomHandler;
import org.apache.maven.shared.app.configuration.CompanyPom;
import org.apache.maven.shared.app.configuration.Configuration;
import org.apache.maven.shared.app.configuration.MavenAppConfiguration;
-import org.codehaus.plexus.security.rbac.Resource;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureAction;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureActionBundle;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureActionException;
import java.io.IOException;
/**
* @author <a href="mailto:brett@apache.org">Brett Porter</a>
* @version $Id: ConfigurationAction.java 480950 2006-11-30 14:58:35Z evenisse $
- * @plexus.component role="com.opensymphony.xwork.Action"
- * role-hint="editPom"
+ * @plexus.component role="com.opensymphony.xwork.Action" role-hint="editPom"
*/
public class EditPomAction
extends ContinuumActionSupport
- implements ModelDriven, SecureAction
+ implements ModelDriven
{
/**
* @plexus.requirement
@@ -74,6 +70,21 @@
public String execute()
throws IOException, ArtifactInstallationException, SettingsConfigurationException
{
+ try
+ {
+ checkManageConfigurationAuthorization();
+ }
+ catch ( AuthorizationRequiredException authzE )
+ {
+ addActionError( authzE.getMessage() );
+ return REQUIRES_AUTHORIZATION;
+ }
+ catch ( AuthenticationRequiredException e )
+ {
+ addActionError( e.getMessage() );
+ return REQUIRES_AUTHENTICATION;
+ }
+
// TODO: hack for passed in String[]
String[] logo = (String[]) companyModel.getProperties().get( "organization.logo" );
if ( logo != null )
@@ -111,16 +122,6 @@
companyModel.setArtifactId( companyPom.getArtifactId() );
}
}
- }
-
- public SecureActionBundle getSecureActionBundle()
- throws SecureActionException
- {
- SecureActionBundle bundle = new SecureActionBundle();
- bundle.setRequiresAuthentication( true );
- bundle.addRequiredAuthorization( ContinuumRoleConstants.CONTINUUM_MANAGE_CONFIGURATION, Resource.GLOBAL );
-
- return bundle;
}
public Model getCompanyModel()
Modified: 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=diff&rev=510564&r1=510563&r2=510564
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteGroupNotifierAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/notifier/DeleteGroupNotifierAction.java Thu Feb 22 08:00:45 2007
@@ -24,7 +24,6 @@
import org.apache.maven.continuum.model.project.ProjectNotifier;
import org.apache.maven.continuum.web.action.ContinuumActionSupport;
import org.apache.maven.continuum.web.exception.AuthorizationRequiredException;
-import org.codehaus.plexus.security.ui.web.interceptor.SecureAction;
import org.codehaus.plexus.util.StringUtils;
import java.util.Map;