Hi,

I was playing around with the Equinox resolver and state and observed something 
that confused me.

I get a state object from PlatformAdmin and add some bundle descriptions that I 
know won't be able to resolve - for example they trigger a "uses" conflict.
I call resolve and after that isResolved(), which returns true.
If I go through the bundle descriptions in the state and check them I'll be 
able to retrieve the resolver error for the uses conflict and that particular 
bundle description will return false for its isResolved() method.
I found that strange so I checked the javadoc for State's isResolved method and 
found it "Returns true if there have been no modifications to this state since 
the last time resolve() was called.".
This puzzled me even more, after all I included some descriptions in that State.

In Virgo for the quasi resolve to catch resolver errors early, we check the 
bundles descriptions for resolver errors and don't call the isResolved method 
of the State, which works fine.
But it made me curious about how the State is expected to work and in order to 
get a resolution result which is the best approach.
Can you share some technical background? :)

Best Regards
Borislav

_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev

Reply via email to