java.lang.Object
org.apache.jena.atlas.iterator.IteratorSlotted<org.apache.jena.sparql.engine.binding.Binding>
org.apache.jena.sparql.service.enhancer.impl.util.QueryIterSlottedBase
org.apache.jena.sparql.service.enhancer.impl.QueryIterWrapperCache
All Implemented Interfaces:
Iterator<org.apache.jena.sparql.engine.binding.Binding>, org.apache.jena.atlas.io.Printable, org.apache.jena.atlas.iterator.IteratorCloseable<org.apache.jena.sparql.engine.binding.Binding>, org.apache.jena.atlas.lib.Closeable, org.apache.jena.sparql.engine.QueryIterator, org.apache.jena.sparql.util.PrintSerializable

public class QueryIterWrapperCache extends QueryIterSlottedBase
  • Constructor Details

    • QueryIterWrapperCache

      public QueryIterWrapperCache(org.apache.jena.sparql.engine.QueryIterator qIter, int batchSize, ServiceResponseCache cache, ServiceCacheKeyFactory cacheKeyFactory, org.apache.jena.sparql.service.enhancer.impl.Batch<Integer,PartitionRequest<org.apache.jena.sparql.engine.binding.Binding>> inputBatch, org.apache.jena.sparql.core.Var idxVar, org.apache.jena.graph.Node serviceNode)
  • Method Details

    • prepareNextBatch

      public void prepareNextBatch()
      The tricky part is that we first need to consume rhs and write it to the cache. When rhs is consumed a post-action that updates slice metadata has to be performed; but this action depends on the next item in lhs.