/** * Verify the expected solutions. * * @param expected * The expected solutions. * @param runningQuery * The running query whose solutions will be verified. */ static public void assertSameSolutions( final IBindingSet[] expected, final IRunningQuery runningQuery) { assertSameSolutions(expected, runningQuery.iterator(), runningQuery); }
/** * Verify the expected solutions. * * @param expected * The expected solutions. * @param runningQuery * The running query whose solutions will be verified. */ static public void assertSameSolutions( final IBindingSet[] expected, final IRunningQuery runningQuery) { assertSameSolutions(expected, runningQuery.iterator(), runningQuery); }
/** * Verifies that the iterator visits the specified objects in some arbitrary * ordering and that the iterator is exhausted once all expected objects * have been visited. The implementation uses a selection without * replacement "pattern". * <p> * Note: If the objects being visited do not correctly implement hashCode() * and equals() then this can fail even if the desired objects would be * visited. When this happens, fix the implementation classes. */ static public void assertSameSolutionsAnyOrder(final String msg, final IBindingSet[] expected, final IRunningQuery runningQuery) { final ICloseableIterator<IBindingSet[]> itr = runningQuery .iterator(); assertSameSolutionsAnyOrder(msg, expected, itr, runningQuery/* future */); }
/** * Verifies that the iterator visits the specified objects in some arbitrary * ordering and that the iterator is exhausted once all expected objects * have been visited. The implementation uses a selection without * replacement "pattern". * <p> * Note: If the objects being visited do not correctly implement hashCode() * and equals() then this can fail even if the desired objects would be * visited. When this happens, fix the implementation classes. */ static public void assertSameSolutionsAnyOrder(final String msg, final IBindingSet[] expected, final IRunningQuery runningQuery) { final ICloseableIterator<IBindingSet[]> itr = runningQuery .iterator(); assertSameSolutionsAnyOrder(msg, expected, itr, runningQuery/* future */); }
/** * Dechunkify the running query and monitor the Sesame iterator. * * @param runningQuery * The {@link IRunningQuery}. * * @return An {@link ICloseableIterator} which has been dechunkified. */ private static ICloseableIterator<IBindingSet> iterator( final IRunningQuery runningQuery) { // The iterator draining the query solutions. final ICloseableIterator<IBindingSet[]> it1 = runningQuery .iterator(); // Dechunkify the original iterator final ICloseableIterator<IBindingSet> it2 = new Dechunkerator<IBindingSet>(it1); // Monitor IRunningQuery and cancel if Sesame iterator is closed. final ICloseableIterator<IBindingSet> it3 = new RunningQueryCloseableIterator<IBindingSet>(runningQuery, it2); return it3; }
/** * Dechunkify the running query and monitor the Sesame iterator. * * @param runningQuery * The {@link IRunningQuery}. * * @return An {@link ICloseableIterator} which has been dechunkified. */ private static ICloseableIterator<IBindingSet> iterator( final IRunningQuery runningQuery) { // The iterator draining the query solutions. final ICloseableIterator<IBindingSet[]> it1 = runningQuery .iterator(); // Dechunkify the original iterator final ICloseableIterator<IBindingSet> it2 = new Dechunkerator<IBindingSet>(it1); // Monitor IRunningQuery and cancel if Sesame iterator is closed. final ICloseableIterator<IBindingSet> it3 = new RunningQueryCloseableIterator<IBindingSet>(runningQuery, it2); return it3; }
runningQuery.iterator()); while (itr.hasNext()) { bset = itr.next();
runningQuery.iterator()); while (itr.hasNext()) { bset = itr.next();
final ICloseableIterator<IBindingSet[]> itr = q.iterator(); try { while (itr.hasNext()) {
final ICloseableIterator<IBindingSet[]> itr = q.iterator(); try { while (itr.hasNext()) {
subquerySolutionItr = runningSubquery.iterator();
subquerySolutionItr = runningSubquery.iterator();
subquerySolutionItr = runningSubquery.iterator();
subquerySolutionItr = runningSubquery.iterator();
subquerySolutionItr = runningSubquery.iterator();
subquerySolutionItr = runningSubquery.iterator();
subquerySolutionItr = runningSubquery.iterator();
subquerySolutionItr = runningSubquery.iterator();
final ICloseableIterator<IBindingSet[]> itr = runningQuery.iterator(); assertFalse(runningQuery.isDone());
final ICloseableIterator<IBindingSet[]> itr = runningQuery.iterator(); assertFalse(runningQuery.isDone());