you're right - the "@Inject @Source" pattern is the "old-style" syntax which we still have to support for backwards compatibility but probably should discourage in the docs and position the injector-specific annotations more prominently, as they are the recommended way in my pov.
stefan >-----Original Message----- >From: Nicolas Peltier <peltier.nico...@gmail.com> >Sent: Monday, August 31, 2020 1:22 PM >To: Sling Developers List <dev@sling.apache.org> >Subject: Re: [models] declaring constants for injectors > >i guess doc is a bit misleading here and we should not expose what you >righteously call "implementation details" in the documentation (see >"script-bindings" in >https://sling.apache.org/documentation/bundles/models.html) > >Le lun. 31 août 2020 à 12:34, Nicolas Peltier <peltier.nico...@gmail.com> a >écrit : > >> mm i thought some of them were only available through the @Source >> annotation, but i will work my models annotations a bit more :-) >> >> Le lun. 31 août 2020 à 12:10, Stefan Seifert <sseif...@pro-vision.de> a >> écrit : >> >>> these string constants are normally not used in application code, >because >>> they use the typed injector annotations. >>> so this is more an implementation detail and there is no need to publish >>> those constants as part of the API? >>> >>> stefan >>> >>> >-----Original Message----- >>> >From: Nicolas Peltier <npelt...@apache.org> >>> >Sent: Monday, August 31, 2020 12:07 PM >>> >To: Sling Developers List <dev@sling.apache.org> >>> >Subject: [models] declaring constants for injectors >>> > >>> >Hey >>> > >>> >all injectors have name declared as direct string constants in getName >>> >implementations (script-bindings, child-resources, self, ...) >>> >not entirely sure it's still best practice to use constants rather than >>> >literals in annotation, but if it's still the case, i guess declaring & >>> >exposing those literals in the API would make sense. >>> > >>> >Wdyt? >>> > >>> >Nicolas >>> >>