private final DominoColumnInfo findColumnByName(final String columnName) {
   for (DominoColumnInfo col : columnInfo_) {
     if (col.getItemName().equalsIgnoreCase(columnName)) {
       return col;
     }
   }
   return null;
 }
  public DominoModelList(
      final Database database, final String viewName, final String category, final Class<E> clazz) {
    super(clazz);

    server_ = database.getServer();
    filePath_ = database.getFilePath();
    viewName_ = viewName;
    category_ = category;

    // Gather the view info now
    View view = database.getView(viewName_);
    invalid_ = view == null;

    columnInfo_ = invalid_ ? null : DominoColumnInfo.fromView(view);
  }
  @Override
  public int getResortType(final String columnName) {
    if (category_ != null) {
      return TabularDataModel.RESORT_NONE;
    }

    for (DominoColumnInfo col : columnInfo_) {
      if (col.getItemName().equalsIgnoreCase(columnName)) {
        if (col.isResortAscending() && col.isResortDescending()) {
          return TabularDataModel.RESORT_BOTH;
        } else if (col.isResortAscending()) {
          return TabularDataModel.RESORT_ASCENDING;
        } else if (col.isResortDescending()) {
          return TabularDataModel.RESORT_DESCENDING;
        }
        return TabularDataModel.RESORT_NONE;
      }
    }
    return TabularDataModel.RESORT_NONE;
  }
 @Override
 public boolean isColumnCategorized(final String columnName) {
   DominoColumnInfo colInfo = findColumnByName(columnName);
   return colInfo != null && colInfo.isCategory();
 }