Class InListConstraint

  • All Implemented Interfaces:
    SQLStringable

    public class InListConstraint
    extends AbstractConstraint
    A representation of a constraint where an AbstractValue is IN a list of constants.
    Author:
    Matthew Wakeling
    • Constructor Detail

      • InListConstraint

        public InListConstraint​(AbstractValue left)
        Constructor for InListConstraint object.
        Parameters:
        left - the AbstractValue on the left of the constraint
    • Method Detail

      • add

        public void add​(Constant c)
        Add constants to the list.
        Parameters:
        c - a Constant
      • addAll

        public void addAll​(java.util.Collection<? extends Constant> c)
        Adds a Collection of Constants to the list.
        Parameters:
        c - a Collection of Constants
      • getLeft

        public AbstractValue getLeft()
        Returns the left AbstractValue.
        Returns:
        an AbstractValue
      • getRight

        public java.util.Set<Constant> getRight()
        Returns the right Set of Constants.
        Returns:
        a Set
      • getSQLString

        public java.lang.String getSQLString()
        Returns a String representation of this InListConstraint object, suitable for forming part of an SQL Query.
        Specified by:
        getSQLString in interface SQLStringable
        Specified by:
        getSQLString in class AbstractConstraint
        Returns:
        the String representation
      • compare

        public int compare​(AbstractConstraint obj,
                           java.util.Map<AbstractTable,​AbstractTable> tableMap,
                           java.util.Map<AbstractTable,​AbstractTable> reverseTableMap)
        Compare this InListConstraint with another AbstractConstraint, ignoring aliases in member fields and tables. Compare this AbstractConstraint with another, ignoring aliases in member fields and tables.
        Specified by:
        compare in class AbstractConstraint
        Parameters:
        obj - an AbstractConstraint to compare to
        tableMap - a Map from tables in this constraint to tables in obj
        reverseTableMap - a reverse of tableMap
        Returns:
        INDEPENDENT, IMPLIED_BY, IMPLIES, EQUAL, OPPOSITE, EXCLUDES, or OR, depending on the constraints.
      • hashCode

        public int hashCode()
        Overrides Object.hashCode().
        Specified by:
        hashCode in class AbstractConstraint
        Returns:
        an arbitrary integer based on the contents of the Constraint