@Override public void untake(ConsumerWorkingSet workingSet, List<? extends PartitionKey> partitionKeys) { doExpiry(workingSet); for (PartitionKey key : partitionKeys) { ConsumablePartition consumablePartition = workingSet.lookup(key); // don't need to assertInProgress because untake() already does that consumablePartition.untake(); } }
@Override public void doFinish(ConsumerWorkingSet workingSet, List<? extends PartitionKey> partitionKeys, boolean succeeded) { doExpiry(workingSet); if (succeeded) { commit(workingSet, partitionKeys); } else { abort(workingSet, partitionKeys); } }
@Override public PartitionConsumerResult doConsume(ConsumerWorkingSet workingSet, PartitionAcceptor acceptor) { doExpiry(workingSet); workingSet.populate(getPartitionedFileSet(), getConfiguration()); List<PartitionDetail> toConsume = selectPartitions(acceptor, workingSet); return new PartitionConsumerResult(toConsume, removeDiscardedPartitions(workingSet)); }