private boolean satisfiedOutcomesForConsume(final HasComponentRequirement component, final InputRow row, final FilterOutcomes outcomes) { boolean isSatisfiedOutcomes = false; final ComponentRequirement componentRequirement = component.getComponentRequirement(); if (componentRequirement == null) { isSatisfiedOutcomes = true; } else { isSatisfiedOutcomes = componentRequirement.isSatisfied(row, outcomes); } return isSatisfiedOutcomes; }
/** * Ensures that ALL outcomes are available */ @Override public final boolean satisfiedForFlowOrdering(final FilterOutcomes outcomes) { if (isAlwaysSatisfiedRequirement()) { return true; } final ComponentRequirement componentRequirement = _hasComponentRequirement.getComponentRequirement(); if (componentRequirement == null) { return true; } final Collection<FilterOutcome> dependencies = componentRequirement.getProcessingDependencies(); for (final FilterOutcome filterOutcome : dependencies) { final boolean contains = outcomes.contains(filterOutcome); if (!contains) { return false; } } return componentRequirement.isSatisfied(null, outcomes); }