Program: 88551
Project: 88551
Buggy source:
public static File createEntityFile(Class<?> clazz,ContentType contentType,Collection nodes,JsonBlobType jsonBlobType) throws IOException {
  File file=File.createTempFile(clazz.getSimpleName() + "String_Node_Str" + contentType.getMimeType().replace('/','-')+ "String_Node_Str",null);
  file.deleteOnExit();
  String arrayName="String_Node_Str";
  if (jsonBlobType == JsonBlobType.PROJECT) {
    arrayName="String_Node_Str";
  }
 else   if (jsonBlobType == JsonBlobType.REF) {
    arrayName="String_Node_Str";
  }
  try (FileOutputStream outputStream=new FileOutputStream(file);JsonGenerator jsonGenerator=JacksonUtils.getJsonFactory().createGenerator(outputStream)){
    jsonGenerator.writeStartObject();
    jsonGenerator.writeArrayFieldStart(arrayName);
    for (    Object node : nodes) {
      if (node instanceof ObjectNode && jsonBlobType == JsonBlobType.ELEMENT_JSON || jsonBlobType == JsonBlobType.ORG || jsonBlobType == JsonBlobType.PROJECT || jsonBlobType == JsonBlobType.REF) {
        jsonGenerator.writeObject(node);
      }
 else       if (node instanceof String && jsonBlobType == JsonBlobType.ELEMENT_ID) {
        jsonGenerator.writeStartObject();
        jsonGenerator.writeStringField(MDKConstants.ID_KEY,(String)node);
        jsonGenerator.writeEndObject();
      }
 else {
        throw new IOException("String_Node_Str");
      }
    }
    jsonGenerator.writeEndArray();
    jsonGenerator.writeStringField("String_Node_Str","String_Node_Str");
    jsonGenerator.writeStringField("String_Node_Str",MDKPlugin.VERSION);
    jsonGenerator.writeEndObject();
  }
   System.out.println(file.getPath());
  return file;
}

Fixed version (ground truth):
public static File createEntityFile(Class<?> clazz,ContentType contentType,Collection nodes,JsonBlobType jsonBlobType) throws IOException {
  File file=File.createTempFile(clazz.getSimpleName() + "String_Node_Str" + contentType.getMimeType().replace('/','-')+ "String_Node_Str",null);
  file.deleteOnExit();
  String arrayName="String_Node_Str";
  if (jsonBlobType == JsonBlobType.PROJECT) {
    arrayName="String_Node_Str";
  }
 else   if (jsonBlobType == JsonBlobType.REF) {
    arrayName="String_Node_Str";
  }
  try (FileOutputStream outputStream=new FileOutputStream(file);JsonGenerator jsonGenerator=JacksonUtils.getJsonFactory().createGenerator(outputStream)){
    jsonGenerator.writeStartObject();
    jsonGenerator.writeArrayFieldStart(arrayName);
    for (    Object node : nodes) {
      if (node instanceof ObjectNode && jsonBlobType == JsonBlobType.ELEMENT_JSON || jsonBlobType == JsonBlobType.ORG || jsonBlobType == JsonBlobType.PROJECT || jsonBlobType == JsonBlobType.REF) {
        jsonGenerator.writeObject(node);
      }
 else       if (node instanceof String && jsonBlobType == JsonBlobType.ELEMENT_ID) {
        jsonGenerator.writeStartObject();
        jsonGenerator.writeStringField(MDKConstants.ID_KEY,(String)node);
        jsonGenerator.writeEndObject();
      }
 else {
        throw new IOException("String_Node_Str");
      }
    }
    jsonGenerator.writeEndArray();
    jsonGenerator.writeStringField("String_Node_Str","String_Node_Str");
    jsonGenerator.writeStringField("String_Node_Str",MDKPlugin.VERSION);
    jsonGenerator.writeEndObject();
  }
   System.out.println("String_Node_Str" + file.getPath());
  return file;
}