Bundle-NativeCode manifest header

1) They are necessary in so far as clauses without them can not be 
selected. However from a grammar point of view they are not mandatory.
2) Since they are not mandatory in the grammar, we do not need to make the 
grammar more complicated :-)


Algorithm

OK. Lets break down the paragraph:

> If a selection filter is evaluated and its syntax is invalid, then the 
bundle
> installation must fail with a Bundle Exception.

The framework evaluates the selection filters only if the other values 
match. That is the osname, processor, etc. When the framework evaluates 
the selection filter and an invalid syntax error occurs, then the 
installation of the bundle fails.

> If a selection filter is not
>evaluated (it may be in a native code clause where the osname or 
processor
>does not match), then the invalid filter must not cause the bundle 
installation
>to fail.

If  some other value failed to match and the clause will not be selected 
anyway, the framework does not need to evaluate the selection filter and 
is therefore not obligated to validate the syntax of the selection filter. 
This is just trying to avoid work.

> This is also true even if the optional clause is specified.

The optional clause means that it is OK for no native code clause to be 
selected by the algorithm. So this sentence means this paragraph applies 
regardless of the presence of the optional clause.


BJ Hargrave
Senior Technical Staff Member, IBM
OSGi Fellow and CTO of the OSGi Alliance
[EMAIL PROTECTED]
Office: +1 407 849 9117 Mobile: +1 386 848 3788



"Arnaud Quiblier" <[EMAIL PROTECTED]> 
Sent by: [EMAIL PROTECTED]
08/11/2006 08:51 PM
Please respond to
OSGi Developer Mail List <[EMAIL PROTECTED]>


To
[EMAIL PROTECTED]
cc

Subject
[osgi-dev] R4 Core Spec : Loading Native Code Libraries [ 3.9 ]






Dear all,

Here are my comments and questions concerning the chapter 3.9 (pp. 59-63) 
of the OSGi Core Specification Release 4.


*) Bundle-NativeCode manifest header syntax (p. 60)

I would like to be totally sure to correctly understand the syntax of the 
'nativecode' element of this header. 
This element is composed of one or more 'path' element and one or more 
'parameter' element.
One ore more 'parameter' implies that one at least of the architected 
attributes is mandatory.
Reading further the section 3.9.1 (p. 62) describing the native code 
algorithm, the first step of the process seems to imply that 'osname' and 
'processor' are both required in a native clause. Indeed, the other 
parameters can be not specified, but those can't. 

Question(s)
1/ The two parameters 'osname' and 'processor' are mandatory. Does anybody 
can tell me whether it's right ?
2/ If so, perhaps the mandatory aspect of those two parameters could be 
explicitly written p.60 and the order of the parameter's presentation be 
changed to reflect this importance.


*) Native Code Algorithm (p. 62)

Perhaps I'm stupid. But I do NOT understand the last but one paragraph. It 
begins with "If a selection filter .." and ends with "... optional clause 
is specified.". The paragraph before is absolutly clear, but this one 
exceeds my capacities. Plz help ! 


Regards,
-- 
</arnaud> _______________________________________________
osgi-dev mailing list
osgi-dev@bundles.osgi.org
http://bundles.osgi.org/mailman/listinfo/osgi-dev


_______________________________________________
osgi-dev mailing list
osgi-dev@bundles.osgi.org
http://bundles.osgi.org/mailman/listinfo/osgi-dev

Reply via email to