AT: commiting latest changes to the Palm Use data extension
authora.theys <a.theys@localhost>
Mon, 12 Mar 2012 14:44:43 +0000 (14:44 +0000)
committera.theys <a.theys@localhost>
Mon, 12 Mar 2012 14:44:43 +0000 (14:44 +0000)
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/UsesViewPart.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/handler/CreateUseRecordHandler.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/userecords/UseRecordDetailElement.java

index 676ad94aa86f72ab05f4b99ce391eae5b12f4e6a..1f9cf8653e618ed4c106f9aa8a1bbadb090321ee 100644 (file)
@@ -197,16 +197,20 @@ public class UsesViewPart extends AbstractCdmEditorViewPart implements IPartCont
                                CdmStore.getService(IVocabularyService.class).saveOrUpdate(humanGroupVocabulary);\r
                                conversation.commit(true);\r
                        }\r
-                       /*if(featureUseRecord == null) {\r
+                       if(featureUseRecord == null) {\r
+                               //Feature usesFeature = (Feature) CdmStore.getService(ITermService.class).find(UUID.fromString("e5374d39-b210-47c7-bec1-bee05b5f1cb6"));\r
                                featureUseRecord = Feature.NewInstance("Use Record", "Use Record", null);\r
                                featureUseRecord.setUuid(UUID.fromString("8125a59d-b4d5-4485-89ea-67306297b599"));\r
+                               featureUseRecord.setSupportsCategoricalData(true);\r
+                               //featureUseRecord\r
+                               //featureUseRecord.setLabel("Use Record");\r
                                //featureUseRecord.\r
                                TermVocabulary<Feature> featureVocabulary = (TermVocabulary<Feature>)CdmStore.getService(IVocabularyService.class).find((UUID.fromString("b187d555-f06f-4d65-9e53-da7c93f8eaa8")));\r
                                featureVocabulary.addTerm(featureUseRecord);\r
                                CdmStore.getService(IVocabularyService.class).saveOrUpdate(featureVocabulary);\r
                                conversation.commit(true);\r
                                \r
-                       }*/\r
+                       }\r
                                \r
                        \r
                        conversation.close();   \r
index 2e03cf90d3068c0dbba7a38a38fe84ea8a57084d..cc679a5cc54a2a9ad263898a9e91a3fb7084af83 100644 (file)
@@ -2,6 +2,7 @@ package eu.etaxonomy.taxeditor.editor.view.uses.handler;
 
 import java.util.List;
 import java.util.Set;
+import java.util.UUID;
 
 import org.eclipse.core.commands.AbstractHandler;
 import org.eclipse.core.commands.ExecutionEvent;
@@ -18,6 +19,7 @@ import org.eclipse.ui.IWorkbenchPart;
 import org.eclipse.ui.forms.editor.FormEditor;
 import org.eclipse.ui.handlers.HandlerUtil;
 
+import eu.etaxonomy.cdm.api.service.ITermService;
 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
 import eu.etaxonomy.cdm.model.description.CategoricalData;
 import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
