Program: 59388
Project: 59388
Buggy source:
public OCCChecksumMetadata(String identifier,JavaType aspectName,PhysicalTypeMetadata governorPhysicalTypeMetadata,JpaActiveRecordMetadata entityMetadata,MemberDetailsScanner memberDetailsScanner,TypeManagementService typeManagementService,PersistenceMemberLocator persistenceMemberLocator){
  super(identifier);
  Validate.notNull(aspectName,"String_Node_Str");
  Validate.notNull(governorPhysicalTypeMetadata,"String_Node_Str");
  this.aspectName=aspectName;
  this.governorPhysicalTypeMetadata=governorPhysicalTypeMetadata;
  this.memberDetailsScanner=memberDetailsScanner;
  this.persistenceMemberLocator=persistenceMemberLocator;
  PhysicalTypeDetails physicalTypeDetails=governorPhysicalTypeMetadata.getMemberHoldingTypeDetails();
  if (!(physicalTypeDetails instanceof ClassOrInterfaceTypeDetails)) {
    valid=false;
  }
 else {
    governorTypeDetails=(ClassOrInterfaceTypeDetails)physicalTypeDetails;
  }
  this.destination=governorTypeDetails.getName();
  Validate.isTrue(isValid(identifier),"String_Node_Str" + identifier + "String_Node_Str");
  if (entityMetadata != null) {
    this.entityMetadata=entityMetadata;
    if (!isValid()) {
      return;
    }
    AnnotationMetadata annotation=MemberFindingUtils.getDeclaredTypeAnnotation(governorTypeDetails,new JavaType(GvNIXEntityOCCChecksum.class.getName()));
    if (annotation != null) {
      AutoPopulationUtils.populate(this,annotation);
    }
    FieldMetadata field=getChecksumField();
    MethodMetadata getter=getChecksumAccessor();
    MethodMetadata setter=getChecksumMutator();
    addChecksumFieldToEntity(field,getter,setter,typeManagementService);
    itdFileContents=generateITDContents(field,persistenceMemberLocator);
  }
}

Fixed version (ground truth):
public OCCChecksumMetadata(String identifier,JavaType aspectName,PhysicalTypeMetadata governorPhysicalTypeMetadata,JpaActiveRecordMetadata entityMetadata,MemberDetailsScanner memberDetailsScanner,TypeManagementService typeManagementService,PersistenceMemberLocator persistenceMemberLocator,FieldMetadata idField,FieldMetadata versionField){
  super(identifier);
  Validate.notNull(aspectName,"String_Node_Str");
  Validate.notNull(governorPhysicalTypeMetadata,"String_Node_Str");
  this.aspectName=aspectName;
  this.governorPhysicalTypeMetadata=governorPhysicalTypeMetadata;
  this.memberDetailsScanner=memberDetailsScanner;
  this.persistenceMemberLocator=persistenceMemberLocator;
  this.idField=idField;
  this.versionField=versionField;
  PhysicalTypeDetails physicalTypeDetails=governorPhysicalTypeMetadata.getMemberHoldingTypeDetails();
  if (!(physicalTypeDetails instanceof ClassOrInterfaceTypeDetails)) {
    valid=false;
  }
 else {
    governorTypeDetails=(ClassOrInterfaceTypeDetails)physicalTypeDetails;
  }
  this.destination=governorTypeDetails.getName();
  Validate.isTrue(isValid(identifier),"String_Node_Str" + identifier + "String_Node_Str");
  if (entityMetadata != null) {
    this.entityMetadata=entityMetadata;
    if (!isValid()) {
      return;
    }
    AnnotationMetadata annotation=MemberFindingUtils.getDeclaredTypeAnnotation(governorTypeDetails,new JavaType(GvNIXEntityOCCChecksum.class.getName()));
    if (annotation != null) {
      AutoPopulationUtils.populate(this,annotation);
    }
    FieldMetadata field=getChecksumField();
    MethodMetadata getter=getChecksumAccessor();
    MethodMetadata setter=getChecksumMutator();
    addChecksumFieldToEntity(field,getter,setter,typeManagementService);
    itdFileContents=generateITDContents(field,persistenceMemberLocator);
  }
}