X-Git-Url: https://dev.e-taxonomy.eu/gitweb/taxeditor.git/blobdiff_plain/9f1df71ff493de7c5c2f9879d9a133dd4e43d997..e433d1f3a5f89fdea4c876103742aa1c4e9e3a3f:/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateContentProvider.java?ds=sidebyside diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateContentProvider.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateContentProvider.java index 070344b8c..27b80b47a 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateContentProvider.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateContentProvider.java @@ -1,16 +1,15 @@ package eu.etaxonomy.taxeditor.view.derivateSearch; import java.util.ArrayList; +import java.util.Collection; import java.util.LinkedHashSet; import java.util.List; import java.util.Set; -import java.util.UUID; import org.eclipse.jface.viewers.ITreeContentProvider; import org.eclipse.jface.viewers.TreeNode; import org.eclipse.jface.viewers.Viewer; -import eu.etaxonomy.cdm.api.service.IOccurrenceService; import eu.etaxonomy.cdm.model.molecular.DnaSample; import eu.etaxonomy.cdm.model.molecular.Sequence; import eu.etaxonomy.cdm.model.molecular.SingleRead; @@ -18,7 +17,6 @@ import eu.etaxonomy.cdm.model.occurrence.DerivationEvent; import eu.etaxonomy.cdm.model.occurrence.DerivedUnit; import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase; import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType; -import eu.etaxonomy.taxeditor.store.CdmStore; public class DerivateContentProvider implements ITreeContentProvider { @@ -48,11 +46,10 @@ public class DerivateContentProvider implements ITreeContentProvider { @Override public Object[] getElements(Object inputElement) { rootNodes = new ArrayList(); - if(inputElement instanceof Set){ - for (Object o: (Set)inputElement) { - if(o instanceof UUID){ - UUID uuid = (UUID)o; - SpecimenOrObservationBase rootElement = CdmStore.getService(IOccurrenceService.class).load(uuid); + if(inputElement instanceof Collection){ + for (Object o: (Collection)inputElement) { + if(o instanceof SpecimenOrObservationBase){ + SpecimenOrObservationBase rootElement = (SpecimenOrObservationBase)o; if(rootElement!=null){ rootNodes.add(new TreeNode(rootElement)); } @@ -79,7 +76,6 @@ public class DerivateContentProvider implements ITreeContentProvider { node.setParent(currentnode); children.add(node); } - return children.toArray(); } else if(value instanceof Sequence){ Set singleReads = ((Sequence) value).getSingleReads(); @@ -90,7 +86,8 @@ public class DerivateContentProvider implements ITreeContentProvider { } return children.toArray(); } - else if(value instanceof SpecimenOrObservationBase){ + + if(value instanceof SpecimenOrObservationBase){ List derivates = getDerivates((SpecimenOrObservationBase) value); for (DerivedUnit derivedUnit:derivates) { TreeNode node = new TreeNode(derivedUnit); @@ -125,7 +122,8 @@ public class DerivateContentProvider implements ITreeContentProvider { else if(element instanceof Sequence){ return !((Sequence)element).getSingleReads().isEmpty(); } - else if(element instanceof SpecimenOrObservationBase){ + + if(element instanceof SpecimenOrObservationBase){ SpecimenOrObservationBase specimenOrObservation = (SpecimenOrObservationBase)element; for(DerivationEvent event:specimenOrObservation.getDerivationEvents()){ if(!event.getDerivatives().isEmpty()){