Program: 109579
Project: 109579
Buggy source:
@Override public void perform(GraphRewrite event,EvaluationContext context,FileModel payload){
  try {
    try (FileInputStream fis=new FileInputStream(payload.getFilePath())){
      ClassParser parser=new ClassParser(fis,payload.getFilePath());
      JavaClass javaClass=parser.parse();
      String packageName=javaClass.getPackageName();
      String qualifiedName=javaClass.getClassName();
      String simpleName=qualifiedName;
      if (packageName != null && !packageName.equals("String_Node_Str") && simpleName != null) {
        simpleName=simpleName.substring(packageName.length() + 1);
      }
      JavaFileModel classFileModel=GraphService.addTypeToModel(event.getGraphContext(),payload,JavaFileModel.class);
      classFileModel.setPackageName(packageName);
      GraphService<JavaClassModel> javaClassModelService=new GraphService<>(event.getGraphContext(),JavaClassModel.class);
      JavaClassModel javaClassModel=javaClassModelService.create();
      javaClassModel.setSimpleName(simpleName);
      javaClassModel.setPackageName(packageName);
      javaClassModel.setQualifiedName(qualifiedName);
      javaClassModel.setClassFile(classFileModel);
      for (      JavaClass iface : javaClass.getAllInterfaces()) {
        JavaClassService javaClassService=new JavaClassService(event.getGraphContext());
        JavaClassModel interfaceModel=javaClassService.getOrCreate(iface.getClassName());
        javaClassModel.addImplements(interfaceModel);
      }
      classFileModel.addJavaClass(javaClassModel);
    }
   }
 catch (  Exception e) {
    throw new WindupException("String_Node_Str" + payload.getFilePath() + "String_Node_Str"+ e.getMessage(),e);
  }
}

Fixed version (ground truth):
@Override public void perform(GraphRewrite event,EvaluationContext context,FileModel payload){
  try {
    try (FileInputStream fis=new FileInputStream(payload.getFilePath())){
      ClassParser parser=new ClassParser(fis,payload.getFilePath());
      JavaClass javaClass=parser.parse();
      String packageName=javaClass.getPackageName();
      String qualifiedName=javaClass.getClassName();
      String simpleName=qualifiedName;
      if (packageName != null && !packageName.equals("String_Node_Str") && simpleName != null) {
        simpleName=simpleName.substring(packageName.length() + 1);
      }
      JavaFileModel classFileModel=GraphService.addTypeToModel(event.getGraphContext(),payload,JavaFileModel.class);
      classFileModel.setPackageName(packageName);
      JavaClassService javaClassService=new JavaClassService(event.getGraphContext());
      JavaClassModel javaClassModel=javaClassService.getOrCreate(qualifiedName);
      javaClassModel.setSimpleName(simpleName);
      javaClassModel.setPackageName(packageName);
      javaClassModel.setQualifiedName(qualifiedName);
      javaClassModel.setClassFile(classFileModel);
      String[] interfaceNames=javaClass.getInterfaceNames();
      if (interfaceNames != null) {
        for (        String iface : interfaceNames) {
          JavaClassModel interfaceModel=javaClassService.getOrCreate(iface);
          javaClassModel.addImplements(interfaceModel);
        }
      }
      String superclassName=javaClass.getSuperclassName();
      if (Strings.isNullOrEmpty(superclassName))       javaClassModel.setExtends(javaClassService.getOrCreate(superclassName));
      classFileModel.addJavaClass(javaClassModel);
    }
   }
 catch (  Exception e) {
    throw new WindupException("String_Node_Str" + payload.getFilePath() + "String_Node_Str"+ e.getMessage(),e);
  }
}