class DefaultExecutionSlotAllocator implements ExecutionSlotAllocator {

	@VisibleForTesting
	static Set<AllocationID> computeAllPriorAllocationIds(
			Collection<ExecutionVertexSchedulingRequirements> executionVertexSchedulingRequirements) {
		return executionVertexSchedulingRequirements
			.stream()
			.map(ExecutionVertexSchedulingRequirements::getPreviousAllocationId)
			.filter(Objects::nonNull)
			.collect(Collectors.toSet());
	}

	public  DefaultExecutionSlotAllocator(
			SlotProvider slotProvider,
			InputsLocationsRetriever inputsLocationsRetriever,
			Time allocationTimeout);

}