Program: 105700
Project: 105700
Buggy source:
@Override public void validateCustomParameters(ServiceOfferingVO serviceOffering,Map<String,String> customParameters){
  if (customParameters.size() != 0) {
    if (serviceOffering.getCpu() == null) {
      String cpuNumber=customParameters.get(UsageEventVO.DynamicParameters.cpuNumber.name());
      if ((cpuNumber == null) || (NumbersUtil.parseInt(cpuNumber,-1) <= 0 || NumbersUtil.parseInt(cpuNumber,-1) > 2147483647)) {
        throw new InvalidParameterValueException("String_Node_Str");
      }
    }
 else     if (customParameters.containsKey(UsageEventVO.DynamicParameters.cpuNumber.name())) {
      throw new InvalidParameterValueException("String_Node_Str" + serviceOffering.getId() + "String_Node_Str");
    }
    if (serviceOffering.getSpeed() == null) {
      String cpuSpeed=customParameters.get(UsageEventVO.DynamicParameters.cpuSpeed.name());
      if ((cpuSpeed == null) || (NumbersUtil.parseInt(cpuSpeed,-1) <= 0 || NumbersUtil.parseInt(cpuSpeed,-1) > 2147483647)) {
        throw new InvalidParameterValueException("String_Node_Str");
      }
    }
 else     if (customParameters.containsKey(UsageEventVO.DynamicParameters.cpuSpeed.name())) {
      throw new InvalidParameterValueException("String_Node_Str" + serviceOffering.getId() + "String_Node_Str");
    }
    if (serviceOffering.getRamSize() == null) {
      String memory=customParameters.get(UsageEventVO.DynamicParameters.memory.name());
      if (memory == null || (NumbersUtil.parseInt(memory,-1) < 32 || NumbersUtil.parseInt(memory,-1) > 2147483647)) {
        throw new InvalidParameterValueException("String_Node_Str");
      }
    }
 else     if (customParameters.containsKey(UsageEventVO.DynamicParameters.memory.name())) {
      throw new InvalidParameterValueException("String_Node_Str" + serviceOffering.getId() + "String_Node_Str");
    }
  }
 else {
    throw new InvalidParameterValueException("String_Node_Str");
  }
}

Fixed version (ground truth):
@Override public void validateCustomParameters(ServiceOfferingVO serviceOffering,Map<String,String> customParameters){
  if (customParameters.size() != 0) {
    if (serviceOffering.getCpu() == null) {
      String cpuNumber=customParameters.get(UsageEventVO.DynamicParameters.cpuNumber.name());
      if ((cpuNumber == null) || (NumbersUtil.parseInt(cpuNumber,-1) <= 0)) {
        throw new InvalidParameterValueException("String_Node_Str");
      }
    }
 else     if (customParameters.containsKey(UsageEventVO.DynamicParameters.cpuNumber.name())) {
      throw new InvalidParameterValueException("String_Node_Str" + serviceOffering.getId() + "String_Node_Str");
    }
    if (serviceOffering.getSpeed() == null) {
      String cpuSpeed=customParameters.get(UsageEventVO.DynamicParameters.cpuSpeed.name());
      if ((cpuSpeed == null) || (NumbersUtil.parseInt(cpuSpeed,-1) <= 0)) {
        throw new InvalidParameterValueException("String_Node_Str");
      }
    }
 else     if (customParameters.containsKey(UsageEventVO.DynamicParameters.cpuSpeed.name())) {
      throw new InvalidParameterValueException("String_Node_Str" + serviceOffering.getId() + "String_Node_Str");
    }
    if (serviceOffering.getRamSize() == null) {
      String memory=customParameters.get(UsageEventVO.DynamicParameters.memory.name());
      if (memory == null || (NumbersUtil.parseInt(memory,-1) < 32)) {
        throw new InvalidParameterValueException("String_Node_Str");
      }
    }
 else     if (customParameters.containsKey(UsageEventVO.DynamicParameters.memory.name())) {
      throw new InvalidParameterValueException("String_Node_Str" + serviceOffering.getId() + "String_Node_Str");
    }
  }
 else {
    throw new InvalidParameterValueException("String_Node_Str");
  }
}