@@ -64,31 +66,18 @@ public class CreateUseRecordHandler extends AbstractHandler {
                        } 
 
                        if (description != null) {
-                               //CategoricalData element = CategoricalData.NewInstance();
                                AbstractPostOperation operation = null;
                                try {
-                                       List<Feature> features = CdmStore.getTermManager().getPreferredTerms(Feature.class);
-                                       //TextData element = TextData.NewInstance();
-                                       /*TextData feature  = TextData.NewInstance();
-                                       *Feature feature = (Feature) HibernateProxyHelper.deproxy(feature);*/
-                                       for (Feature feature : features) {
-                                               //if(feature.getTitleCache().equals("Use Record")) {
-                                               if(feature.getTitleCache().equals("Uses")) {
-                                                       feature.setSupportsCategoricalData(true);
-                                                       //CategoricalData element = CategoricalData.NewInstance();
-                                                       //element.setFeature(feature);
-                                                       /*operation = new CreateUseRecordOperation(event
-                                                                       .getCommand().getName(),
-                                                                       EditorUtil.getUndoContext(), taxon,
-                                                                       description, feature, postOperationEnabled);*/
-                                                       operation = new CreateUseRecordOperation(event
-                                                                       .getCommand().getName(),
-                                                                       EditorUtil.getUndoContext(), taxon,
-                                                                       description, feature, postOperationEnabled);
-                                                                       
-                                               }
-                                       }
-                                       // TODO use undo context specific to editor
+                                       //Use Record Feature retrieval below
+                                       //Feature feature = (Feature) CdmStore.getService(ITermService.class).find(UUID.fromString("8125a59d-b4d5-4485-89ea-67306297b599"));
+                                       //Feature feature = (Feature) CdmStore.getService(ITermService.class).find(UUID.fromString("247606f2-5f24-421f-92ca-dad2351b171e"));
+                                       //The code below retrieves the feature "Uses" as a work around
+                                       Feature feature = (Feature) CdmStore.getService(ITermService.class).find(UUID.fromString("e5374d39-b210-47c7-bec1-bee05b5f1cb6"));
+                                       feature.setSupportsCategoricalData(true);
+                                       operation = new CreateUseRecordOperation(event
+                                                       .getCommand().getName(),
+                                                       EditorUtil.getUndoContext(), taxon,
+                                                       description, feature, postOperationEnabled);
                                        
                                        EditorUtil.executeOperation(operation);
                                } catch (NotDefinedException e) {
index 5361daef5e5236d1eda74571b2e7bfe32cc12dcf..56a66d8644ea7acd3195705bd8ec640c1e019877 100644 (file)
@@ -24,31 +24,19 @@ import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
 import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;\r
 import eu.etaxonomy.taxeditor.ui.section.description.DescriptionElementDetailElement;\r
 \r
-//public class UseRecordDetailElement extends AbstractDetailedDescriptionDetailElement<CategoricalData> {\r
 public class UseRecordDetailElement extends\r
                AbstractCdmDetailElement<CategoricalData> implements SelectionListener {\r
 \r
        private static final Logger logger = Logger\r
-                       .getLogger(DescriptionElementDetailElement.class);\r
+                       .getLogger(UseRecordDetailElement.class);\r
 \r
-       // private CheckboxElement checkbox_orderRelevant;\r
        private TermComboElement<State> combo_UseCategory;\r
        private TermComboElement<State> combo_UseSubCategory;\r
        private TermComboElement<Modifier> combo_PlantPart;\r
        private TermComboElement<Modifier> combo_Country;\r
        private TermComboElement<Modifier> combo_HumanGroup;\r
        private TermComboElement<Modifier> combo_EthnicGroup;\r
-       // private AbstractDetailedDescriptionDetailElement detailElement;\r
 \r
-       /*\r
-        * public UseRecordDetailElement(CdmFormFactory formFactory, ICdmFormElement\r
-        * formElement, CategoricalData entity, int style) { super(formFactory,\r
-        * formElement, entity, style); }\r
-        */\r
-       /*\r
-        * public UseRecordDetailElement(CdmFormFactory formFactory, ICdmFormElement\r
-        * formElement, int style) {\r
-        */\r
        public UseRecordDetailElement(CdmFormFactory formFactory,\r
                        ICdmFormElement formElement) {\r
                super(formFactory, formElement);\r
@@ -282,14 +270,12 @@ public class UseRecordDetailElement extends
                                                        if (modifyingText.get(CdmStore.getDefaultLanguage()).getText().equals("Use Category")) {\r
                                                                isChanged = true;\r
                                                                if(!existingStateData.getState().getTitleCache().equals(combo_UseCategory.getSelection().getTitleCache())) {\r
-                                                                       //getEntity().removeState(existingStateData);\r
                                                                        itrExistingStates.remove();\r
                                                                        StateData stateData = StateData.NewInstance(combo_UseCategory.getSelection());\r
                                                                        stateData.setState(combo_UseCategory.getSelection());\r
-                                                                       //stateData.addModifyingText("Use Category", CdmStore.getDefaultLanguage());\r
                                                                        stateData.putModifyingText(CdmStore.getDefaultLanguage(),"Use Category");\r
                                                                        itrExistingStates.add(stateData);\r
-                                                                       //getEntity().addState(stateData);\r
+                                                                       \r
                                                                }\r
                                                        } else if (modifyingText.get(CdmStore.getDefaultLanguage()).getText().equals("Use SubCategory") && isUseCategoryChanged == true) {\r
                                                                itrExistingStates.remove();\r
@@ -331,7 +317,6 @@ public class UseRecordDetailElement extends
                                boolean isChanged = false;\r
                                if (!getEntity().getStates().isEmpty()) {\r
                                        ListIterator<StateData> itrExistingStates = getEntity().getStates().listIterator();\r
-                                       //for (StateData existingStateData : getEntity().getStates()) {\r
                                        while(itrExistingStates.hasNext()) {\r
                                                StateData existingStateData = itrExistingStates.next();\r
                                                Map<Language, LanguageString> modifyingText = existingStateData\r
@@ -340,14 +325,11 @@ public class UseRecordDetailElement extends
                                                        if (modifyingText.get(CdmStore.getDefaultLanguage()).getText().equals("Use SubCategory")) {\r
                                                                isChanged = true;\r
                                                                if(!existingStateData.getState().getTitleCache().equals(combo_UseSubCategory.getSelection().getTitleCache())) {\r
-                                                                       //getEntity().removeState(existingStateData);\r
                                                                        itrExistingStates.remove();\r
                                                                        StateData stateData = StateData.NewInstance(combo_UseSubCategory.getSelection());\r
                                                                        stateData.setState(combo_UseSubCategory.getSelection());\r
-                                                                       //stateData.addModifyingText("Use Category", CdmStore.getDefaultLanguage());\r
                                                                        stateData.putModifyingText(CdmStore.getDefaultLanguage(),"Use SubCategory");\r
                                                                        itrExistingStates.add(stateData);\r
-                                                                       //getEntity().addState(stateData);\r
                                                                }\r
                                                        }\r
                                                }\r
@@ -366,7 +348,6 @@ public class UseRecordDetailElement extends
                                if (!getEntity().getStates().isEmpty()) {\r
                                        Iterator<StateData> itrStateData = getEntity().getStates().iterator();\r
                                        while(itrStateData.hasNext()) {\r
-                                       //for (StateData existingStateData : getEntity().getStates()) {\r
                                                StateData existingStateData = itrStateData.next();\r
                                                Map<Language, LanguageString> modifyingText = existingStateData\r
                                                                .getModifyingText();\r
@@ -374,7 +355,6 @@ public class UseRecordDetailElement extends
                                                if (modifyingText.get(CdmStore.getDefaultLanguage()) != null) {\r
                                                        if (modifyingText.get(CdmStore.getDefaultLanguage()).getText() == "Use SubCategory") {\r
                                                                itrStateData.remove();\r
-                                                               //getEntity().removeState(existingStateData);\r
                                                        }\r
                                                }\r
                                        }\r
@@ -383,31 +363,16 @@ public class UseRecordDetailElement extends
                }\r
                if (eventSource == combo_PlantPart) {\r
                        if (combo_PlantPart.getSelection() != null) {\r
-                               boolean isChanged = false;\r
-                               //MarkerType markerType = MarkerType.NewInstance("Plant Part", "Plant Part", null);\r
-                               /*Set<Modifier> modifiers = getEntity().getModifiers();\r
-                               List<Modifier> lModifiers = new ArrayList<Modifier>(modifiers);\r
-                               ListIterator<Modifier> itrExistingModifiers = lModifiers.listIterator();*/\r
                                Iterator<Modifier> itrExistingModifiers = getEntity().getModifiers().iterator();\r
-                               //if(!modifiers.isEmpty()) {\r
-                                       //for (Modifier modifier : modifiers) {\r
                                while (itrExistingModifiers.hasNext()) {\r
                                        Modifier modifier = itrExistingModifiers.next();\r
                                        if(GetVocabularyType(modifier, "Plant Part")) {\r
-                                               //getEntity().removeModifier(modifier);\r
                                                itrExistingModifiers.remove();\r
-                                               //getEntity().addModifier(combo_PlantPart.getSelection());\r
-                                               //itrExistingModifiers.add(combo_PlantPart.getSelection());\r
-                                               isChanged = true;\r
                                        }\r
                                                \r
                                }       \r
-                               //}\r
-                               //if(isChanged == false) {\r
-                                       \r
                                Modifier plantPart = combo_PlantPart.getSelection();\r
                                getEntity().addModifier(plantPart);\r
-                               //}\r
                        } else {\r
                                Set<Modifier> modifiers = getEntity().getModifiers();\r
                                if(!modifiers.isEmpty()) {\r
@@ -418,42 +383,22 @@ public class UseRecordDetailElement extends
                                                        itr.remove();\r
                                                }\r
                                        }\r
-                                       /*for (Modifier modifier : modifiers) {\r
-                                               if(GetVocabularyType(modifier, "Plant Part")) {\r
-                                                       getEntity().removeModifier(modifier);\r
-                                               \r
-                                               }\r
-                                       }*/\r
                                }\r
                                \r
                        }\r
                }\r
                if (eventSource == combo_Country) {\r
                        if (combo_Country.getSelection() != null) {\r
-                               boolean isChanged = false;\r
-                               //Set<Modifier> modifiers = getEntity().getModifiers();\r
-                               //List<Modifier> lModifiers = new ArrayList<Modifier>(modifiers);\r
-                               //ListIterator<Modifier> itrExistingModifiers = lModifiers.listIterator();\r
-                               //ListIterator<Modifier> itrExistingModifiers = new ArrayList(getEntity().getModifiers()).listIterator();\r
-                               //if(!modifiers.isEmpty()) {\r
-                                       //for (Modifier modifier : modifiers) {\r
                                Iterator<Modifier> itrExistingModifiers = getEntity().getModifiers().iterator();\r
                                while (itrExistingModifiers.hasNext()) {\r
                                        Modifier modifier = itrExistingModifiers.next();\r
                                        if(GetVocabularyType(modifier, "Country")) {\r
-                                               //getEntity().removeModifier(modifier);\r
                                                itrExistingModifiers.remove();\r
-                                               //getEntity().addModifier(combo_PlantPart.getSelection());\r
-                                               //itrExistingModifiers.add(combo_Country.getSelection());\r
-                                               isChanged = true;\r
                                        }\r
                                                \r
                                }\r
-                               //}\r
-                               //if (isChanged == false) {\r
-                                       Modifier country = combo_Country.getSelection();\r
-                                       getEntity().addModifier(country);\r
-                               //}\r
+                               Modifier country = combo_Country.getSelection();\r
+                               getEntity().addModifier(country);\r
                        } else {\r
                                Set<Modifier> modifiers = getEntity().getModifiers();\r
                                if(!modifiers.isEmpty()) {\r
@@ -464,46 +409,27 @@ public class UseRecordDetailElement extends
                                                        itr.remove();\r
                                                }\r
                                        }\r
-                                       /*for (Modifier modifier : modifiers) {\r
-                                               if(GetVocabularyType(modifier, "Country")) {\r
-                                                       getEntity().removeModifier(modifier);\r
-                                               \r
-                                               }\r
-                                       }*/\r
                                }\r
                        }\r
                }\r
                if (eventSource == combo_HumanGroup) {\r
                        if (combo_HumanGroup.getSelection() != null) {\r
-                               //boolean toCreate = false;\r
                                boolean isHumanGroupChanged = true;\r
-                               /*Set<Modifier> modifiers = getEntity().getModifiers();\r
-                               List<Modifier> lModifiers = new ArrayList<Modifier>(modifiers);\r
-                               ListIterator<Modifier> itrExistingModifiers = lModifiers.listIterator();*/\r
-                               \r
                                for (Modifier modToCheck: getEntity().getModifiers()) {\r
                                        if(modToCheck.equals(combo_HumanGroup.getSelection()) && (GetVocabularyType(modToCheck, "Human Group"))) {\r
                                                isHumanGroupChanged = false;\r
-                                               //toCreate = false;\r
                                }\r
                                \r
                                        \r
                                }\r
-                               //if(!modifiers.isEmpty()) {\r
-                                       //for (Modifier modifier : modifiers) {\r
                                Iterator<Modifier> itrExistingModifiers = getEntity().getModifiers().iterator();\r
                                while (itrExistingModifiers.hasNext()) {\r
                                        Modifier modifier = itrExistingModifiers.next();\r
                                        if((GetVocabularyType(modifier, "Human Group") || GetVocabularyType(modifier, "Ethnic Group")) && isHumanGroupChanged) {\r
-                                               //getEntity().removeModifier(modifier);\r
                                                itrExistingModifiers.remove();\r
-                                               //getEntity().addModifier(combo_PlantPart.getSelection());\r
-                                               //itrExistingModifiers.add(combo_HumanGroup.getSelection());\r
-                                               //toCreate = true;\r
                                        }\r
                                                \r
                                }       \r
-                               //}\r
                                if(isHumanGroupChanged){\r
                                        Modifier humanGroup = combo_HumanGroup.getSelection();\r
                                        getEntity().addModifier(humanGroup);\r
@@ -530,40 +456,16 @@ public class UseRecordDetailElement extends
                }\r
                if (eventSource == combo_EthnicGroup) {\r
                        if (combo_EthnicGroup.getSelection() != null) {\r
-                               boolean isChanged = false;\r
-                               /*Set<Modifier> modifiers = getEntity().getModifiers();\r
-                               List<Modifier> lModifiers = new ArrayList<Modifier>(modifiers);\r
-                               ListIterator<Modifier> itrExistingModifiers = lModifiers.listIterator();*/\r
                                Iterator<Modifier> itrExistingModifiers = getEntity().getModifiers().iterator();\r
-                               //if(!modifiers.isEmpty()) {\r
-                                       //for (Modifier modifier : modifiers) {\r
                                        while (itrExistingModifiers.hasNext()) {\r
                                                Modifier modifier = itrExistingModifiers.next();\r
                                                if(GetVocabularyType(modifier, combo_HumanGroup.getSelection().getTitleCache())) {\r
-                                                       //getEntity().removeModifier(modifier);\r
                                                        itrExistingModifiers.remove();\r
-                                                       //getEntity().addModifier(combo_PlantPart.getSelection());\r
-                                                       //itrExistingModifiers.add(combo_EthnicGroup.getSelection());\r
-                                                       isChanged = true;\r
                                                }\r
                                                \r
                                        }       \r
-                               //}\r
-                               \r
-                               /*Set<Modifier> modifiers = getEntity().getModifiers();\r
-                               if(!modifiers.isEmpty()) {\r
-                                       for (Modifier modifier : modifiers) {\r
-                                               if(GetVocabularyType(modifier, combo_HumanGroup.getSelection().getTitleCache())) {\r
-                                                       getEntity().removeModifier(modifier);\r
-                                                       getEntity().addModifier(combo_EthnicGroup.getSelection());\r
-                                                       isChanged = true;\r
-                                               }\r
-                                       }       \r
-                               }*/\r
-                               //if(isChanged == false) {\r
                                        Modifier ethnicGroup = combo_EthnicGroup.getSelection();\r
                                        getEntity().addModifier(ethnicGroup);\r
-                               //}\r
                        } else {\r
                                Set<Modifier> modifiers = getEntity().getModifiers();\r
                                if(!modifiers.isEmpty()) {\r
@@ -576,11 +478,6 @@ public class UseRecordDetailElement extends
                                                }\r
                                        }\r
                                        \r
-                                       /*for (Modifier modifier : modifiers) {\r
-                                               if(GetVocabularyType(modifier, "Ethnic Group")) {\r
-                                                       getEntity().removeModifier(modifier);\r
-                                               }\r
-                                       }*/\r
                                }\r
                        }\r
                }\r
@@ -627,25 +524,11 @@ public class UseRecordDetailElement extends
                                                        if (modifyingText.get(CdmStore.getDefaultLanguage()) != null) {\r
                                                                if (modifyingText.get(CdmStore.getDefaultLanguage())\r
                                                                                .getText().equals("Use SubCategory")) {\r
-                                                                       //itrExistingState.remove();\r
                                                                        combo_UseSubCategory.setSelection(stateSelection("Use SubCategory"));\r
                                                                }\r
                                                        }\r
                                                }\r
-                                               /*for (StateData existingStateData : getEntity().getStates()) {\r
-                                                       \r
-                                                       if (modifyingText.get(CdmStore.getDefaultLanguage()) != null) {\r
-                                                               if (modifyingText.get(CdmStore.getDefaultLanguage())\r
-                                                                               .getText() == "Use SubCategory") {\r
-                                                                       getEntity().removeState(existingStateData);\r
-                                                                       \r
-                                                               }\r
-                                                       }\r
-                                               }*/\r
                                        }\r
-                                       \r
-                                       /*List<State> newSubCategories = setUseCategoryComboTerms(TermStore.getTerms(State.class, null, false),selectedUseCategory);\r
-                                       combo_UseSubCategory.setTerms(newSubCategories);*/\r
                                }\r
                        }\r
                }\r
@@ -667,7 +550,6 @@ public class UseRecordDetailElement extends
                                }\r
                        }\r
                }\r
-               //this.refresh();\r
        }\r
 \r
        @Override\r