@Override public IndexMappingBuffer take() { IndexMappingBuffer buf = provider.take(); if (buf != null) buf.removeContracted(); return buf; } }
@Override public IndexMappingBuffer take() { IndexMappingBuffer buffer = op.take(); if (buffer == null) return null; buffer.removeContracted(); return buffer; }
@Override public IndexMappingBuffer take() { OUTER: while (true) { final IndexMappingBuffer buffer = mainProvider.take(); if (buffer == null) return null; buffer.removeContracted(); //buffer.addSignum(cache.lastReturned.sign); final IndexMappingBufferTester tester = new IndexMappingBufferTester(buffer.export().mergeWith(cache.lastReturned)); for (Tester t : testers) if (!t.test(tester)) continue OUTER; //buffer.addSignum(cache.lastReturned.sign); return buffer; } }