code: @Override
      public void setModel(final TableModel dataModel) {
          if (!(dataModel instanceof HistoryReferencesTableModel)) {
              throw new IllegalArgumentException("Parameter dataModel must be a subclass of HistoryReferencesTableModel.");
          }
  
          if (dataModel instanceof PagingTableModel) {
              setMaximumRowsForTableConfiguration(((PagingTableModel<?>) dataModel).getMaxPageSize());
          }
  
          super.setModel(dataModel);
      }
docs: {@inheritDoc}
  <p>
  Overridden to only accept models of type {@code HistoryReferencesTableModel}. If the given model extends from
  {@code PagingTableModel} the maximum page size will be used to set the maximum rows for table configuration.
  
  @throws IllegalArgumentException if the {@code dataModel} is not a {@code HistoryReferencesTableModel}.
  @see PagingTableModel
  @see PagingTableModel#getMaxPageSize()
  @see #setMaximumRowsForTableConfiguration(int)