public DatasetScanFilter(List<Selector> selectorGroup) { if (selectorGroup == null || selectorGroup.isEmpty()) { this.selectorGroup = Collections.emptyList(); this.containsAtomicIncluders = false; this.containsAtomicExcluders = false; this.containsCollectionIncluders = false; this.containsCollectionExcluders = false; } else { boolean anyAtomicIncluders = false; boolean anyAtomicExcluders = false; boolean anyCollectionIncluders = false; boolean anyCollectionExcluders = false; List<Selector> tmpSelectorGroup = new ArrayList<Selector>(); for (Selector curSelector : selectorGroup) { if (curSelector.isIncluder()) { if (curSelector.isApplyToAtomicDataset()) anyAtomicIncluders = true; if (curSelector.isApplyToCollectionDataset()) anyCollectionIncluders = true; } else { // curSelector.isExcluder() if (curSelector.isApplyToAtomicDataset()) anyAtomicExcluders = true; if (curSelector.isApplyToCollectionDataset()) anyCollectionExcluders = true; } tmpSelectorGroup.add(curSelector); } this.selectorGroup = tmpSelectorGroup; this.containsAtomicIncluders = anyAtomicIncluders; this.containsAtomicExcluders = anyAtomicExcluders; this.containsCollectionIncluders = anyCollectionIncluders; this.containsCollectionExcluders = anyCollectionExcluders; } }
public DatasetScanFilter(Selector selector) { if (selector == null) { this.selectorGroup = Collections.emptyList(); this.containsAtomicIncluders = false; this.containsAtomicExcluders = false; this.containsCollectionIncluders = false; this.containsCollectionExcluders = false; } else { boolean anyAtomicIncluders = false; boolean anyAtomicExcluders = false; boolean anyCollectionIncluders = false; boolean anyCollectionExcluders = false; if (selector.isIncluder()) { if (selector.isApplyToAtomicDataset()) anyAtomicIncluders = true; if (selector.isApplyToCollectionDataset()) anyCollectionIncluders = true; } else { // curSelector.isExcluder() if (selector.isApplyToAtomicDataset()) anyAtomicExcluders = true; if (selector.isApplyToCollectionDataset()) anyCollectionExcluders = true; } this.selectorGroup = Collections.singletonList(selector); this.containsAtomicIncluders = anyAtomicIncluders; this.containsAtomicExcluders = anyAtomicExcluders; this.containsCollectionIncluders = anyCollectionIncluders; this.containsCollectionExcluders = anyCollectionExcluders; } }