/** * Gather all available {@link PlanTransformation}s from the {@link #configuration}. */ private Collection<PlanTransformation> gatherTransformations() { final Set<Platform> platforms = RheemCollections.asSet(this.configuration.getPlatformProvider().provideAll()); return this.configuration.getMappingProvider().provideAll().stream() .flatMap(mapping -> mapping.getTransformations().stream()) .filter(t -> t.getTargetPlatforms().isEmpty() || platforms.containsAll(t.getTargetPlatforms())) .collect(Collectors.toList()); }