Class Selector

  • Direct Known Subclasses:
    SimpleSelector, TermSelector

    public abstract class Selector
    extends java.lang.Object
    A Selector is used to convert the data returned by the storage engine into the data requested by the user. They correspond to the <selector> elements from the select clause.

    Since the introduction of aggregation, Selectors cannot be called anymore by multiple threads as they have an internal state.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  Selector.Factory
      A factory for Selector instances.
    • Constructor Summary

      Constructors 
      Constructor Description
      Selector()  
    • Constructor Detail

      • Selector

        public Selector()
    • Method Detail

      • addFetchedColumns

        public abstract void addFetchedColumns​(ColumnFilter.Builder builder)
        Add to the provided builder the column (and potential subselections) to fetch for this selection.
        Parameters:
        builder - the builder to add columns and subselections to.
      • getOutput

        public abstract java.nio.ByteBuffer getOutput​(ProtocolVersion protocolVersion)
                                               throws InvalidRequestException
        Returns the selector output.
        Parameters:
        protocolVersion - protocol version used for serialization
        Returns:
        the selector output
        Throws:
        InvalidRequestException - if a problem occurs while computing the output value
      • getType

        public abstract AbstractType<?> getType()
        Returns the Selector output type.
        Returns:
        the Selector output type.
      • reset

        public abstract void reset()
        Reset the internal state of this Selector.