Package adql.query

Class ClauseOffset

java.lang.Object
adql.query.ClauseOffset
All Implemented Interfaces:
ADQLObject

public class ClauseOffset extends Object implements ADQLObject
Object representation of an OFFSET clause.

This clause is special hence the fact it does not extend ClauseADQL. It contains only one value: the number of rows removed from the query's result head.

Important note: The OFFSET value stored in this object MUST always be positive.

Since:
2.0
  • Field Details

    • FEATURE

      public static final LanguageFeature FEATURE
      Description of this ADQL Feature.
    • value

      protected int value
      Value of the query's OFFSET.

      Important note: This value can never be negative.

  • Constructor Details

    • ClauseOffset

      public ClauseOffset(int offsetValue) throws IndexOutOfBoundsException
      Create a clause OFFSET with the given offset value.
      Parameters:
      offsetValue - Value of the query's result OFFSET.
      Throws:
      IndexOutOfBoundsException - If the given value is negative.
  • Method Details

    • getValue

      public final int getValue()
      Get the query's OFFSET.
      Returns:
      Query's OFFSET. Always positive.
    • setValue

      public void setValue(int offsetValue) throws IndexOutOfBoundsException
      Set the query's OFFSET.
      Parameters:
      offsetValue - Value of the query's result OFFSET.
      Throws:
      IndexOutOfBoundsException - If the given value is negative.
    • getCopy

      public ADQLObject getCopy() throws Exception
      Description copied from interface: ADQLObject
      Gets a (deep) copy of this ADQL object.
      Specified by:
      getCopy in interface ADQLObject
      Returns:
      The copy of this ADQL object.
      Throws:
      Exception - If there is any error during the copy.
    • getName

      public final String getName()
      Description copied from interface: ADQLObject
      Gets the name of this object in ADQL.
      Specified by:
      getName in interface ADQLObject
      Returns:
      The name of this ADQL object.
    • getFeatureDescription

      public final LanguageFeature getFeatureDescription()
      Description copied from interface: ADQLObject
      Get the description of this ADQL's Language Feature.

      Note: Getting this description is generally only useful when discovery optional features so that determining if they are allowed to be used in ADQL queries.

      Specified by:
      getFeatureDescription in interface ADQLObject
      Returns:
      Description of this ADQL object as an ADQL's feature.
    • getPosition

      public final TextPosition getPosition()
      Description copied from interface: ADQLObject
      Gets the position of this object/token in the ADQL query.

      By default, no position should be set.

      Specified by:
      getPosition in interface ADQLObject
      Returns:
      Position of this ADQL item in the ADQL query, or NULL if not written originally in the query (for example, if added afterwards).
    • setPosition

      public final void setPosition(TextPosition newPosition)
      Sets the position at which this ClauseOffset has been found in the original ADQL query string.
      Parameters:
      position - Position of this ClauseOffset.
    • adqlIterator

      public ADQLIterator adqlIterator()
      Description copied from interface: ADQLObject
      Gets an iterator on the intern ADQL objects.

      Note: The returned iterator is particularly used by a ISearchHandler extension to browse a whole ADQL tree.

      Specified by:
      adqlIterator in interface ADQLObject
      Returns:
      An ADQL objects iterator.
      See Also:
    • toADQL

      public String toADQL()
      Description copied from interface: ADQLObject
      Gets the ADQL expression of this object.
      Specified by:
      toADQL in interface ADQLObject
      Returns:
      The corresponding ADQL expression.