if (dialog.open() != Window.CANCEL) {
IEntityCreator entityCreator = bulkEditor.getEditorInput().getEntityCreator();
Object createdEntity = entityCreator.createEntity(key, dialog.getValue());
+ if (createdEntity == null){
+ return;
+ }
bulkEditor.getEditorInput().getModel().add(createdEntity);
if (createdEntity instanceof CdmBase){
bulkEditor.getEditorInput().addSaveCandidate((CdmBase)createdEntity);
package eu.etaxonomy.taxeditor.bulkeditor.input.entitycreator;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
+import java.util.UUID;
+import eu.etaxonomy.cdm.api.service.IGroupService;
import eu.etaxonomy.cdm.model.common.Group;
+import eu.etaxonomy.cdm.persistence.query.MatchMode;
import eu.etaxonomy.taxeditor.annotatedlineeditor.IEntityCreator;
+import eu.etaxonomy.taxeditor.l10n.Messages;
+import eu.etaxonomy.taxeditor.model.MessagingUtils;
+import eu.etaxonomy.taxeditor.store.CdmStore;
/**
* @author n.hoffmann
*/
@Override
public Group createEntity(String text) {
- return createEntity(null, text);
+ Group group = createEntity(null, text);
+ return group;
}
/* (non-Javadoc)
*/
@Override
public Group createEntity(Object key, String text) {
- return Group.NewInstance(text);
+ List<Group> groupList =CdmStore.getService(IGroupService.class).listByName(text, MatchMode.EXACT, null, 100, 0, null, null);
+
+ if (groupList.isEmpty()){
+ Group group = Group.NewInstance(text);
+ UUID groupUuid = CdmStore.getService(IGroupService.class).saveGroup(group);
+ group = CdmStore.getService(IGroupService.class).loadWithUpdate(groupUuid);
+ return group;
+ } else{
+ MessagingUtils.messageDialog(Messages.GROUP_CREATOR_group_exists_title, text, Messages.GROUP_CREATOR_group_exists);
+ return null;
+ }
+
+
}
/* (non-Javadoc)
public static String AbstractBulkEditorInput_MERGE_ERROR_TITLE;
public static String USER_CREATOR_user_exists_title;
public static String USER_CREATOR_user_exists;
+ public static String GROUP_CREATOR_group_exists_title;
+ public static String GROUP_CREATOR_group_exists;
public static String BulkEditorE4_CANCEL;
public static String BulkEditorE4_DONT_SAVE;
public static String BulkEditorE4_SAVE_AND_SEARCH;
USER_CREATOR_user_exists_title=The user already exists
USER_CREATOR_user_exists=The user already exists in database
+GROUP_CREATOR_group_exists_title=The group already exists
+GROUP_CREATOR_group_exists=The group already exists in database.
ReferencingObjectsLabelProvider_No_description_available=No description available
ConvertPerson2TeamHandler_warning=While reloading the data an exception occurred
ConvertPerson2TeamHandler_lable=Convert Person to Team
USER_CREATOR_user_exists_title=Der Benutzer existiert bereits
USER_CREATOR_user_exists=Der Benutzer existiert bereits in der Datenbank.
+GROUP_CREATOR_group_exists_title=Die Gruppe existiert bereits
+GROUP_CREATOR_group_exists=Die Gruppe existiert bereits in der Datenbank.
+
ReferencingObjectsLabelProvider_No_description_available=Keine Beschreibung verfügbar
ConvertPerson2TeamHandler_warning=Beim Neuladen der Daten ist ein Fehler aufgetreten
ConvertPerson2TeamHandler_lable=Wandle Person in Team um