Program: 58561
Project: 58561
Buggy source:
@Override public AGLView createGLEventListener(ECommandType type,GLCaleydoCanvas glCanvas,final String label,final IViewFrustum viewFrustum){
  GeneralManager.get().getLogger().log(new Status(IStatus.INFO,IGeneralManager.PLUGIN_ID,"String_Node_Str" + type + "String_Node_Str"+ label+ "String_Node_Str"));
  AGLView glView=null;
  for (  IGLViewCreator glViewCreator : glViewCreators) {
    if (type.name().equals(ECommandType.CREATE_GL_SCATTERPLOT) && glViewCreator.getViewType().equals("String_Node_Str")) {
      glView=glViewCreator.createGLEventListener(type,glCanvas,label,viewFrustum);
      break;
    }
  }
  if (glView == null) {
switch (type) {
case CREATE_GL_HEAT_MAP_3D:
      glView=new GLHeatMap(glCanvas,label,viewFrustum);
    break;
case CREATE_GL_PROPAGATION_HEAT_MAP_3D:
  glView=new GLBookmarkManager(glCanvas,label,viewFrustum);
break;
case CREATE_GL_TEXTURE_HEAT_MAP_3D:
glView=new GLHierarchicalHeatMap(glCanvas,label,viewFrustum);
break;
case CREATE_GL_PATHWAY_3D:
glView=new GLPathway(glCanvas,label,viewFrustum);
break;
case CREATE_GL_PARALLEL_COORDINATES:
glView=new GLParallelCoordinates(glCanvas,label,viewFrustum);
break;
case CREATE_GL_GLYPH:
glView=new GLGlyph(glCanvas,label,viewFrustum);
break;
case CREATE_GL_GLYPH_SLIDER:
glView=new GLGlyphSliderView(glCanvas,label,viewFrustum);
break;
case CREATE_GL_TISSUE:
glView=new GLTissue(glCanvas,label,viewFrustum);
break;
case CREATE_GL_BUCKET_3D:
glView=new GLRemoteRendering(glCanvas,label,viewFrustum,ARemoteViewLayoutRenderStyle.LayoutMode.BUCKET);
break;
case CREATE_GL_JUKEBOX_3D:
glView=new GLRemoteRendering(glCanvas,label,viewFrustum,ARemoteViewLayoutRenderStyle.LayoutMode.JUKEBOX);
break;
case CREATE_GL_DATA_FLIPPER:
glView=new GLDataFlipper(glCanvas,label,viewFrustum);
break;
case CREATE_GL_TISSUE_VIEW_BROWSER:
glView=new GLTissueViewBrowser(glCanvas,label,viewFrustum);
break;
case CREATE_GL_PATHWAY_VIEW_BROWSER:
glView=new GLPathwayViewBrowser(glCanvas,label,viewFrustum);
break;
case CREATE_GL_RADIAL_HIERARCHY:
glView=new GLRadialHierarchy(glCanvas,label,viewFrustum);
break;
case CREATE_GL_HISTOGRAM:
glView=new GLHistogram(glCanvas,label,viewFrustum);
break;
case CREATE_GL_GROUPER:
glView=new GLGrouper(glCanvas,label,viewFrustum);
break;
case CREATE_GL_DENDROGRAM_HORIZONTAL:
glView=new GLDendrogram(glCanvas,label,viewFrustum,true);
break;
case CREATE_GL_DENDROGRAM_VERTICAL:
glView=new GLDendrogram(glCanvas,label,viewFrustum,false);
break;
default :
throw new RuntimeException("String_Node_Str" + type.toString() + "String_Node_Str");
}
}
if (glView == null) {
throw new RuntimeException("String_Node_Str");
}
registerGLEventListenerByGLCanvas(glCanvas,glView);
return glView;
}

Fixed version (ground truth):
@Override public AGLView createGLEventListener(ECommandType type,GLCaleydoCanvas glCanvas,final String label,final IViewFrustum viewFrustum){
  GeneralManager.get().getLogger().log(new Status(IStatus.INFO,IGeneralManager.PLUGIN_ID,"String_Node_Str" + type + "String_Node_Str"+ label+ "String_Node_Str"));
  AGLView glView=null;
  for (  IGLViewCreator glViewCreator : glViewCreators) {
    if (glViewCreator.getViewType().equals("String_Node_Str")) {
      glView=glViewCreator.createGLEventListener(type,glCanvas,label,viewFrustum);
      break;
    }
  }
  if (glView == null) {
switch (type) {
case CREATE_GL_HEAT_MAP_3D:
      glView=new GLHeatMap(glCanvas,label,viewFrustum);
    break;
case CREATE_GL_PROPAGATION_HEAT_MAP_3D:
  glView=new GLBookmarkManager(glCanvas,label,viewFrustum);
break;
case CREATE_GL_TEXTURE_HEAT_MAP_3D:
glView=new GLHierarchicalHeatMap(glCanvas,label,viewFrustum);
break;
case CREATE_GL_PATHWAY_3D:
glView=new GLPathway(glCanvas,label,viewFrustum);
break;
case CREATE_GL_PARALLEL_COORDINATES:
glView=new GLParallelCoordinates(glCanvas,label,viewFrustum);
break;
case CREATE_GL_GLYPH:
glView=new GLGlyph(glCanvas,label,viewFrustum);
break;
case CREATE_GL_GLYPH_SLIDER:
glView=new GLGlyphSliderView(glCanvas,label,viewFrustum);
break;
case CREATE_GL_TISSUE:
glView=new GLTissue(glCanvas,label,viewFrustum);
break;
case CREATE_GL_BUCKET_3D:
glView=new GLRemoteRendering(glCanvas,label,viewFrustum,ARemoteViewLayoutRenderStyle.LayoutMode.BUCKET);
break;
case CREATE_GL_JUKEBOX_3D:
glView=new GLRemoteRendering(glCanvas,label,viewFrustum,ARemoteViewLayoutRenderStyle.LayoutMode.JUKEBOX);
break;
case CREATE_GL_DATA_FLIPPER:
glView=new GLDataFlipper(glCanvas,label,viewFrustum);
break;
case CREATE_GL_TISSUE_VIEW_BROWSER:
glView=new GLTissueViewBrowser(glCanvas,label,viewFrustum);
break;
case CREATE_GL_PATHWAY_VIEW_BROWSER:
glView=new GLPathwayViewBrowser(glCanvas,label,viewFrustum);
break;
case CREATE_GL_RADIAL_HIERARCHY:
glView=new GLRadialHierarchy(glCanvas,label,viewFrustum);
break;
case CREATE_GL_HISTOGRAM:
glView=new GLHistogram(glCanvas,label,viewFrustum);
break;
case CREATE_GL_GROUPER:
glView=new GLGrouper(glCanvas,label,viewFrustum);
break;
case CREATE_GL_DENDROGRAM_HORIZONTAL:
glView=new GLDendrogram(glCanvas,label,viewFrustum,true);
break;
case CREATE_GL_DENDROGRAM_VERTICAL:
glView=new GLDendrogram(glCanvas,label,viewFrustum,false);
break;
default :
throw new RuntimeException("String_Node_Str" + type.toString() + "String_Node_Str");
}
}
if (glView == null) {
throw new RuntimeException("String_Node_Str");
}
registerGLEventListenerByGLCanvas(glCanvas,glView);
return glView;
}