/**
   * Set Cell on the table
   *
   * @param pRowIndex
   * @param pColumnIndex
   * @param pCell
   * @throws PuException
   * @throws IndexOutOfBoundsException
   */
  public void setCell(int pRowIndex, int pColumnIndex, TCell pCell)
      throws PuException, IndexOutOfBoundsException {

    TRow row = _mListOfRows.get(pRowIndex);

    if (!row.getCell(pColumnIndex).getValueType().equals(pCell.getValueType())) {
      throw new PuException(
          _mContext,
          "New cell value type does not match expected value type."
              + " Expected type: "
              + row.getCell(pColumnIndex).getValueType()
              + " but was: "
              + pCell.getValueType());
    }
    row.setCell(pColumnIndex, pCell);
  }