Thanks, Kevin and BJ.

On Tue, 20 Jun 2006 14:49:44 -0400
BJ Hargrave <[EMAIL PROTECTED]> wrote:

BJ> > As far as I understand, ServiceReference.getPropertyKeys must return not
BJ> > Constants.SERVICE_ID="service.id" but "Service.Id".
BJ> 
BJ> No. You have it reversed. The last key set was done by the framework 
BJ> during the processing of registerService and it used the value of 
BJ> Constants.SERVICE_ID. The last set was done by the framework and not by 
BJ> the user. The spec states that these keys will be overwritten by the 
BJ> framework when registering a service.

I misunderstand the meaning of "last".
That's fine !! That's what I want:-)

BJ> > Q2. Why did OSGi Alliance decide the spec as "A Framework must return
BJ> > the key in ServiceReference.getPropertyKeys in exactly the same case as
BJ> > it was last set." ? (why not decided as "return keys in lower case", at
BJ> > least for Constants.*** keys)
BJ> 
BJ> The service properties are case-preserving with case-insensitive lookup. 
BJ> In hindsight, the expert group regrets that decision. We should have gone 
BJ> case-sensitive. But it is too late to change now without risking breaking 
BJ> backwards compatibility.
BJ> 
BJ> As we have created and will create new specification we have chosen and 
BJ> will choose case-sensitive where possible.

I understand.

I would like to clarify one more point.
How about other keys assigned by the specification, which is determined
by not the framework but a bundle developer? (e.g. service.ranking,
service.vendor, ...)

In other words, if a bundle registers with "Service.Ranking" as a key, 
what should ServiceReference.getPropertyKeys() return? 
"service.ranking" or "Service.Ranking".

---------------------
NTT Cyber Solutions Laboratories

     Ikuo YAMASAKI
        E-mail: [EMAIL PROTECTED]


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

Reply via email to