In case you have some _rare_ usages then you need to use a custom Qualifier. Or 
just @Inject YourSpecialMessageInterpolator...

Think about it the other way: we had this special qualifier for our internal 
beans, but then you would need to use this for providing a general 
@Alternative, etc.

LieGrue,
strub


>________________________________
> From: Rudy De Busscher <[email protected]>
>To: [email protected]; Mark Struberg <[email protected]> 
>Sent: Saturday, December 29, 2012 12:23 PM
>Subject: Re: Custom MessageInterpolator needs a Qualifer
> 
>
>Hi Mark,
>
>Yes I know, but what if you need only for some of your messageBundles a custom 
>version.
>
>Maybe to rare and we don't need to do some special for those cases.
>
>rudy
>
>
>On 28 December 2012 21:43, Mark Struberg <[email protected]> wrote:
>
>Hi Rudy!
>>
>>If you like to switch over to your version completely then just use an 
>>@Alternative or @Specializes to replace the standard MessageInterpolator/etc 
>>with your own version.
>>
>>LieGrue
>>strub
>>
>>
>>
>>
>>
>>----- Original Message -----
>>> From: Rudy De Busscher <[email protected]>
>>> To: [email protected]
>>> Cc:
>>> Sent: Friday, December 28, 2012 9:08 PM
>>> Subject: Custom MessageInterpolator needs a Qualifer
>>>
>>> Hi all,
>>>
>>> I'm playing around with the JsfMessage<T> functionality of the JSF
>>> module.
>>> I tried to create a custom MessageInterpolator and needed to put a Qualifer
>>> on my version before the application deploys on the container.
>>>
>>> It is perfectly correct since the default class,
>>> DefaultMessageInterpolator, is also a CDI bean and injected into the
>>> MessageContextProducer.
>>>
>>> But it feels strange that a class which is configured in an annotation by
>>> its class name, needs a qualifier, like the *
>>> MessageFormatMessageInterpolator*.
>>> *@MessageBundle
>>
>>> @MessageContextConfig(messageSource =
>>> {"org.apache.deltaspike.example.message.ApplicationMessages"},
>>>         messageInterpolator = MessageFormatMessageInterpolator.class)
>>> public interface CustomizedMessages
>>> {*
>>
>>>
>>> This is also the case for a custom LocaleResolver and a custom
>>> MessageResolver.
>>>
>>> So do we need to change this or is it ok?
>>>
>>> 1) Define a Qualifier and annotate the default MessageInterpolator with
>>> it.  This way the developer can create a custom version that doesn't need
>>> the qualifier.
>>>
>>> 2) Define the Qualifier in the jsf module so that not every developer needs
>>> to define a new Qualifier when he needs some custom component when working
>>> with modules
>>>
>>> 3) We don't need to do anything because custom versions are the exception.
>>>
>>> Other point?
>>>
>>>
>>> My idea
>>>
>>> 1) +1
>>>
>>>
>>> Regards
>>> Rudy
>>>
>>
>
>
>

Reply via email to