@Override public String next() { return getValueForKey(valuesIt.nextInt()); } };
@Override public boolean advanceNextPosition() { while (positionIterator == null || !positionIterator.hasNext()) { if (!pageAndPositionsIterator.hasNext()) { return false; } PageAndPositions pageAndPositions = pageAndPositionsIterator.next(); page = pageAndPositions.getUpdateRequest().getPage(); checkState(types.size() == page.getChannelCount()); positionIterator = pageAndPositions.getPositions().iterator(); } position = positionIterator.nextInt(); return true; }
@Override public void scheduleInitial(SourceScheduler scheduler) { checkState(!initialScheduled); initialScheduled = true; int driverGroupsScheduledPerTask = 0; while (driverGroups.hasNext()) { for (int i = 0; i < allNodes.size() && driverGroups.hasNext(); i++) { int driverGroupId = driverGroups.nextInt(); checkState(!bucketNodeMap.getAssignedNode(driverGroupId).isPresent()); bucketNodeMap.assignBucketToNode(driverGroupId, allNodes.get(i)); scheduler.startLifespan(Lifespan.driverGroup(driverGroupId), partitionHandles.get(driverGroupId)); } driverGroupsScheduledPerTask++; if (concurrentLifespansPerTask.isPresent() && driverGroupsScheduledPerTask == concurrentLifespansPerTask.getAsInt()) { break; } } if (!driverGroups.hasNext()) { scheduler.noMoreLifespans(); } }
public void scheduleInitial(SourceScheduler scheduler) { checkState(!initialScheduled); initialScheduled = true; for (Map.Entry<Node, IntListIterator> entry : nodeToDriverGroupsMap.entrySet()) { IntListIterator driverGroupsIterator = entry.getValue(); int driverGroupsScheduled = 0; while (driverGroupsIterator.hasNext()) { int driverGroupId = driverGroupsIterator.nextInt(); scheduler.startLifespan(Lifespan.driverGroup(driverGroupId), partitionHandles.get(driverGroupId)); totalDriverGroupsScheduled++; driverGroupsScheduled++; if (concurrentLifespansPerTask.isPresent() && driverGroupsScheduled == concurrentLifespansPerTask.getAsInt()) { break; } } } verify(totalDriverGroupsScheduled <= driverGroupToNodeMap.size()); if (totalDriverGroupsScheduled == driverGroupToNodeMap.size()) { scheduler.noMoreLifespans(); } }
break; int driverGroupId = driverGroups.nextInt();
continue; int driverGroupId = driverGroupsIterator.nextInt(); scheduler.startLifespan(Lifespan.driverGroup(driverGroupId), partitionHandles.get(driverGroupId)); totalDriverGroupsScheduled++;
@Override public IntColumn removeMissing() { IntColumn result = copy(); result.clear(); IntListIterator iterator = data.iterator(); while (iterator.hasNext()) { final int v = iterator.nextInt(); if (!isMissingValue(v)) { result.append(v); } } return result; }
ByteBufUtils.writeVarInt(buf, itr.nextInt()); // The palette entry
@Override public RatingMatrixEntry next() { final int index = iter.nextInt(); return data.getEntry(index); }
@Test public void testSkip() { assertEquals(0, skip(IntIterators.EMPTY_ITERATOR, 5)); assertEquals(0, skip(IntIterators.EMPTY_ITERATOR, 0)); IntListIterator it = IntIterators.fromTo(0, 10); assertEquals(3, skip(it, 3)); assertEquals(3, it.nextInt()); assertEquals(6, skip(it, 100)); assertEquals(0, skip(it, 100)); assertFalse(it.hasNext()); }
@Override public int nextInt() { return i.nextInt(); } @Override
@Override public int nextInt() { return i.nextInt(); } @Override
@Override public IntListIterator listIterator(final int i) { if (i > 1 || i < 0) throw new IndexOutOfBoundsException(); final IntListIterator l = listIterator(); if (i == 1) l.nextInt(); return l; } @Override
@Override public RatingMatrixEntry next() { final int index = iter.nextInt(); return data.getEntry(index); }
@Override public String next() { return getValueForKey(valuesIt.nextInt()); } };
@Override public boolean advanceNextPosition() { while (positionIterator == null || !positionIterator.hasNext()) { if (!pageAndPositionsIterator.hasNext()) { return false; } PageAndPositions pageAndPositions = pageAndPositionsIterator.next(); page = pageAndPositions.getUpdateRequest().getPage(); checkState(types.size() == page.getChannelCount()); positionIterator = pageAndPositions.getPositions().iterator(); } position = positionIterator.nextInt(); return true; }
@Override public int indexOf(final int k) { final IntListIterator i = listIterator(); int e; while (i.hasNext()) { e = i.nextInt(); if (((k) == (e))) return i.previousIndex(); } return -1; } @Override
@Test public void testSimpleListAccess() { IntList list = new IntIntervalList(1); assertFalse(list.isEmpty()); assertEquals(1, list.size()); assertEquals(0, list.getInt(0)); try { list.getInt(1); fail("getInt(1) should throw"); } catch (IndexOutOfBoundsException e) { /* no-op */ } IntListIterator iter = list.iterator(); assertTrue(iter.hasNext()); assertFalse(iter.hasPrevious()); assertEquals(0, iter.nextInt()); assertFalse(iter.hasNext()); assertTrue(iter.hasPrevious()); assertEquals(0, iter.previousInt()); }
@Test public void testSimpleIntervalAccess() { IntList list = new IntIntervalList(42, 43); assertFalse(list.isEmpty()); assertEquals(1, list.size()); assertEquals(42, list.getInt(0)); try { list.getInt(1); fail("getInt(1) should throw"); } catch (IndexOutOfBoundsException e) { /* no-op */ } IntListIterator iter = list.iterator(); assertTrue(iter.hasNext()); assertFalse(iter.hasPrevious()); assertEquals(42, iter.nextInt()); assertFalse(iter.hasNext()); assertTrue(iter.hasPrevious()); assertEquals(42, iter.previousInt()); }
@Override public IntColumn removeMissing() { IntColumn result = copy(); result.clear(); IntListIterator iterator = data.iterator(); while (iterator.hasNext()) { final int v = iterator.nextInt(); if (!isMissingValue(v)) { result.append(v); } } return result; }