Class SelectableRange


  • public final class SelectableRange
    extends java.lang.Object
    An object that represents a range of values to select from a list. A range has a start value, an end value, and whether we should pick inclusive or exclusive of the end value. The start value may be a concrete value from the set or it may be a flag that represents the start or end of the list.

    For example, to select the first item from a set the range would be;

     RANGE:
       start = FIRST_VALUE, first
       end   = LAST_VALUE, first
     
    To select the last item from a set the range would be;
     RANGE:
       start = FIRST_VALUE, last
       end   = LAST_VALUE, last
     
    To select the range of values between '10' and '15' then range would be;
     RANGE:
       start = FIRST_VALUE, '10'
       end   = LAST_VALUE, '15'
     
    Note that the the start value may not compare less than the end value. For example, start can not be 'last' and end can not be 'first'.
    Author:
    Tobias Downer
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static byte AFTER_LAST_VALUE
      Represents the various points in the set on the value to represent the set range.
      static byte BEFORE_FIRST_VALUE
      Represents the various points in the set on the value to represent the set range.
      static TObject FIRST_IN_SET
      An object that represents the first value in the set.
      static byte FIRST_VALUE
      Represents the various points in the set on the value to represent the set range.
      static SelectableRange FULL_RANGE
      The range that represents the entire range (including null).
      static SelectableRange FULL_RANGE_NO_NULLS
      The range that represents the entire range (not including null).
      static TObject LAST_IN_SET
      An object that represents the last value in the set.
      static byte LAST_VALUE
      Represents the various points in the set on the value to represent the set range.
    • Constructor Summary

      Constructors 
      Constructor Description
      SelectableRange​(byte set_start_flag, TObject start, byte set_end_flag, TObject end)
      Constructs the range.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object ob)
      Returns true if this range is equal to the given range.
      TObject getEnd()
      Returns the end of the range.
      byte getEndFlag()
      Returns the place for the range to end (either BEFORE_FIRST_VALUE or LAST VALUE).
      TObject getStart()
      Returns the start of the range.
      byte getStartFlag()
      Returns the place for the range to start (either FIRST_VALUE or AFTER_LAST_VALUE)
      java.lang.String toString()
      Outputs this range as a string.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • FIRST_IN_SET

        public static final TObject FIRST_IN_SET
        An object that represents the first value in the set.

        Note that these objects have no (NULL) type.

      • LAST_IN_SET

        public static final TObject LAST_IN_SET
        An object that represents the last value in the set.

        Note that these objects have no (NULL) type.

      • FIRST_VALUE

        public static final byte FIRST_VALUE
        Represents the various points in the set on the value to represent the set range.
        See Also:
        Constant Field Values
      • LAST_VALUE

        public static final byte LAST_VALUE
        Represents the various points in the set on the value to represent the set range.
        See Also:
        Constant Field Values
      • BEFORE_FIRST_VALUE

        public static final byte BEFORE_FIRST_VALUE
        Represents the various points in the set on the value to represent the set range.
        See Also:
        Constant Field Values
      • AFTER_LAST_VALUE

        public static final byte AFTER_LAST_VALUE
        Represents the various points in the set on the value to represent the set range.
        See Also:
        Constant Field Values
      • FULL_RANGE

        public static final SelectableRange FULL_RANGE
        The range that represents the entire range (including null).
      • FULL_RANGE_NO_NULLS

        public static final SelectableRange FULL_RANGE_NO_NULLS
        The range that represents the entire range (not including null).
    • Constructor Detail

      • SelectableRange

        public SelectableRange​(byte set_start_flag,
                               TObject start,
                               byte set_end_flag,
                               TObject end)
        Constructs the range.
    • Method Detail

      • getStart

        public TObject getStart()
        Returns the start of the range. NOTE: This may return FIRST_IN_SET or LAST_IN_SET.
      • getEnd

        public TObject getEnd()
        Returns the end of the range. NOTE: This may return FIRST_IN_SET or LAST_IN_SET.
      • getStartFlag

        public byte getStartFlag()
        Returns the place for the range to start (either FIRST_VALUE or AFTER_LAST_VALUE)
      • getEndFlag

        public byte getEndFlag()
        Returns the place for the range to end (either BEFORE_FIRST_VALUE or LAST VALUE).
      • toString

        public java.lang.String toString()
        Outputs this range as a string.
        Overrides:
        toString in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object ob)
        Returns true if this range is equal to the given range.
        Overrides:
        equals in class java.lang.Object