/** * Add the IV to the list of terms to materialize, and also * delegate to {@link #handleSid(SidIV, Collection, boolean)} if it's a * SidIV. */ static private void handleIV(final IV<?, ?> iv, final Collection<IV<?, ?>> ids) { if (iv instanceof SidIV) { handleSid((SidIV<?>) iv, ids); } ids.add(iv); }
/** * Resolve a chunk of {@link IBindingSet}s into a chunk of * {@link IBindingSet}s in which term identifiers have been resolved to * {@link BigdataValue}s. * * @param required * The variable(s) to be materialized. When <code>null</code>, * everything will be materialized. If a zero length array is * given, then NOTHING will be materialized and the outputs * solutions will be empty. * @param lex * The lexicon reference. * @param chunk * The chunk of solutions whose variables will be materialized. * * @return A new chunk of solutions in which those variables have been * materialized. */ private IBindingSet[] resolveChunk(//final IVariable<?>[] required, final LexiconRelation lex,// final IBindingSet[] chunk// ) { return resolveChunk(queryId, lex, chunk, required, termsChunkSize, blobsChunkSize); }
handleIV(iv, ids); handleIV(iv, ids); for (IBindingSet e : chunk) { final IBindingSet f = getBindingSet(e, required, terms);
new BigdataBindingSetResolverator(db, it2, runningQuery.getQueryId(), required, chunkCapacity, chunkOfChunksCapacity, chunkTimeout, termsChunkSize, blobsChunkSize).start(db .getExecutorService()));
/** * Sids need to be handled specially because their individual ISPO * components might need materialization as well. */ static private void handleSid(final SidIV<?> sid, final Collection<IV<?, ?>> ids) { final ISPO spo = sid.getInlineValue(); handleIV(spo.s(), ids); handleIV(spo.p(), ids); handleIV(spo.o(), ids); if (spo.c() != null) { handleIV(spo.c(), ids); } }
handleIV(iv, ids); handleIV(iv, ids); for (IBindingSet e : chunk) { final IBindingSet f = getBindingSet(e, required, terms);
new BigdataBindingSetResolverator(db, it2, runningQuery.getQueryId(), required, chunkCapacity, chunkOfChunksCapacity, chunkTimeout, termsChunkSize, blobsChunkSize).start(db .getExecutorService()));
/** * Sids need to be handled specially because their individual ISPO * components might need materialization as well. */ static private void handleSid(final SidIV<?> sid, final Collection<IV<?, ?>> ids) { final ISPO spo = sid.getInlineValue(); handleIV(spo.s(), ids); handleIV(spo.p(), ids); handleIV(spo.o(), ids); if (spo.c() != null) { handleIV(spo.c(), ids); } }
/** * Resolve a chunk of {@link IBindingSet}s into a chunk of * {@link IBindingSet}s in which term identifiers have been resolved to * {@link BigdataValue}s. * * @param required * The variable(s) to be materialized. When <code>null</code>, * everything will be materialized. If a zero length array is * given, then NOTHING will be materialized and the outputs * solutions will be empty. * @param lex * The lexicon reference. * @param chunk * The chunk of solutions whose variables will be materialized. * * @return A new chunk of solutions in which those variables have been * materialized. */ private IBindingSet[] resolveChunk(//final IVariable<?>[] required, final LexiconRelation lex,// final IBindingSet[] chunk// ) { return resolveChunk(queryId, lex, chunk, required, termsChunkSize, blobsChunkSize); }
/** * Add the IV to the list of terms to materialize, and also * delegate to {@link #handleSid(SidIV, Collection, boolean)} if it's a * SidIV. */ static private void handleIV(final IV<?, ?> iv, final Collection<IV<?, ?>> ids) { if (iv instanceof SidIV) { handleSid((SidIV<?>) iv, ids); } ids.add(iv); }
/** * Resolve a chunk of {@link IBindingSet}s into a chunk of * {@link IBindingSet}s in which term identifiers have been resolved to * {@link BigdataValue}s. */ @Override protected IBindingSet[] resolveChunk(final IBindingSet[] chunk) { return resolveChunk(/*required, */state.getLexiconRelation(), chunk); }
/** * Resolve a chunk of {@link IBindingSet}s into a chunk of * {@link IBindingSet}s in which term identifiers have been resolved to * {@link BigdataValue}s. */ @Override protected IBindingSet[] resolveChunk(final IBindingSet[] chunk) { return resolveChunk(/*required, */state.getLexiconRelation(), chunk); }