public void setValueAt(final Object value, final int rowIndex, final int columnIndex) {
   final CrosstabDetail crosstabDetail = get(rowIndex);
   switch (columnIndex) {
     case 1:
       crosstabDetail.setAggregation((Class) value);
       break;
     default:
       throw new IllegalStateException();
   }
   fireTableCellUpdated(rowIndex, columnIndex);
 }
 public Object getValueAt(final int rowIndex, final int columnIndex) {
   final CrosstabDetail crosstabDimension = data.get(rowIndex);
   switch (columnIndex) {
     case 0:
       return crosstabDimension.getField();
     case 1:
       return crosstabDimension.getAggregation();
     default:
       throw new IllegalStateException();
   }
 }