[
https://issues.apache.org/jira/browse/MRESOLVER-457?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17797469#comment-17797469
]
Tamas Cservenak commented on MRESOLVER-457:
-------------------------------------------
Several issues:
* VersionScheme is needed to construct object graph
* Selector actually creates cycle, as in Resolver 2 you need system to create
session, and you need session to "select" scheme, while as above, it is needed
to construct system in the first place.
* Resolver is no place to provide any scheme as it is nowhere injecting it.
All this responsibility should be left to client code.
> Revert MRESOLVER-446
> --------------------
>
> Key: MRESOLVER-457
> URL: https://issues.apache.org/jira/browse/MRESOLVER-457
> Project: Maven Resolver
> Issue Type: Task
> Components: Resolver
> Reporter: Tamas Cservenak
> Priority: Major
> Fix For: 2.0.0-alpha-6
>
>
> Revert MRESOLVER-446 as it is not needed. Supplier (and Maven) can customize
> as all places where VersionScheme needed, is client injected/set (like on
> request or so).
> Moreover, in Resolver 2 one needs to construct RepoSystem (DI complete
> component graph) -> to create session -> that can be used with selector to
> select VersionScheme -> that in turn is NEEDED in component graph. This is a
> cycle as this.
> With selector this was somewhat solved, but there are components that have no
> access to RepoSysSession... and those are the problem. IF all Sisu components
> would have access to RepoSysSession, this cycle could be broken easily.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)