src/main/java/com/helger/genericode/excel/ExcelReadOptions.java
@Nonnull
  public ExcelReadOptions <USE_TYPE> addColumn (@Nonnegative final int nIndex,
                                                @Nonnull @Nonempty final String sColumnID,
                                                @Nonnull final USE_TYPE eUseType,
                                                @Nonnull @Nonempty final String sDataType,
                                                final boolean bKeyColumn)
  {
    ValueEnforcer.isGE0 (nIndex, "Index");

    final Integer aIndex = Integer.valueOf (nIndex);
    if (m_aColumns.containsKey (aIndex))
      throw new IllegalArgumentException ("The column at index " + nIndex + " is already mapped!");
    m_aColumns.put (aIndex, new ExcelReadColumn <> (nIndex, sColumnID, eUseType, sDataType, bKeyColumn));
    return this;
  }
@Nonnull
  public ExcelReadOptions <USE_TYPE> addColumn (@Nonnegative final int nIndex,
                                                @Nonnull @Nonempty final String sColumnID,
                                                @Nonnull final USE_TYPE eUseType,
                                                @Nonnull @Nonempty final String sDataType,
                                                final boolean bKeyColumn)
  {
    ValueEnforcer.isGE0 (nIndex, "Index");

    final Integer aIndex = Integer.valueOf (nIndex);
    if (m_aColumns.containsKey (aIndex))
      throw new IllegalArgumentException ("The column at index " + nIndex + " is already mapped!");
    m_aColumns.put (aIndex, new ExcelReadColumn <> (nIndex, sColumnID, eUseType, sDataType, bKeyColumn));
    return this;
  }
@ Nonnull public ExcelReadOptions < USE_TYPE > addColumn ( @ Nonnegative final int nIndex , @ Nonnull @ Nonempty final String sColumnID , @ Nonnull final USE_TYPE eUseType , @ Nonnull @ Nonempty final String sDataType , final boolean bKeyColumn ) { ValueEnforcer . isGE0 ( nIndex , "Index" ) ; final Integer aIndex = Integer . valueOf ( nIndex ) ; if ( m_aColumns . containsKey ( aIndex ) ) throw new IllegalArgumentException ( "The column at index " + nIndex + " is already mapped!" ) ; m_aColumns . put ( aIndex , new ExcelReadColumn <> ( nIndex , sColumnID , eUseType , sDataType , bKeyColumn ) ) ; return this ; }
Add a single column definition.

@param nIndex
The 0-based index of the column in Excel.
@param sColumnID
The ID of the column in Genericode.
@param eUseType
Optional or required?
@param sDataType
The XSD data type to be used in Genericode. Use "string" if you're
unsure.
@param bKeyColumn
<code>true</code> if this is a key column, <code>false</code>
otherwise. Only required columns can be key columns.
@return this
Add a single column definition .