felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richard S. Hall (Resolved) (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (FELIX-3394) [Framework] Refactor internal resolver APIs to better align with upcoming OSGi resolver spec
Date Wed, 14 Mar 2012 16:22:39 GMT

     [ https://issues.apache.org/jira/browse/FELIX-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Richard S. Hall resolved FELIX-3394.

    Resolution: Fixed

I've committed a patch for this. The patch appears fairly large, but it is only impacting
internal API. In reality, it is not that complicated of a patch, since most changes are just
dealing with changing SortedSet<BundleCapability> to List<BundleCapability>.

The most difficult change is related to the fact that the resolver must explicitly ask the
resolver state (now called ResolveContext) to sort synthesized hosted fragment capabilities
where previously this was done implicitly by the SortedSet.

The main tricky aspect here was we need to avoid leaking the resolver's wrapper implementations
out into the ResolveContext, so I had to introduce a "shadow list" concept when asking the
ResolveContext to sort hosted fragment capabilities. We use this to create separate candidate
lists for the ResolveContext and the resolver.

Other than that, it is fairly straightforward.
> [Framework] Refactor internal resolver APIs to better align with upcoming OSGi resolver
> --------------------------------------------------------------------------------------------
>                 Key: FELIX-3394
>                 URL: https://issues.apache.org/jira/browse/FELIX-3394
>             Project: Felix
>          Issue Type: Improvement
>          Components: Framework
>    Affects Versions: framework-4.0.2
>            Reporter: Richard S. Hall
>            Assignee: Richard S. Hall
>            Priority: Minor
>             Fix For: framework-4.2.0
> The upcoming OSGi R5 enterprise spec is introducing a resolver API, which was intended
for OBR-like situations. However, it is largely inspired by the resolver approach of the Felix
framework, since the framework adopted the original generic capability/requirement model of
OBR some years ago. So, in an effort to make sure that the new resolver API is acceptable
to us and to hopefully simplify the possibility of implementing the resolver API and potentially
adopting it as the resolver of the framework directly, we should try to align the internal
resolver API with it in advance.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message