Class IndexedMappingFeatureIterator

Object
IndexedMappingFeatureIterator
All Implemented Interfaces:
Closeable, AutoCloseable, Iterator<Feature>, IMappingFeatureIterator, FeatureIterator<Feature>
Direct Known Subclasses:
PartialIndexedMappingFeatureIterator, TotalIndexedMappingFeatureIterator

public abstract class IndexedMappingFeatureIterator extends Object implements IMappingFeatureIterator
Base class for Indexed Iterators
Author:
Fernando MiƱo (Geosolutions
  • Field Details

  • Constructor Details

  • Method Details

    • selectExecutionPlan

      protected void selectExecutionPlan()
      Analyze query and select a plan: 1.- All fields indexed, execute all query on index layer 2.- Mixed fields indexed and not, execute indexed operators and re-map query to database
    • unrollIndexes

      protected Query unrollIndexes(Query query)
    • unrollSortBy

      protected SortBy[] unrollSortBy(SortBy[] sortArray)
    • unrollIndex

      public static PropertyName unrollIndex(PropertyName expression, FeatureTypeMapping mapping)
    • unrollFilter

      protected Filter unrollFilter(Filter filter)
    • getFidStepList

      public XPathUtil.StepList getFidStepList()
    • getFidAttrMap

      public AttributeMapping getFidAttrMap()
    • getFidIndexName

      public String getFidIndexName()
    • isDenormalized

      protected boolean isDenormalized()
    • getIndexIterator

      protected IndexIdIterator getIndexIterator()
    • initializeIndexIterator

      protected void initializeIndexIterator() throws IOException
      Initialize the index FeatureCollection and iterator
      Throws:
      IOException
    • transformQueryToIdsOnly

      protected Query transformQueryToIdsOnly()
      Convert query to retrieve only id field, no other fields
      Returns:
      converted Query
    • getIndexQueryProperties

      protected List<PropertyName> getIndexQueryProperties()
    • getNextSourceIdList

      protected List<String> getNextSourceIdList()
      Extracts next id list from index iterator
      Returns:
      list of id string
    • getIndexedAttribute

      protected static AttributeMapping getIndexedAttribute(FeatureTypeMapping mapping, String xpath)
      Search for indexed attribute, including on Nested Features
      Returns:
      indexed attribute xpath, or null if not found