2011/3/16 Manik Surtani <[email protected]>:
>
> On 16 Mar 2011, at 18:14, Galder Zamarreño wrote:
>
>> Hi,
>>
>> Some feedback has come saying that it'd be nice to be able to configure 
>> externalizers using annotations. Now, in a previous discussion 
>> (http://lists.jboss.org/pipermail/infinispan-dev/2010-December/007047.html) 
>> it was agreed that for framework developers this is not nice since it makes 
>> it hard to abstract the Infinispan layer, but end users might be interested 
>> in using annotations rather than having to implement getId(), 
>> getTypeClasses() in Externalizer interface - see 
>> http://community.jboss.org/docs/DOC-16198
>>
>> To be able to support this, @Marshallable annotation that would be used wth 
>> externalizer implementations would have to be brought back with id and 
>> typeClasses attributes. That'd make it a 3rd way to define ids, after XML 
>> and getId() implementations.
>>
>> Clearly, getId() and getTypeClasses() would be moved to a different 
>> interface, so that people that chose to use @Marshallable could just provide 
>> read/writeObject method implementations.
>>
>> The gain from having end users use @Marshallable is not that great IMO cos 
>> we don't do annotation scanning, so there would still be a need to register 
>> externalizers.
>
> Why don't we do annotation scanning?  We maintain a table of externalizers 
> keyed on class, right?  So why not scan each new type (the first time we 
> encounter it) for @Marshallable to compile this externalizer table on the fly?
>
> Is it to do with classloader leaks?  If so, a weak map could be used for this 
> table...

+1
In some form we'll have to do annotation scanning anyway, I assume you
want to finish integrating the Query module to support adding new
entities on the fly. That will need some more advanced trivial garbage
collection.

Cheers,
Sanne

>
> Cheers
> Manik
>
> --
> Manik Surtani
> [email protected]
> twitter.com/maniksurtani
>
> Lead, Infinispan
> http://www.infinispan.org
>
>
>
>
> _______________________________________________
> infinispan-dev mailing list
> [email protected]
> https://lists.jboss.org/mailman/listinfo/infinispan-dev
>

_______________________________________________
infinispan-dev mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/infinispan-dev

Reply via email to