diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java index 4242a63e5bdfd4574ab276575e6d749cf198e518..fd6e7ffe34dc0db47ce0f8b36fc7243e1c3e13ae 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java @@ -16,7 +16,6 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.data; -import static ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatabaseModificationKind.createOrDelete; import static ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatabaseModificationKind.edit; import java.util.List; @@ -375,8 +374,7 @@ public abstract class AbstractExternalDataGrid getGridRelevantModifications(ObjectKind.DATA_SET); relevantMods.add(edit(ObjectKind.EXPERIMENT)); relevantMods.add(edit(ObjectKind.SAMPLE)); - relevantMods.add(edit(ObjectKind.VOCABULARY_TERM)); - relevantMods.add(createOrDelete(ObjectKind.VOCABULARY_TERM)); + DatabaseModificationKind.addAny(relevantMods, ObjectKind.VOCABULARY_TERM); return relevantMods; } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserToolbar.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserToolbar.java index db970b212bd71376501e3f3e318af3eca248b962..e33181cfc3d760e920cd2153e5519ad509e158d5 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserToolbar.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserToolbar.java @@ -146,7 +146,8 @@ final class SampleBrowserToolbar extends ToolBar implements ISampleCriteriaProvi public DatabaseModificationKind[] getRelevantModifications() { return new DatabaseModificationKind[] - { createOrDelete(ObjectKind.SAMPLE_TYPE), createOrDelete(ObjectKind.GROUP), + { createOrDelete(ObjectKind.SAMPLE_TYPE), edit(ObjectKind.SAMPLE_TYPE), + createOrDelete(ObjectKind.GROUP), createOrDelete(ObjectKind.PROPERTY_TYPE_ASSIGNMENT), edit(ObjectKind.PROPERTY_TYPE_ASSIGNMENT) }; } @@ -154,10 +155,9 @@ final class SampleBrowserToolbar extends ToolBar implements ISampleCriteriaProvi public void update(Set<DatabaseModificationKind> observedModifications, IDataRefreshCallback entityTypeRefreshCallback) { - if (observedModifications.contains(createOrDelete(ObjectKind.SAMPLE_TYPE)) - || observedModifications - .contains(createOrDelete(ObjectKind.PROPERTY_TYPE_ASSIGNMENT)) - || observedModifications.contains(edit(ObjectKind.PROPERTY_TYPE_ASSIGNMENT))) + if (containsAnyModificationsOf(observedModifications, ObjectKind.SAMPLE_TYPE) + || containsAnyModificationsOf(observedModifications, + ObjectKind.PROPERTY_TYPE_ASSIGNMENT)) { selectSampleTypeCombo.refreshStore(entityTypeRefreshCallback); } else @@ -171,6 +171,13 @@ final class SampleBrowserToolbar extends ToolBar implements ISampleCriteriaProvi } + private boolean containsAnyModificationsOf(Set<DatabaseModificationKind> observedModifications, + ObjectKind objectKind) + { + return observedModifications.contains(createOrDelete(objectKind)) + || observedModifications.contains(edit(objectKind)); + } + public void setEntityTypes(Set<SampleType> availableEntityTypes) { // TODO 2009-08-27, Tomasz Pylak: use this info to narrow properties when displaying "all" diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DatabaseModificationKind.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DatabaseModificationKind.java index a2648932dfe2a0dd3239d45e0b41bbf39f70f1f1..d97360883582186e3bdf12eb240c819827d5ed8e 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DatabaseModificationKind.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DatabaseModificationKind.java @@ -17,6 +17,7 @@ package ch.systemsx.cisd.openbis.generic.shared.basic.dto; import java.util.ArrayList; +import java.util.Collection; import java.util.List; import com.google.gwt.user.client.rpc.IsSerializable; @@ -55,6 +56,13 @@ public class DatabaseModificationKind implements IsSerializable { } + public static final void addAny(Collection<DatabaseModificationKind> result, + ObjectKind objectType) + { + result.add(createOrDelete(objectType)); + result.add(edit(objectType)); + } + public static final DatabaseModificationKind[] any(ObjectKind objectType) { List<DatabaseModificationKind> result = new ArrayList<DatabaseModificationKind>();