if (requiresLocalFile) {
tempFile = copyToTempFile(in, workData);
in = new FileInputStream(tempFile);
}
TeeInputStream teeInputStream = new TeeInputStream(in, workerNames);
for (int i = 0; i < interestedWorkerWrappers.size(); i++) {
interestedWorkerWrappers.get(i).enqueueWork(teeInputStream.getTees()[i], workData);
}
teeInputStream.loopUntilTeesAreClosed();
for (GraphPropertyThreadedWrapper interestedWorkerWrapper : interestedWorkerWrappers) {
interestedWorkerWrapper.dequeueResult();
}
} finally {
if (tempFile != null) {