Class RowBasedColumnComparator<T>

  • Type Parameters:
    T - the row type
    All Implemented Interfaces:
    java.util.Comparator<T>
    Direct Known Subclasses:
    ThreadedTableColumnComparator

    public class RowBasedColumnComparator<T>
    extends java.lang.Object
    implements java.util.Comparator<T>
    A comparator for a specific column that will take in a T row object, extract the value for the given column and then call the give comparator
    • Constructor Summary

      Constructors 
      Constructor Description
      RowBasedColumnComparator​(RowObjectTableModel<T> model, int sortColumn, java.util.Comparator<java.lang.Object> comparator)
      Constructs this class with the given column comparator that will get called after the given row is converted to the column value for the given sort column
      RowBasedColumnComparator​(RowObjectTableModel<T> model, int sortColumn, java.util.Comparator<java.lang.Object> comparator, java.util.Comparator<java.lang.Object> backupRowComparator)
      This version of the constructor is used for the default case where the client will supply a backup row comparator that will get called if the given column comparator returns a '0' value.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int compare​(T t1, T t2)  
      protected java.lang.Object getColumnValue​(T t)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface java.util.Comparator

        equals, reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
    • Field Detail

      • sortColumn

        protected int sortColumn
      • columnComparator

        protected java.util.Comparator<java.lang.Object> columnComparator
      • backupRowComparator

        protected java.util.Comparator<java.lang.Object> backupRowComparator
    • Constructor Detail

      • RowBasedColumnComparator

        public RowBasedColumnComparator​(RowObjectTableModel<T> model,
                                        int sortColumn,
                                        java.util.Comparator<java.lang.Object> comparator)
        Constructs this class with the given column comparator that will get called after the given row is converted to the column value for the given sort column
        Parameters:
        model - the table model using this comparator
        sortColumn - the column being sorted
        comparator - the column comparator to use for sorting
      • RowBasedColumnComparator

        public RowBasedColumnComparator​(RowObjectTableModel<T> model,
                                        int sortColumn,
                                        java.util.Comparator<java.lang.Object> comparator,
                                        java.util.Comparator<java.lang.Object> backupRowComparator)
        This version of the constructor is used for the default case where the client will supply a backup row comparator that will get called if the given column comparator returns a '0' value.
        Parameters:
        model - the table model using this comparator
        sortColumn - the column being sorted
        comparator - the column comparator to use for sorting
        backupRowComparator - the backup row comparator
    • Method Detail

      • compare

        public int compare​(T t1,
                           T t2)
        Specified by:
        compare in interface java.util.Comparator<T>
      • getColumnValue

        protected java.lang.Object getColumnValue​(T t)