new ConflictResolver( new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver() ); new ChainedDependencyGraphTransformer( transformer, new JavaDependencyContextRefiner() );
gatherConflictItems( node, state ); removeLosers( state ); gatherConflictItems( winner, state );
private boolean gatherConflictItems( DependencyNode node, State state ) throws RepositoryException { Object conflictId = state.conflictIds.get( node ); if ( state.currentId.equals( conflictId ) ) { // found it, add conflict item (if not already done earlier by another path) state.add( node ); // we don't recurse here so we might miss losers beneath us, those will be nuked during future walks below } else if ( state.loser( node, conflictId ) ) { // found a leftover loser (likely in a cycle) of an already processed conflict id, tell caller to nuke it return false; } else if ( state.push( node, conflictId ) ) { // found potential parent, no cycle and not visisted before with the same derived scope, so recurse for ( Iterator<DependencyNode> it = node.getChildren().iterator(); it.hasNext(); ) { DependencyNode child = it.next(); if ( !gatherConflictItems( child, state ) ) { it.remove(); } } state.pop(); } return true; }
gatherConflictItems( node, state ); removeLosers( state ); gatherConflictItems( winner, state );
private boolean gatherConflictItems( DependencyNode node, State state ) throws RepositoryException { Object conflictId = state.conflictIds.get( node ); if ( state.currentId.equals( conflictId ) ) { // found it, add conflict item (if not already done earlier by another path) state.add( node ); // we don't recurse here so we might miss losers beneath us, those will be nuked during future walks below } else if ( state.loser( node, conflictId ) ) { // found a leftover loser (likely in a cycle) of an already processed conflict id, tell caller to nuke it return false; } else if ( state.push( node, conflictId ) ) { // found potential parent, no cycle and not visisted before with the same derived scope, so recurse for ( Iterator<DependencyNode> it = node.getChildren().iterator(); it.hasNext(); ) { DependencyNode child = it.next(); if ( !gatherConflictItems( child, state ) ) { it.remove(); } } state.pop(); } return true; }
public RepositorySystemSessionWrapper(RepositorySystemSession delegate, boolean excludeSwarm) { this.delegate = delegate; this.transformer = new ConflictResolver(new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver() ); this.excludeSwarm = excludeSwarm; }
DefaultRepositorySystemSession session = new DefaultRepositorySystemSession(repositorySession); ConflictResolver transformer = new ConflictResolver(new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver()); session.setDependencyGraphTransformer(transformer);
DependencyGraphTransformer transformer = new ConflictResolver(new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver()); session.setDependencyGraphTransformer(
/** * Gets a dependency graph transformer. This one handles scope changes * * @return */ public DependencyGraphTransformer dependencyGraphTransformer() { DependencyGraphTransformer transformer = new ConflictResolver(new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver()); return new ChainedDependencyGraphTransformer(transformer, new JavaDependencyContextRefiner()); }
/** * Gets a dependency graph transformer. This one handles scope changes * * @return */ public DependencyGraphTransformer dependencyGraphTransformer() { DependencyGraphTransformer transformer = new ConflictResolver(new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver()); return new ChainedDependencyGraphTransformer(transformer, new JavaDependencyContextRefiner()); }
private DependencyNode getDependencyTree(Artifact artifact) throws MojoExecutionException { try { CollectRequest collectRequest = new CollectRequest(new Dependency(artifact, "compile"), null, projectRepositories); DefaultRepositorySystemSession session = new DefaultRepositorySystemSession(repositorySystemSession); session.setDependencySelector(new AndDependencySelector(new OptionalDependencySelector(), new ScopeDependencySelector1(), new ExclusionDependencySelector())); // between aether-util 0.9.0.M1 and M2, JavaEffectiveScopeCalculator was removed // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=397241 DependencyGraphTransformer transformer = new ChainedDependencyGraphTransformer(new ConflictMarker(), new ConflictResolver(new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver()), new JavaDependencyContextRefiner()); session.setDependencyGraphTransformer(transformer); CollectResult result = repositorySystem.collectDependencies(session, collectRequest); return result.getRoot(); } catch (DependencyCollectionException e) { throw new MojoExecutionException("Cannot build project dependency tree", e); } }
private DependencyNode getDependencyTree(Artifact artifact) throws MojoExecutionException { try { CollectRequest collectRequest = new CollectRequest(new Dependency(artifact, "compile"), null, projectRepositories); DefaultRepositorySystemSession session = new DefaultRepositorySystemSession(repositorySystemSession); session.setDependencySelector(new AndDependencySelector(new OptionalDependencySelector(), new ScopeDependencySelector1(), new ExclusionDependencySelector())); // between aether-util 0.9.0.M1 and M2, JavaEffectiveScopeCalculator was removed // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=397241 DependencyGraphTransformer transformer = new ChainedDependencyGraphTransformer(new ConflictMarker(), new ConflictResolver(new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver()), new JavaDependencyContextRefiner()); session.setDependencyGraphTransformer(transformer); CollectResult result = repositorySystem.collectDependencies(session, collectRequest); return result.getRoot(); } catch (DependencyCollectionException e) { throw new MojoExecutionException("Cannot build project dependency tree", e); } }
new ConflictResolver( new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver() ); new ChainedDependencyGraphTransformer( transformer, new JavaDependencyContextRefiner() );
new ConflictResolver( new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver() ); new ChainedDependencyGraphTransformer( transformer, new JavaDependencyContextRefiner() );
new ConflictResolver( new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver() ); new ChainedDependencyGraphTransformer( transformer, new JavaDependencyContextRefiner() );
new ConflictResolver( new NearestVersionSelector(), new JavaScopeSelector(), new SimpleOptionalitySelector(), new JavaScopeDeriver() ); new ChainedDependencyGraphTransformer( transformer, new JavaDependencyContextRefiner() );