Est-il possible à partir de Spring d'injecter le résultat de l'appel d'une méthode sur un ref bean ?
J'essaie de refondre du code coupé/collé de deux projets distincts dans une classe commune. Dans l'un des projets, le code se trouve dans une classe que j'appellerai "MyClient" qui est instanciée à partir de Spring. Elle est injectée avec une autre classe Spring "MyRegistry", puis la classe MyClient utilise cette classe pour rechercher un point de terminaison. Tout ce dont j'ai besoin, c'est de la chaîne de caractères du point d'accès dans ma classe refactorisée, qui peut être initialisée par le biais d'une chaîne de caractères (Setter). Je ne peux vraiment pas avoir une dépendance sur MyRegistry à partir de MyClient dans le code remanié.
Ma question est donc la suivante : existe-t-il un moyen d'injecter la chaîne de point de terminaison de Spring qui a été recherchée dans la classe MyRegistry. Donc, j'ai actuellement :
<bean id="registryService" class="foo.MyRegistry">
...properties set etc...
</bean>
<bean id="MyClient" class="foo.MyClient">
<property name="registry" ref="registryService"/>
</bean>
Mais j'aimerais avoir (et je sais que c'est une syntaxe imaginaire de Spring)
<bean id="MyClient" class="foo.MyClient">
<property name="endPoint" value="registryService.getEndPoint('bar')"/>
</bean>
où MyRegistry aura une méthode getEndPoint(Stirng endPointName)
J'espère que cela a du sens du point de vue de ce que j'essaie de réaliser. N'hésitez pas à me faire savoir si quelque chose comme cela est possible au printemps !