You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ma...@apache.org on 2020/07/24 14:37:56 UTC
[archiva-redback-core] 01/02: Switching V1 user service to old
return values
This is an automated email from the ASF dual-hosted git repository.
martin_s pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/archiva-redback-core.git
commit b2d94281c6bfe6fbfe6738815092b9e097f03cb7
Author: Martin Stockhammer <ma...@apache.org>
AuthorDate: Sun Jul 19 16:43:38 2020 +0200
Switching V1 user service to old return values
---
.../redback/rest/api/services/UserService.java | 38 ++++++-----
.../redback/rest/services/DefaultUserService.java | 79 ++++++++++++----------
.../rest/services/AbstractRestServicesTest.java | 2 +-
.../redback/rest/services/UserServiceTest.java | 14 ++--
4 files changed, 73 insertions(+), 60 deletions(-)
diff --git a/redback-integrations/redback-rest/redback-rest-api/src/main/java/org/apache/archiva/redback/rest/api/services/UserService.java b/redback-integrations/redback-rest/redback-rest-api/src/main/java/org/apache/archiva/redback/rest/api/services/UserService.java
index 57291be..3dde14e 100644
--- a/redback-integrations/redback-rest/redback-rest-api/src/main/java/org/apache/archiva/redback/rest/api/services/UserService.java
+++ b/redback-integrations/redback-rest/redback-rest-api/src/main/java/org/apache/archiva/redback/rest/api/services/UserService.java
@@ -21,19 +21,14 @@ package org.apache.archiva.redback.rest.api.services;
import org.apache.archiva.redback.authorization.RedbackAuthorization;
import org.apache.archiva.redback.integration.security.role.RedbackRoleConstants;
-import org.apache.archiva.redback.rest.api.model.ActionStatus;
import org.apache.archiva.redback.rest.api.model.AvailabilityStatus;
import org.apache.archiva.redback.rest.api.model.Operation;
-import org.apache.archiva.redback.rest.api.model.PasswordStatus;
import org.apache.archiva.redback.rest.api.model.Permission;
-import org.apache.archiva.redback.rest.api.model.PingResult;
import org.apache.archiva.redback.rest.api.model.RegistrationKey;
import org.apache.archiva.redback.rest.api.model.ResetPasswordRequest;
import org.apache.archiva.redback.rest.api.model.User;
import org.apache.archiva.redback.rest.api.model.UserRegistrationRequest;
-import org.apache.archiva.redback.rest.api.model.VerificationStatus;
-import javax.swing.*;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
@@ -71,7 +66,7 @@ public interface UserService
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@Consumes( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
@RedbackAuthorization( permissions = RedbackRoleConstants.USER_MANAGEMENT_USER_CREATE_OPERATION )
- ActionStatus createUser( User user )
+ Boolean createUser( User user )
throws RedbackServiceException;
@@ -83,14 +78,14 @@ public interface UserService
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@Consumes( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
@RedbackAuthorization( noRestriction = true )
- ActionStatus createAdminUser( User user )
+ Boolean createAdminUser( User user )
throws RedbackServiceException;
@Path( "isAdminUserExists" )
@GET
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@RedbackAuthorization( noRestriction = true )
- AvailabilityStatus isAdminUserExists()
+ Boolean isAdminUserExists()
throws RedbackServiceException;
@@ -98,14 +93,14 @@ public interface UserService
@GET
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@RedbackAuthorization( permissions = RedbackRoleConstants.USER_MANAGEMENT_USER_DELETE_OPERATION )
- ActionStatus deleteUser( @PathParam( "userName" ) String username )
+ Boolean deleteUser( @PathParam( "userName" ) String username )
throws RedbackServiceException;
@Path( "updateUser" )
@POST
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@RedbackAuthorization( permissions = RedbackRoleConstants.USER_MANAGEMENT_USER_EDIT_OPERATION )
- ActionStatus updateUser( User user )
+ Boolean updateUser( User user )
throws RedbackServiceException;
/**
@@ -115,7 +110,7 @@ public interface UserService
@GET
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@RedbackAuthorization( permissions = RedbackRoleConstants.USER_MANAGEMENT_USER_EDIT_OPERATION )
- ActionStatus lockUser( @PathParam( "username" ) String username )
+ Boolean lockUser( @PathParam( "username" ) String username )
throws RedbackServiceException;
/**
@@ -125,7 +120,7 @@ public interface UserService
@GET
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@RedbackAuthorization( permissions = RedbackRoleConstants.USER_MANAGEMENT_USER_EDIT_OPERATION )
- ActionStatus unlockUser( @PathParam( "username" ) String username )
+ Boolean unlockUser( @PathParam( "username" ) String username )
throws RedbackServiceException;
@@ -136,10 +131,19 @@ public interface UserService
@GET
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@RedbackAuthorization( permissions = RedbackRoleConstants.USER_MANAGEMENT_USER_EDIT_OPERATION )
- PasswordStatus passwordChangeRequired( @PathParam( "username" ) String username )
+ Boolean passwordChangeRequired( @PathParam( "username" ) String username )
throws RedbackServiceException;
/**
+ * @since 2.0
+ */
+ @Path( "passwordChangeNotRequired/{username}" )
+ @GET
+ @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
+ @RedbackAuthorization( permissions = RedbackRoleConstants.USER_MANAGEMENT_USER_EDIT_OPERATION )
+ Boolean passwordChangeNotRequired( @PathParam( "username" ) String username )
+ throws RedbackServiceException;
+ /**
* update only the current user and this fields: fullname, email, password.
* the service verify the curent logged user with the one passed in the method
* @since 1.4
@@ -148,7 +152,7 @@ public interface UserService
@POST
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@RedbackAuthorization( noRestriction = false, noPermission = true )
- ActionStatus updateMe( User user )
+ Boolean updateMe( User user )
throws RedbackServiceException;
@Path( "ping" )
@@ -162,7 +166,7 @@ public interface UserService
@GET
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@RedbackAuthorization( permissions = RedbackRoleConstants.USER_MANAGEMENT_USER_EDIT_OPERATION )
- ActionStatus removeFromCache( @PathParam( "userName" ) String username )
+ int removeFromCache( @PathParam( "userName" ) String username )
throws RedbackServiceException;
@Path( "getGuestUser" )
@@ -201,7 +205,7 @@ public interface UserService
@GET
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@RedbackAuthorization( noRestriction = true, noPermission = true )
- VerificationStatus validateUserFromKey( @PathParam( "key" ) String key )
+ Boolean validateUserFromKey( @PathParam( "key" ) String key )
throws RedbackServiceException;
/**
@@ -214,7 +218,7 @@ public interface UserService
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
@Consumes( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
@RedbackAuthorization( noRestriction = true, noPermission = true )
- ActionStatus resetPassword( ResetPasswordRequest resetPasswordRequest )
+ Boolean resetPassword( ResetPasswordRequest resetPasswordRequest )
throws RedbackServiceException;
/**
diff --git a/redback-integrations/redback-rest/redback-rest-services/src/main/java/org/apache/archiva/redback/rest/services/DefaultUserService.java b/redback-integrations/redback-rest/redback-rest-services/src/main/java/org/apache/archiva/redback/rest/services/DefaultUserService.java
index a1f05b1..c8adfbb 100644
--- a/redback-integrations/redback-rest/redback-rest-services/src/main/java/org/apache/archiva/redback/rest/services/DefaultUserService.java
+++ b/redback-integrations/redback-rest/redback-rest-services/src/main/java/org/apache/archiva/redback/rest/services/DefaultUserService.java
@@ -40,18 +40,14 @@ import org.apache.archiva.redback.rbac.RBACManager;
import org.apache.archiva.redback.rbac.RbacManagerException;
import org.apache.archiva.redback.rbac.UserAssignment;
import org.apache.archiva.redback.rest.api.model.ActionStatus;
-import org.apache.archiva.redback.rest.api.model.AvailabilityStatus;
import org.apache.archiva.redback.rest.api.model.ErrorMessage;
import org.apache.archiva.redback.rest.api.model.Operation;
-import org.apache.archiva.redback.rest.api.model.PasswordStatus;
import org.apache.archiva.redback.rest.api.model.Permission;
-import org.apache.archiva.redback.rest.api.model.PingResult;
import org.apache.archiva.redback.rest.api.model.RegistrationKey;
import org.apache.archiva.redback.rest.api.model.ResetPasswordRequest;
import org.apache.archiva.redback.rest.api.model.Resource;
import org.apache.archiva.redback.rest.api.model.User;
import org.apache.archiva.redback.rest.api.model.UserRegistrationRequest;
-import org.apache.archiva.redback.rest.api.model.VerificationStatus;
import org.apache.archiva.redback.rest.api.services.RedbackServiceException;
import org.apache.archiva.redback.rest.api.services.UserService;
import org.apache.archiva.redback.rest.services.utils.PasswordValidator;
@@ -147,7 +143,7 @@ public class DefaultUserService
@Override
- public ActionStatus createUser( User user )
+ public Boolean createUser( User user )
throws RedbackServiceException
{
@@ -222,11 +218,11 @@ public class DefaultUserService
{
throw new RedbackServiceException( new ErrorMessage( e.getMessage() ) );
}
- return ActionStatus.SUCCESS;
+ return Boolean.TRUE;
}
@Override
- public ActionStatus deleteUser( String username )
+ public Boolean deleteUser( String username )
throws RedbackServiceException
{
@@ -248,7 +244,7 @@ public class DefaultUserService
try
{
userManager.deleteUser( username );
- return ActionStatus.SUCCESS;
+ return Boolean.TRUE;
}
catch ( UserNotFoundException e )
{
@@ -308,7 +304,7 @@ public class DefaultUserService
}
@Override
- public ActionStatus updateMe( User user )
+ public Boolean updateMe( User user )
throws RedbackServiceException
{
// check username == one in the session
@@ -375,11 +371,11 @@ public class DefaultUserService
updateUser( realUser );
- return ActionStatus.SUCCESS;
+ return Boolean.TRUE;
}
@Override
- public ActionStatus updateUser( User user )
+ public Boolean updateUser( User user )
throws RedbackServiceException
{
try
@@ -394,7 +390,7 @@ public class DefaultUserService
rawUser.setPermanent( user.isPermanent() );
userManager.updateUser( rawUser );
- return ActionStatus.SUCCESS;
+ return Boolean.TRUE;
}
catch ( UserNotFoundException e )
{
@@ -407,7 +403,7 @@ public class DefaultUserService
}
@Override
- public ActionStatus removeFromCache( String userName )
+ public int removeFromCache( String userName )
throws RedbackServiceException
{
if ( userAssignmentsCache != null )
@@ -433,7 +429,7 @@ public class DefaultUserService
}
}
- return ActionStatus.SUCCESS;
+ return -1;
}
@Override
@@ -506,13 +502,13 @@ public class DefaultUserService
}
@Override
- public ActionStatus createAdminUser( User adminUser )
+ public Boolean createAdminUser( User adminUser )
throws RedbackServiceException
{
- if ( isAdminUserExists().isExists() )
+ if ( isAdminUserExists() )
{
log.warn( "Admin user exists already" );
- return ActionStatus.FAIL;
+ return Boolean.FALSE;
}
log.debug("Creating admin admin user '{}'", adminUser.getUsername());
if (!RedbackRoleConstants.ADMINISTRATOR_ACCOUNT_NAME.equals(adminUser.getUsername())) {
@@ -543,17 +539,17 @@ public class DefaultUserService
{
throw new RedbackServiceException( new ErrorMessage( e.getMessage() ) );
}
- return ActionStatus.SUCCESS;
+ return Boolean.TRUE;
}
@Override
- public AvailabilityStatus isAdminUserExists()
+ public Boolean isAdminUserExists()
throws RedbackServiceException
{
try
{
userManager.findUser( config.getString( UserConfigurationKeys.DEFAULT_ADMIN ) );
- return new AvailabilityStatus( true );
+ return Boolean.TRUE;
}
catch ( UserNotFoundException e )
{
@@ -565,15 +561,15 @@ public class DefaultUserService
if ( cause != null && cause instanceof UserNotFoundException )
{
- return new AvailabilityStatus( false );
+ return Boolean.FALSE;
}
throw new RedbackServiceException( new ErrorMessage( e.getMessage() ) );
}
- return new AvailabilityStatus( false );
+ return Boolean.FALSE;
}
@Override
- public ActionStatus resetPassword( ResetPasswordRequest resetPasswordRequest )
+ public Boolean resetPassword( ResetPasswordRequest resetPasswordRequest )
throws RedbackServiceException
{
String username = resetPasswordRequest.getUsername();
@@ -617,7 +613,7 @@ public class DefaultUserService
throw new RedbackServiceException( new ErrorMessage( e.getMessage() ) );
}
- return ActionStatus.SUCCESS;
+ return Boolean.TRUE;
}
@Override
@@ -736,7 +732,7 @@ public class DefaultUserService
}
@Override
- public VerificationStatus validateUserFromKey( String key )
+ public Boolean validateUserFromKey( String key )
throws RedbackServiceException
{
String principal = null;
@@ -765,7 +761,7 @@ public class DefaultUserService
log.info( "account validated for user {}", user.getUsername() );
- return new VerificationStatus( true );
+ return Boolean.TRUE;
}
catch ( MustChangePasswordException | AccountLockedException | AuthenticationException e )
{
@@ -976,7 +972,7 @@ public class DefaultUserService
}
@Override
- public ActionStatus unlockUser( String username )
+ public Boolean unlockUser( String username )
throws RedbackServiceException
{
User user = getUser( username );
@@ -984,13 +980,13 @@ public class DefaultUserService
{
user.setLocked( false );
updateUser( user );
- return ActionStatus.SUCCESS;
+ return Boolean.TRUE;
}
- return ActionStatus.FAIL;
+ return Boolean.FALSE;
}
@Override
- public ActionStatus lockUser( String username )
+ public Boolean lockUser( String username )
throws RedbackServiceException
{
User user = getUser( username );
@@ -998,13 +994,13 @@ public class DefaultUserService
{
user.setLocked( true );
updateUser( user );
- return ActionStatus.SUCCESS;
+ return Boolean.TRUE;
}
- return ActionStatus.FAIL;
+ return Boolean.FALSE;
}
@Override
- public PasswordStatus passwordChangeRequired( String username )
+ public Boolean passwordChangeRequired( String username )
throws RedbackServiceException
{
User user = getUser( username );
@@ -1012,9 +1008,22 @@ public class DefaultUserService
{
user.setPasswordChangeRequired( true );
updateUser( user );
- return new PasswordStatus( true );
+ return Boolean.TRUE;
}
- return new PasswordStatus( false );
+ return Boolean.FALSE;
}
+ @Override
+ public Boolean passwordChangeNotRequired( String username )
+ throws RedbackServiceException
+ {
+ User user = getUser( username );
+ if ( user == null )
+ {
+ user.setPasswordChangeRequired( false );
+ updateUser( user );
+ return Boolean.TRUE;
+ }
+ return Boolean.FALSE;
+ }
}
diff --git a/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/AbstractRestServicesTest.java b/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/AbstractRestServicesTest.java
index f402ead..839f8e7 100644
--- a/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/AbstractRestServicesTest.java
+++ b/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/AbstractRestServicesTest.java
@@ -167,7 +167,7 @@ public abstract class AbstractRestServicesTest
adminUser.setPassword( BaseSetup.getAdminPwd() );
adminUser.setFullName( "the admin user" );
adminUser.setEmail( "toto@toto.fr" );
- if( !userService.createAdminUser( adminUser ).isSuccess( ) ) {
+ if( !userService.createAdminUser( adminUser ) ) {
log.info( "Could not create admin user." );
}
diff --git a/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/UserServiceTest.java b/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/UserServiceTest.java
index ba5a78e..2e262ea 100644
--- a/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/UserServiceTest.java
+++ b/redback-integrations/redback-rest/redback-rest-services/src/test/java/org/apache/archiva/redback/rest/services/UserServiceTest.java
@@ -167,7 +167,7 @@ public class UserServiceTest
assertTrue( messageContent.contains( "http://wine.fr/bordeaux" ) );
assertTrue( messageContent.contains( "toto" ) );
- assertTrue( service.validateUserFromKey( key ).isSuccess() );
+ assertTrue( service.validateUserFromKey( key ) );
service = getUserService( authorizationHeader );
@@ -177,7 +177,7 @@ public class UserServiceTest
assertTrue( u.isValidated() );
assertTrue( u.isPasswordChangeRequired() );
- assertTrue( service.validateUserFromKey( key ).isSuccess() );
+ assertTrue( service.validateUserFromKey( key ) );
}
catch ( Exception e )
@@ -227,7 +227,7 @@ public class UserServiceTest
assertTrue(messageContent.contains("http://localhost:" + getServerPort() ));
assertTrue( messageContent.toLowerCase( ).contains( "toto" ) );
- assertTrue( service.validateUserFromKey( key ).isSuccess() );
+ assertTrue( service.validateUserFromKey( key ) );
service = getUserService( authorizationHeader );
@@ -237,7 +237,7 @@ public class UserServiceTest
assertTrue( u.isValidated() );
assertTrue( u.isPasswordChangeRequired() );
- assertTrue( service.validateUserFromKey( key ).isSuccess() );
+ assertTrue( service.validateUserFromKey( key ) );
}
catch ( Exception e )
@@ -285,7 +285,7 @@ public class UserServiceTest
assertTrue(
emailMessages.get( 0 ).getText().contains( "Use the following URL to validate your account." ) );
- assertTrue( service.validateUserFromKey( key ).isSuccess() );
+ assertTrue( service.validateUserFromKey( key ) );
service = getUserService( authorizationHeader );
@@ -295,9 +295,9 @@ public class UserServiceTest
assertTrue( u.isValidated() );
assertTrue( u.isPasswordChangeRequired() );
- assertTrue( service.validateUserFromKey( key ).isSuccess() );
+ assertTrue( service.validateUserFromKey( key ) );
- assertTrue( service.resetPassword( new ResetPasswordRequest( "toto", "http://foo.fr/bar" ) ).isSuccess() );
+ assertTrue( service.resetPassword( new ResetPasswordRequest( "toto", "http://foo.fr/bar" ) ) );
emailMessages = assertService.getEmailMessageSended();
assertEquals( 2, emailMessages.size() );