Implements suggested preliminary solution for #2399
authorn.hoffmann <n.hoffmann@localhost>
Wed, 25 May 2011 11:30:00 +0000 (11:30 +0000)
committern.hoffmann <n.hoffmann@localhost>
Wed, 25 May 2011 11:30:00 +0000 (11:30 +0000)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/IPreferenceKeys.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/TaxonomicEditorGeneralPreferences.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/store/SearchManager.java

index f9e5e09172fb490abeda16c1828278bd9dda5b8e..0e33b138d278917524c66f4c3c0e7600683a1d64 100644 (file)
@@ -10,6 +10,8 @@
 
 package eu.etaxonomy.taxeditor.preference;
 
 
 package eu.etaxonomy.taxeditor.preference;
 
+import eu.etaxonomy.cdm.model.occurrence.FieldObservation;
+
 /**
  * <p>IPreferenceKeys interface.</p>
  *
 /**
  * <p>IPreferenceKeys interface.</p>
  *
@@ -105,4 +107,9 @@ public interface IPreferenceKeys {
        public static final String OPENURL_IMAGE_MAX_WIDTH = "eu.etaxonomy.taxeditor.openUrlImageMaxWidth";
 
        public static final String OPENURL_IMAGE_MAX_HEIGHT = "eu.etaxonomy.taxeditor.openUrlImageMaxHeight";
        public static final String OPENURL_IMAGE_MAX_WIDTH = "eu.etaxonomy.taxeditor.openUrlImageMaxWidth";
 
        public static final String OPENURL_IMAGE_MAX_HEIGHT = "eu.etaxonomy.taxeditor.openUrlImageMaxHeight";
+
+       /**
+        * Whether the occurrence bulk editor should show {@link FieldObservation} objects
+        */
+       public static final String BULK_EDITOR_OCCURRENCE_SHOW_FIELD_OBSERVATIONS = "eu.etaxonomy.taxeditor.bulkeditor.occurrence.showFieldObservations";
 }
 }
index 92a530963d47788e2ef33c8202e83992ea95aadc..08e8d5bce07e43d5dd33159e05e6c223425c50a6 100644 (file)
@@ -37,7 +37,7 @@ public class TaxonomicEditorGeneralPreferences extends
         */
        @Override
        protected void createFieldEditors() {
         */
        @Override
        protected void createFieldEditors() {
-               addField(new BooleanFieldEditor(PreferencesUtil.SHOW_DEBUG_INFORMATION,
+               addField(new BooleanFieldEditor(IPreferenceKeys.SHOW_DEBUG_INFORMATION,
                                "Show UUID and object ID in supplemental data view.",
                                getFieldEditorParent()));
                addField(new BooleanFieldEditor(
                                "Show UUID and object ID in supplemental data view.",
                                getFieldEditorParent()));
                addField(new BooleanFieldEditor(
@@ -54,7 +54,9 @@ public class TaxonomicEditorGeneralPreferences extends
                addField(new BooleanFieldEditor(
                                IPreferenceKeys.SHOW_EXPERIMENTAL_FEATURES,
                                "Show experimental features", getFieldEditorParent()));
                addField(new BooleanFieldEditor(
                                IPreferenceKeys.SHOW_EXPERIMENTAL_FEATURES,
                                "Show experimental features", getFieldEditorParent()));
-
+               addField(new BooleanFieldEditor(IPreferenceKeys.BULK_EDITOR_OCCURRENCE_SHOW_FIELD_OBSERVATIONS,
+                               "Show FieldObservations in Bulk Editor.",
+                               getFieldEditorParent()));
        }
 
        /*
        }
 
        /*
index 035f7d5a5eec8e4fb74c02d2034a0cd11ba8532b..952bf050309e23747a8b27e727d2a71919093380 100644 (file)
@@ -35,9 +35,12 @@ import eu.etaxonomy.cdm.model.common.User;
 import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
 import eu.etaxonomy.cdm.model.name.NameRelationship;
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
 import eu.etaxonomy.cdm.model.name.NameRelationship;
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.cdm.model.reference.Reference;
 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.cdm.model.reference.Reference;
 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
+import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 
 /**
  * @author n.hoffmann
 
 /**
  * @author n.hoffmann
@@ -145,6 +148,11 @@ public class SearchManager {
         * @return a {@link java.util.List} object.
         */
        public List<SpecimenOrObservationBase> findOccurrences(IIdentifiableEntityServiceConfigurator configurator){
         * @return a {@link java.util.List} object.
         */
        public List<SpecimenOrObservationBase> findOccurrences(IIdentifiableEntityServiceConfigurator configurator){
+               // by default we do not show field observations. This may be configured via preferences
+               boolean showFieldObservations = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.BULK_EDITOR_OCCURRENCE_SHOW_FIELD_OBSERVATIONS);
+               if(! showFieldObservations){
+                       configurator.setClazz(DerivedUnitBase.class);
+               }
                if(checkLargeResult(CdmStore.getService(IOccurrenceService.class).countByTitle(configurator))){
                        return CdmStore.getService(IOccurrenceService.class).findByTitle(configurator).getRecords();
                }
                if(checkLargeResult(CdmStore.getService(IOccurrenceService.class).countByTitle(configurator))){
                        return CdmStore.getService(IOccurrenceService.class).findByTitle(configurator).getRecords();
                }