Why not using a for-comprehension? ``for (occurrence <- it if !monitor.isCanceled) {``