use of com.vaticle.typedb.core.reasoner.resolution.framework.Request in project grakn by graknlabs.
the class DisjunctionResolver method requestStateReiterate.
@Override
protected RequestState requestStateReiterate(Request fromUpstream, RequestState requestStatePrior, int newIteration) {
LOG.debug("{}: Updating RequestState for iteration '{}'", name(), newIteration);
assert newIteration > requestStatePrior.iteration() && fromUpstream.partialAnswer().isCompound();
RequestState requestStateNextIteration = requestStateForIteration(requestStatePrior, newIteration);
for (Driver<ConjunctionResolver.Nested> conjunctionResolver : downstreamResolvers.keySet()) {
Compound.Nestable downstream = fromUpstream.partialAnswer().asCompound().filterToNestable(conjunctionRetrievedIds(conjunctionResolver));
Request request = Request.create(driver(), conjunctionResolver, downstream);
requestStateNextIteration.downstreamManager().addDownstream(request);
}
return requestStateNextIteration;
}
Aggregations