Program: 57835
Project: 57835
Buggy source:
/** 
 * Creates and initializes a new view based on its serialized form. The view is already added to the list of event receivers and senders.
 * @param gl
 * @param serView serialized form of the view to create
 * @return the created view ready to be used within the application
 */
@SuppressWarnings("String_Node_Str") private AGLView createView(GL2 gl,ASerializedView serView){
  @SuppressWarnings("String_Node_Str") Class viewClass;
  try {
    viewClass=Class.forName(serView.getViewClassType());
  }
 catch (  ClassNotFoundException e) {
    throw new IllegalStateException("String_Node_Str" + serView.getViewType());
  }
  AGLView glView=GeneralManager.get().getViewManager().createGLView(viewClass,parentGLCanvas,parentComposite,serView.getViewFrustum());
  glView.setRemoteRenderingGLView(this);
  if (glView instanceof GLHeatMap) {
    GLHeatMap heatMap=((GLHeatMap)glView);
    heatMap.setRenderTemplate(new BucketTemplate(heatMap));
  }
  if (glView instanceof ITableBasedDataDomainView) {
    ITableBasedDataDomainView tableBasedView=(ITableBasedDataDomainView)glView;
    tableBasedView.setRecordPerspectiveID(recordPerspectiveID);
    tableBasedView.setDimensionPerspectiveID(dimensionPerspectiveID);
  }
  if (glView instanceof IDataDomainBasedView<?>) {
    ((IDataDomainBasedView<IDataDomain>)glView).setDataDomain(DataDomainManager.get().getDataDomainByID(((ASerializedTopLevelDataView)serView).getDataDomainID()));
  }
  if (glView instanceof GLPathway) {
    GLPathway glPathway=(GLPathway)glView;
    glPathway.setPathway(((SerializedPathwayView)serView).getPathwayID());
    glPathway.setPathwayDataDomain((PathwayDataDomain)DataDomainManager.get().getDataDomainByType(PathwayDataDomain.DATA_DOMAIN_TYPE));
    glPathway.enablePathwayTextures(pathwayTexturesEnabled);
    glPathway.enableNeighborhood(neighborhoodEnabled);
    glPathway.enableGeneMapping(geneMappingEnabled);
    glPathway.setRecordPerspectiveID(recordPerspectiveID);
    glPathway.setDimensionPerspectiveID(dimensionPerspectiveID);
  }
  glView.initialize();
  triggerMostRecentDelta();
  return glView;
}

Fixed version (ground truth):
/** 
 * Creates and initializes a new view based on its serialized form. The view is already added to the list of event receivers and senders.
 * @param gl
 * @param serView serialized form of the view to create
 * @return the created view ready to be used within the application
 */
@SuppressWarnings("String_Node_Str") private AGLView createView(GL2 gl,ASerializedView serView){
  @SuppressWarnings("String_Node_Str") Class viewClass;
  try {
    viewClass=Class.forName(serView.getViewClassType());
  }
 catch (  ClassNotFoundException e) {
    throw new IllegalStateException("String_Node_Str" + serView.getViewType());
  }
  AGLView glView=GeneralManager.get().getViewManager().createGLView(viewClass,parentGLCanvas,parentComposite,serView.getViewFrustum());
  glView.setRemoteRenderingGLView(this);
  if (glView instanceof ITableBasedDataDomainView) {
    ITableBasedDataDomainView tableBasedView=(ITableBasedDataDomainView)glView;
    tableBasedView.setRecordPerspectiveID(recordPerspectiveID);
    tableBasedView.setDimensionPerspectiveID(dimensionPerspectiveID);
  }
  if (glView instanceof IDataDomainBasedView<?>) {
    ((IDataDomainBasedView<IDataDomain>)glView).setDataDomain(DataDomainManager.get().getDataDomainByID(((ASerializedTopLevelDataView)serView).getDataDomainID()));
  }
  if (glView instanceof GLHeatMap) {
    GLHeatMap heatMap=((GLHeatMap)glView);
    heatMap.setRenderTemplate(new BucketTemplate(heatMap));
  }
  if (glView instanceof GLPathway) {
    GLPathway glPathway=(GLPathway)glView;
    glPathway.setPathway(((SerializedPathwayView)serView).getPathwayID());
    glPathway.setPathwayDataDomain((PathwayDataDomain)DataDomainManager.get().getDataDomainByType(PathwayDataDomain.DATA_DOMAIN_TYPE));
    glPathway.enablePathwayTextures(pathwayTexturesEnabled);
    glPathway.enableNeighborhood(neighborhoodEnabled);
    glPathway.enableGeneMapping(geneMappingEnabled);
    glPathway.setRecordPerspectiveID(recordPerspectiveID);
    glPathway.setDimensionPerspectiveID(dimensionPerspectiveID);
  }
  glView.initialize();
  triggerMostRecentDelta();
  return glView;
}