- try{
- User user = User.NewInstance(text, text);
- CdmStore.getService(IUserService.class).createUser(user);
- user = CdmStore.getService(IUserService.class).loadWithUpdate(user.getUuid());
- return user;
- } catch (AccessDeniedException e){
- MessagingUtils.messageDialog("Access denied", getClass(), e.getMessage(), e);
- return null;
- }
+
+ try{
+ User user = User.NewInstance(text, text);
+ List<User> userList =CdmStore.getService(IUserService.class).listByUsername(user.getUsername(), MatchMode.EXACT, null, 100, 0, null, null);
+ if (userList.isEmpty()){
+ CdmStore.getService(IUserService.class).createUser(user);
+ user = CdmStore.getService(IUserService.class).loadWithUpdate(user.getUuid());
+ return user;
+ } else{
+ MessagingUtils.messageDialog(Messages.USER_CREATOR_user_exists_title, user, Messages.USER_CREATOR_user_exists);
+ return null;
+ }
+ } catch (AccessDeniedException e){
+ MessagingUtils.messageDialog(Messages.USER_CREATOR_Acces_denied, getClass(), e.getMessage(), e);
+ return null;
+ } catch (ConstraintViolationException cve){
+ MessagingUtils.messageDialog(Messages.USER_CREATOR_Name_not_accepted, getClass(), Messages.USER_CREATOR_Name_not_accepted_message);
+ return null;
+ }
+