Search in sources :

Example 11 with User

use of io.gravitee.repository.management.model.User in project gravitee-management-rest-api by gravitee-io.

the class UserServiceImpl method convert.

private static User convert(NewUserEntity newUserEntity) {
    if (newUserEntity == null) {
        return null;
    }
    User user = new User();
    user.setUsername(newUserEntity.getUsername());
    user.setEmail(newUserEntity.getEmail());
    user.setFirstname(newUserEntity.getFirstname());
    user.setLastname(newUserEntity.getLastname());
    user.setPassword(newUserEntity.getPassword());
    return user;
}
Also used : User(io.gravitee.repository.management.model.User)

Example 12 with User

use of io.gravitee.repository.management.model.User in project gravitee-management-rest-api by gravitee-io.

the class UserServiceImpl method create.

/**
 * Allows to pre-create a user.
 * @param newExternalUserEntity
 * @return
 */
@Override
public UserEntity create(NewExternalUserEntity newExternalUserEntity, boolean addDefaultRole) {
    try {
        LOGGER.debug("Create an external user {}", newExternalUserEntity);
        Optional<User> checkUser = userRepository.findById(newExternalUserEntity.getUsername());
        if (checkUser.isPresent()) {
            throw new UsernameAlreadyExistsException(newExternalUserEntity.getUsername());
        }
        User user = convert(newExternalUserEntity);
        user.setId(UUID.toString(UUID.random()));
        // Set date fields
        user.setCreatedAt(new Date());
        user.setUpdatedAt(user.getCreatedAt());
        User createdUser = userRepository.create(user);
        auditService.createPortalAuditLog(Collections.singletonMap(USER, user.getUsername()), User.AuditEvent.USER_CREATED, user.getCreatedAt(), null, user);
        if (addDefaultRole) {
            addDefaultMembership(createdUser);
        }
        return convert(createdUser, true);
    } catch (TechnicalException ex) {
        LOGGER.error("An error occurs while trying to create an external user {}", newExternalUserEntity, ex);
        throw new TechnicalManagementException("An error occurs while trying to create an external user" + newExternalUserEntity, ex);
    }
}
Also used : UsernameAlreadyExistsException(io.gravitee.management.service.exceptions.UsernameAlreadyExistsException) User(io.gravitee.repository.management.model.User) TechnicalException(io.gravitee.repository.exceptions.TechnicalException) TechnicalManagementException(io.gravitee.management.service.exceptions.TechnicalManagementException)

Aggregations

User (io.gravitee.repository.management.model.User)12 TechnicalManagementException (io.gravitee.management.service.exceptions.TechnicalManagementException)9 TechnicalException (io.gravitee.repository.exceptions.TechnicalException)9 UserNotFoundException (io.gravitee.management.service.exceptions.UserNotFoundException)8 UsernameAlreadyExistsException (io.gravitee.management.service.exceptions.UsernameAlreadyExistsException)4 JWTVerifier (com.auth0.jwt.JWTVerifier)3 DefaultRoleNotFoundException (io.gravitee.management.service.exceptions.DefaultRoleNotFoundException)3 IOException (java.io.IOException)3 JWTSigner (com.auth0.jwt.JWTSigner)2 io.gravitee.common.utils (io.gravitee.common.utils)2 UUID (io.gravitee.common.utils.UUID)2 io.gravitee.management.model (io.gravitee.management.model)2 io.gravitee.management.service (io.gravitee.management.service)2 EmailNotificationBuilder (io.gravitee.management.service.builder.EmailNotificationBuilder)2 Claims (io.gravitee.management.service.common.JWTHelper.Claims)2 DEFAULT_JWT_EMAIL_REGISTRATION_EXPIRE_AFTER (io.gravitee.management.service.common.JWTHelper.DefaultValues.DEFAULT_JWT_EMAIL_REGISTRATION_EXPIRE_AFTER)2 DEFAULT_JWT_ISSUER (io.gravitee.management.service.common.JWTHelper.DefaultValues.DEFAULT_JWT_ISSUER)2 NotificationParamsBuilder (io.gravitee.management.service.notification.NotificationParamsBuilder)2 PortalHook (io.gravitee.management.service.notification.PortalHook)2 UserRepository (io.gravitee.repository.management.api.UserRepository)2