com.google.gwt.inject.rebind.resolution
Class EagerCycleFinder

java.lang.Object
  extended by com.google.gwt.inject.rebind.resolution.EagerCycleFinder

public class EagerCycleFinder
extends java.lang.Object

Searches for "eager" cycles in the dependency graph. These are cycles that do not pass through a Provider or AsyncProvider.

This only finds cycles that are necessary to resolve the dependencies for the current origin Ginjector.

Reports errors including the detected cycle and the path that led here from the unresolved bindings in the ginjector to the global ErrorManager.

See BindingResolver for how this fits into the overall algorithm for resolution.


Constructor Summary
EagerCycleFinder(ErrorManager errorManager)
           
 
Method Summary
 boolean findAndReportCycles(DependencyGraph graph)
          Detects cycles in the given graph.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EagerCycleFinder

@Inject
public EagerCycleFinder(ErrorManager errorManager)
Method Detail

findAndReportCycles

public boolean findAndReportCycles(DependencyGraph graph)
Detects cycles in the given graph.

Returns:
true if any cycles were detected