Class MappedColumnConstraint<T,​M>

  • Type Parameters:
    T - The column type
    M - the converted (mapped) type
    All Implemented Interfaces:
    ColumnConstraint<T>, java.lang.Comparable<ColumnConstraint<T>>

    public class MappedColumnConstraint<T,​M>
    extends java.lang.Object
    implements ColumnConstraint<T>
    Class that maps one type of column constraint into another. Typically, these are created automatically based on ColumnTypeMapper that are discovered by the system. For example, if you have a column type of "Foo", and you create a ColumnTypeMapper<Foo, String>, then all the string constraints would now be available that column.
    • Constructor Detail

      • MappedColumnConstraint

        public MappedColumnConstraint​(ColumnTypeMapper<T,​M> mapper,
                                      ColumnConstraint<M> delegate)
        Constructs a new Mapped ColumnConstraint
        Parameters:
        mapper - a mapper from from the column type to a mapped type.
        delegate - the column constraint of the mapped type.
    • Method Detail

      • accepts

        public boolean accepts​(T value,
                               TableFilterContext context)
        Description copied from interface: ColumnConstraint
        Compares value against the current constraint value to determine acceptance; true if value satisfies the constraints' value, false otherwise
        Specified by:
        accepts in interface ColumnConstraint<T>
        Parameters:
        value - the column value to be tested.
        context - provides additional information about the the table and its data. This allows the filter to base its decision on information other than just the column value.
        Returns:
        true if the column value passes the constraint, false otherwise
      • getName

        public java.lang.String getName()
        Description copied from interface: ColumnConstraint
        Returns the name of the constraint
        Specified by:
        getName in interface ColumnConstraint<T>
        Returns:
        the name of the constraint.
      • getColumnType

        public java.lang.Class<T> getColumnType()
        Description copied from interface: ColumnConstraint
        Returns the column type that this constraint can be used to filter.
        Specified by:
        getColumnType in interface ColumnConstraint<T>
        Returns:
        the column type
      • getEditor

        public ColumnConstraintEditor<T> getEditor​(ColumnData<T> columnDataSource)
        Description copied from interface: ColumnConstraint
        Returns a ColumnConstraintEditor which will provide gui components for users to edit the constraint values.
        Specified by:
        getEditor in interface ColumnConstraint<T>
        Parameters:
        columnDataSource - This provides the constraint with access to the column data in the table model as well as the DataProvider of the table (if it has one)
        Returns:
        A columnConstraintEditor for editing the constraints value.
      • getGroup

        public java.lang.String getGroup()
        Description copied from interface: ColumnConstraint
        Returns a "group" string that is used to logically group column constraints for presentation to the user
        Specified by:
        getGroup in interface ColumnConstraint<T>
        Returns:
        the group this constraint belongs to.
      • getConstraintValueString

        public java.lang.String getConstraintValueString()
        Description copied from interface: ColumnConstraint
        Returns the "value" of the constraint in string form

        This is used for serializing the constraint.

        Specified by:
        getConstraintValueString in interface ColumnConstraint<T>
        Returns:
        the "value" of the constraint in string form.
      • parseConstraintValue

        public ColumnConstraint<T> parseConstraintValue​(java.lang.String valueString,
                                                        java.lang.Object dataSource)
        Description copied from interface: ColumnConstraint
        Parses the constraint value string for deserialization purposes.
        Specified by:
        parseConstraintValue in interface ColumnConstraint<T>
        Parameters:
        valueString - the value of the constraint in string form.
        dataSource - the DataSource from the Table.
        Returns:
        a new ColumnConstraint
      • copy

        public ColumnConstraint<T> copy​(ColumnConstraint<M> newDelegate)
        Creates a copy of this class using the same mapper but with a different mapped delegate.
        Parameters:
        newDelegate - the new M type delegate column constraint.
        Returns:
        a copy of this class using the same mapper but with a different mapped delegate.
      • getDelegate

        public ColumnConstraint<M> getDelegate()
        Returns the delegate constraint (current value for this mapped constraint)
        Returns:
        the delegate constraint.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object