private static void assertNo2WayDependencies(DependencySpec spec, List<DependencySpec> dependancySpecs, Stack<DependencySpec> dependencyStack) { for(DependencySpec dependancy : dependancySpecs) { dependencyStack.push(dependancy); if(dependancy.isDependant(spec)) { dependencyStack.push(spec); throw new SmooksConfigurationException("Invalid 2-Way/Circular Visitor Producer/Consumer dependency detected in configuration.\n" + getDependencyStackTrace(dependencyStack)); } // Recurse down ... assertNo2WayDependencies(spec, dependancy.dependants, dependencyStack); dependencyStack.pop(); } }
@SuppressWarnings("unchecked") private static void assertNo2WayDependencies(DependencySpec spec, List<DependencySpec> dependancySpecs, Stack<DependencySpec> dependencyStack) { for(DependencySpec dependancy : dependancySpecs) { dependencyStack.push(dependancy); if(dependancy.isDependant(spec)) { dependencyStack.push(spec); throw new SmooksConfigurationException("Invalid 2-Way/Circular Visitor Producer/Consumer dependency detected in configuration.\n" + getDependencyStackTrace(dependencyStack)); } // Recurse down ... assertNo2WayDependencies(spec, dependancy.dependants, dependencyStack); dependencyStack.pop(); } }
@SuppressWarnings("unchecked") private static void assertNo2WayDependencies(DependencySpec spec, List<DependencySpec> dependancySpecs, Stack<DependencySpec> dependencyStack) { for(DependencySpec dependancy : dependancySpecs) { dependencyStack.push(dependancy); if(dependancy.isDependant(spec)) { dependencyStack.push(spec); throw new SmooksConfigurationException("Invalid 2-Way/Circular Visitor Producer/Consumer dependency detected in configuration.\n" + getDependencyStackTrace(dependencyStack)); } // Recurse down ... assertNo2WayDependencies(spec, dependancy.dependants, dependencyStack); dependencyStack.pop(); } }
@SuppressWarnings("unchecked") private static void assertNo2WayDependencies(DependencySpec spec, List<DependencySpec> dependancySpecs, Stack<DependencySpec> dependencyStack) { for(DependencySpec dependancy : dependancySpecs) { dependencyStack.push(dependancy); if(dependancy.isDependant(spec)) { dependencyStack.push(spec); throw new SmooksConfigurationException("Invalid 2-Way/Circular Visitor Producer/Consumer dependency detected in configuration.\n" + getDependencyStackTrace(dependencyStack)); } // Recurse down ... assertNo2WayDependencies(spec, dependancy.dependants, dependencyStack); dependencyStack.pop(); } }