fix NPE bug and termloading bug for Usage Records #4247
[taxeditor.git] / eu.etaxonomy.taxeditor.editor / src / main / java / eu / etaxonomy / taxeditor / editor / view / descriptive / DescriptiveContentProvider.java
index ddbb3525abc1c795239678ee843aa39b4dae0983..3b61acf112972f846bdfc73b74512f132f871edb 100644 (file)
@@ -11,21 +11,18 @@ import java.util.Set;
 import org.eclipse.jface.viewers.ITreeContentProvider;
 import org.eclipse.jface.viewers.Viewer;
 
-import eu.etaxonomy.cdm.api.service.ITermService;
 import eu.etaxonomy.cdm.model.common.Marker;
-import eu.etaxonomy.cdm.model.common.MarkerType;
 import eu.etaxonomy.cdm.model.description.DescriptionBase;
 import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
 import eu.etaxonomy.cdm.model.description.Feature;
 import eu.etaxonomy.cdm.model.description.FeatureTree;
 import eu.etaxonomy.cdm.model.description.IDescribable;
 import eu.etaxonomy.cdm.model.description.IndividualsAssociation;
-import eu.etaxonomy.taxeditor.editor.UsageTermCollection;
 import eu.etaxonomy.taxeditor.model.FeatureNodeContainer;
 import eu.etaxonomy.taxeditor.model.FeatureNodeContainerTree;
 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
-import eu.etaxonomy.taxeditor.store.CdmStore;
 import eu.etaxonomy.taxeditor.store.TermStore;
+import eu.etaxonomy.taxeditor.store.UsageTermCollection;
 
 /**
  * <p>DescriptiveContentProvider class.</p>
@@ -158,11 +155,10 @@ public class DescriptiveContentProvider implements ITreeContentProvider {
         List<DescriptionBase<?>> resultDescriptions = new ArrayList<DescriptionBase<?>>();
         for(DescriptionBase<?> description : elementDescriptions){
                        if(! description.isImageGallery()){
-                               MarkerType useMarkertype = (MarkerType) CdmStore.getService(ITermService.class).find(UsageTermCollection.uuidUseMarkerType);
                                Set<Marker> descriptionMarkers = description.getMarkers();
                                if(descriptionMarkers != null && !descriptionMarkers.isEmpty()) {
                                        for (Marker marker: descriptionMarkers) {
-                                               if(!(marker.getMarkerType().equals(useMarkertype))) {
+                                               if(marker.getMarkerType() != null && !(marker.getMarkerType().getUuid().equals(UsageTermCollection.uuidUseMarkerType))) {
                                                        resultDescriptions.add(description);
                                                }
                                        }
@@ -175,27 +171,18 @@ public class DescriptiveContentProvider implements ITreeContentProvider {
         return resultDescriptions;
     }
 
-       /* (non-Javadoc)
-        * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
-        */
        /** {@inheritDoc} */
        @Override
     public Object getParent(Object element) {
                return null;
        }
 
-       /* (non-Javadoc)
-        * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-        */
        /** {@inheritDoc} */
        @Override
     public Object[] getElements(Object inputElement) {
                return getChildren(inputElement);
        }
 
-       /* (non-Javadoc)
-        * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-        */
        /**
         * <p>dispose</p>
         */
@@ -204,9 +191,6 @@ public class DescriptiveContentProvider implements ITreeContentProvider {
                featureNodeContainerCache.clear();
        }
 
-       /* (non-Javadoc)
-        * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-        */
        /** {@inheritDoc} */
        @Override
     public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {}