Changeset 3051


Ignore:
Timestamp:
01/17/12 21:43:08 (4 months ago)
Author:
kasper
Message:

Ticket #442: Improved selection of filter requirements to disable cyclic dependencies

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • AnalyzerBeans/trunk/core/src/main/java/org/eobjects/analyzer/job/builder/AbstractBeanWithInputColumnsBuilder.java

    r3046 r3051  
    191191        } 
    192192 
     193        public boolean validateRequirementSource(OutcomeSourceJob outcomeSourceJob) { 
     194                if (outcomeSourceJob == null) { 
     195                        return true; 
     196                } 
     197 
     198                Outcome[] outcomes = outcomeSourceJob.getOutcomes(); 
     199                if (outcomes == null || outcomes.length == 0) { 
     200                        return true; 
     201                } 
     202                 
     203                return validateRequirementCandidate(outcomes[0]); 
     204        } 
     205 
    193206        public boolean validateRequirementCandidate(Outcome requirement) { 
    194207                if (requirement == null) { 
  • DataCleaner/trunk/core/src/main/java/org/eobjects/datacleaner/widgets/ChangeRequirementButton.java

    r2595 r3051  
    105105                                filterMenuItem.setEnabled(false); 
    106106                                filterMenuItem.setToolTipText("Filter is not correctly configured"); 
     107                        } else if (!_jobBuilder.validateRequirementSource(fjb)) { 
     108                                filterMenuItem.setEnabled(false); 
     109                                filterMenuItem.setToolTipText("Requirement not possible"); 
    107110                        } else { 
    108111                                FilterBeanDescriptor<?, ?> fjbDescriptor = fjb.getDescriptor(); 
     
    110113                                for (final String category : categoryNames) { 
    111114                                        JMenuItem categoryMenuItem = new JMenuItem(category); 
    112  
     115                                         
    113116                                        if (currentRequirement != null && currentRequirement instanceof FilterOutcome) { 
    114117                                                FilterOutcome filterOutcome = (FilterOutcome) currentRequirement; 
Note: See TracChangeset for help on using the changeset viewer.