/**
  * Determines if a proposed name is already used.
  *
  * @param name the proposed name
  * @param fields the list of fields already named
  * @return true if name already used
  */
 protected static boolean nameConflict(final String name, final List<CobFileInputField> fields) {
   for (CobFileInputField field : fields) {
     if (field.getName().equals(name)) {
       return true;
     }
   }
   return false;
 }
  /**
   * Generates row meta structure from a fields array.
   *
   * @param fields the fields array
   * @param origin the data origin
   * @param rowMeta the row meta to generate
   */
  public static void fieldsToRowMeta(
      final CobFileInputField[] fields, final String origin, final RowMetaInterface rowMeta) {

    rowMeta.clear(); // Start with a clean slate, eats the input

    for (int i = 0; i < fields.length; i++) {
      CobFileInputField field = fields[i];

      ValueMetaInterface valueMeta = new ValueMeta(field.getName(), field.getType());
      valueMeta.setConversionMask(field.getFormat());
      valueMeta.setLength(field.getLength());
      valueMeta.setPrecision(field.getPrecision());
      valueMeta.setConversionMask(field.getFormat());
      valueMeta.setDecimalSymbol(field.getDecimalSymbol());
      valueMeta.setGroupingSymbol(field.getGroupSymbol());
      valueMeta.setCurrencySymbol(field.getCurrencySymbol());
      valueMeta.setTrimType(field.getTrimType());
      valueMeta.setOrigin(origin);

      rowMeta.addValueMeta(valueMeta);
    }
  }