Class StringColumnConstraint

java.lang.Object
docking.widgets.table.constraint.StringColumnConstraint
All Implemented Interfaces:
ColumnConstraint<String>, Comparable<ColumnConstraint<String>>
Direct Known Subclasses:
StringContainsColumnConstraint, StringEndsWithColumnConstraint, StringMatchesColumnConstraint, StringStartsWithColumnConstraint

public abstract class StringColumnConstraint extends Object implements ColumnConstraint<String>
Base class for various String constraints.
  • Field Details

    • matchesPattern

      protected Pattern matchesPattern
  • Constructor Details

    • StringColumnConstraint

      protected StringColumnConstraint(String patternString, String errorMessage)
      Constructs a new StringColumnConstraint using the given pattern and patternString.
      Parameters:
      patternString - the user entered string to form the pattern used to accept column values.
      errorMessage - the text to display in an empty editor textfield.
    • StringColumnConstraint

      protected StringColumnConstraint(String patternString)
      Constructs a new StringColumnConstraint using the given pattern and patternString, using the default hint text that explains that you can use globbing characters.
      Parameters:
      patternString - the user entered string to form the pattern used to accept column values.
  • Method Details

    • getGroup

      public 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<String>
      Returns:
      the group this constraint belongs to.
    • accepts

      public boolean accepts(String 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<String>
      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
    • generateMatchesPattern

      protected abstract Pattern generateMatchesPattern(String value)
    • generateFindsPattern

      protected Pattern generateFindsPattern()
    • getEditor

      public ColumnConstraintEditor<String> getEditor(ColumnData<String> 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<String>
      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.
    • copy

      public abstract ColumnConstraint<String> copy(String newPatternString)
      subclasses must override to generate new versions of themselves but with a new pattern string.
      Parameters:
      newPatternString - the new string to use for creating the match pattern.
      Returns:
      a new ColumnConstraint that is the same type as this constraint but with a new range defined.
    • getPatternString

      public String getPatternString()
      Returns the pattern string for this constraint.
      Returns:
      the pattern string for this constraint.
    • getColumnType

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

      public String getConstraintValueTooltip()
      Description copied from interface: ColumnConstraint
      returns a description of the constraint suitable for displaying in a tooltip
      Specified by:
      getConstraintValueTooltip in interface ColumnConstraint<String>
      Returns:
      a description of the constraint.
    • getConstraintValueString

      public 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<String>
      Returns:
      the "value" of the constraint in string form.
    • parseConstraintValue

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

      public String toString()
      Overrides:
      toString in class Object
    • hashCode

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

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • getHighlightMatcher

      public Matcher getHighlightMatcher(String value)
    • isValidPatternString

      public boolean isValidPatternString(String value)