[ 
https://issues.apache.org/jira/browse/ARIES-1435?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14963916#comment-14963916
 ] 

John Ross commented on ARIES-1435:
----------------------------------

"The sharing policy is only updated if the dynamic import cannot be completely 
satisfied from with-
in the subsystem. Note that all dynamic imports with a wildcard must always be 
added to the shar-
ing policy."

These are the two sentences from section 134.17 of the specification that drove 
the implementation.

Starting with the first, the implementation was updated so that sharing policy 
updates will proceed up the region tree, starting with the region of the 
subsystem containing the woven bundle, until either a region is found in which 
the dynamic import is completely satisfied or the root region is reached. To be 
"completely satisfied" means (1) the dynamic import does not contain a wildcard 
and (2) either (a) the region contains a bundle providing a matching capability 
or (b) the region has an edge with a filter that allows a matching capability.

Here a design decision was made. The question was whether or not sharing 
policies should be updated when given an absolute dynamic import having no 
possible provider in the framework. Either way satisfies the specification. We 
were unable to discover a reason compelling enough to push us over the fence 
one way or the other resulting in ambivalence. The deciding factor, 
consequently, was which solution presented the least risk of a breaking change 
assuming we decide to go the other way in the future. We went with not updating 
the sharing policies when no package provider of an absolute import is 
available because it is the more restrictive of the two options and, therefore, 
more likely to introduce a breaking change if subsequently introduced.

Dynamic imports containing wildcards can never be completely satisfied and are 
always added to the sharing policies. Not updating the sharing policies when 
there are no providers present would appear to violate the second sentence.

> Sharing policy updates for dynamic imports, if necessary, should proceed up 
> the subsystem region tree.
> ------------------------------------------------------------------------------------------------------
>
>                 Key: ARIES-1435
>                 URL: https://issues.apache.org/jira/browse/ARIES-1435
>             Project: Aries
>          Issue Type: Bug
>          Components: Subsystem
>    Affects Versions: subsystem-2.0.4
>            Reporter: John Ross
>            Assignee: John Ross
>             Fix For: subsystem-2.0.6
>
>
> Currently, dynamic imports only affect the sharing policy between the region 
> of the woven subsystem and the region containing its parent(s). Sharing 
> policy updates should continue to wind up the region tree until either the 
> dynamic import is satisfied or the root subsystem has been reached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to