Oops, think I got the link wrong. Try http://8planes.com/MxmlcDep.tar.gz
--- In [email protected], "aduston1976" <[EMAIL PROTECTED]> wrote: > > Have you ever created a modularized app, accidentally introduced a > dependency between one module and another, and then had to spend way > too much time looking through the link report generated by mxmlc to > find where the dependency got introduced? > > I wrote an extremely short program to do this automatically. (If I > reinvented the wheel, please let me know, but I couldn't find anything > to do this) It builds a dependency graph using the mxmlc link-report > file and then lets you easily find the path between two nodes in the > graph using a simple depth-first search. It could easily be altered > for other purposes, e.g. to make a picture of the dependency graph for > more effective modularization. > > I temporarily posted the source here, if you want to grab it: > http://8planes/MxmlcDep.tar.gz . > > Example usage to find the dependency path between my class > ll.controller.textDialog.AddTextNoteController and > mx.managers.CursorManager: > > DependencyGraph graph = new DependencyGraph(); > graph.readLinkReport("/tmp/mainlinks.xml", new String[] > { > "flex_src" }); > List<ScriptNode> path = graph.findPathBetween( > > "ll.controller.textDialog:AddTextNoteController", > "mx.managers:CursorManager"); > for (ScriptNode sNode : path) > System.out.println(sNode.getName()); > > Output: > > ll.controller.textDialog:AddTextNoteController > ll.controller:LanguageCheckingUtil > ll.rpc:AsyncCallbackAdapter > ll.view:ViewFactory > ll.view:IViewFactory > ll.view:SignupPopup > ll.controller:SignupController > ll.controller:MainCoordinator > mx.controls:DataGrid > mx.controls.listClasses:ListBaseContentHolder > mx.controls.listClasses:ListBase > mx.managers:DragManager > mx.managers.dragClasses:DragProxy > mx.managers:CursorManager > > > Hope you find it useful! >

