:) Just to be consistent....I'm not favoring one or the other, using public seemed natural for me because of the interface, but allowing non-public is fine as well.
Carsten 2013/3/11 Felix Meschberger <[email protected]>: > Hi > > Why does the method need to be public ? > > Ok, if you implement the interface, it is by definition public. But if you > don't use the interface ? > > Regards > Felix > > Am 11.03.2013 um 14:26 schrieb Carsten Ziegeler: > >> 2013/3/11 Felix Meschberger <[email protected]>: >>> Hi, >>> >>> Am 10.03.2013 um 19:59 schrieb Carsten Ziegeler: >>> >>>> Hi, >>>> >>>>> My opinion would be: >>>>> >>>>> (a) search the implementation class only >>>>> (b) accept all method modifiers >>>>> (c) document to prefer private >>>>> >>>>> Alternatively we could search the class hierarchy as is defined in >>>>> section 112.9.4 (Locating Component Methods) of the Declarative Services >>>>> specification. >>>> >>>> I think the current implementation searches the hierarchy >>> >>> Yes and no ;-) The current implementation walks the hierarchy but it uses >>> the Class.getMethod method to find the method, which actually only returns >>> public methods. So walking the hierarchy is essentially useless. >>> >> Ah, right - yes the idea was that the method has to be public, >> otherwise the service is not used, now I remember :) >> >> Carsten >> >>> Just using getDeclaredMethod is not fully correct, because you probably >>> don't want to use a private method from a super class or a package private >>> method from a super class in a different package. Which is why I also refer >>> to the DS specification, which explains how to actually find and select >>> methods from superclasses. >>> >>> >>>> - I don't >>>> have a strong preference, but I think searching the hierarchy is >>>> better. >>> >>> I somehow have the impression that subclassing is not a concern for >>> InventoryPrinter services and in fact may not even make sense. Which is >>> probably also why Web Console 4 does not walk the class hierarchy for >>> finding ConfigurationPrinter methods. >>> >>> Regards >>> Felix >>> >>>>> >>>>> -- >>>>> Felix Meschberger | Principal Scientist | Adobe >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>>> >>>> -- >>>> Carsten Ziegeler >>>> [email protected] >>> >>> >>> -- >>> Felix Meschberger | Principal Scientist | Adobe >>> >>> >>> >>> >>> >>> >>> >> >> >> >> -- >> Carsten Ziegeler >> [email protected] > > > -- > Felix Meschberger | Principal Scientist | Adobe > > > > > > > -- Carsten Ziegeler [email protected]
