Class SelectableRange

java.lang.Object
com.mckoi.database.SelectableRange

public final class SelectableRange extends 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 final byte
    Represents the various points in the set on the value to represent the set range.
    static final byte
    Represents the various points in the set on the value to represent the set range.
    static final TObject
    An object that represents the first value in the set.
    static final byte
    Represents the various points in the set on the value to represent the set range.
    static final SelectableRange
    The range that represents the entire range (including null).
    static final SelectableRange
    The range that represents the entire range (not including null).
    static final TObject
    An object that represents the last value in the set.
    static final byte
    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

    Modifier and Type
    Method
    Description
    boolean
    Returns true if this range is equal to the given range.
    Returns the end of the range.
    byte
    Returns the place for the range to end (either BEFORE_FIRST_VALUE or LAST VALUE).
    Returns the start of the range.
    byte
    Returns the place for the range to start (either FIRST_VALUE or AFTER_LAST_VALUE)
    Outputs this range as a string.

    Methods inherited from class java.lang.Object

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

    • 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:
    • 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:
    • 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:
    • 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:
    • 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 Details

    • SelectableRange

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

    • 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 String toString()
      Outputs this range as a string.
      Overrides:
      toString in class Object
    • equals

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