[
https://issues.apache.org/jira/browse/XBEAN-177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13061510#comment-13061510
]
Jarek Gawor commented on XBEAN-177:
-----------------------------------
In revision 1143986 I updated the DelegatingBundle code to minimize the use of
PackageAdmin (one per call instead of one per bundle) as it started affecting
performance when dealing with a lot of bundles.
> DelegatingBundle optimization
> -----------------------------
>
> Key: XBEAN-177
> URL: https://issues.apache.org/jira/browse/XBEAN-177
> Project: XBean
> Issue Type: Improvement
> Components: bundleutils
> Affects Versions: 3.8
> Reporter: Jarek Gawor
> Assignee: Jarek Gawor
> Fix For: 3.8
>
>
> DelegatingBundle forwards loadClass() (among other functions) to multiple
> bundles. Right now the loadClass() implementation iterates over the bundles
> and attempts to load the class from each bundle until the class is
> successfully loaded.
> This method can actually be harmful in certain situations for example with
> bundles with DynamicImport-Package: *. It can needlessly establish a dynamic
> wired for the given package on each bundle in the list.
> One way to avoid this problem is to check (once CNFE is raised) if the given
> bundle is wired to some bundle that exports the given package. If so, there
> is no need to check the remaining bundles to load the class.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira