What's the issue w/ fire async and mutable payload?  Non-deterministic behavior depending on thread?

On Tue Dec 16 2014 at 11:32:53 AM Antoine Sabot-Durand <antoine@sabot-durand.net> wrote:
Hi guys,


Always working on Async event concept and discussion around mutable payloads. I was looking where in the spec we specified the fact that fired payload are mutable. I red-read chapter 10  (http://docs.jboss.org/cdi/spec/1.2/cdi-spec.html#events) twice and didn’t found. I also browsed JIRA and TCK to find any ref to this feature and found nothing. On the other hand it is not specified that payload should be immutable ;)

I’d be happy if some of you could have a look and see if I missed something.

If I’m not wrong, the mutable payload we (including myself) advertise in CDI is a non portable feature (I’m the firs surprised here). So I propose that :

1) We decide to write something in the specification about allowing or forbidding it (I know some people not happy with this mix between observer and visitor pattern)
1bis) Should we decide to forbid it by default, we should provide an alternative mode to allow people using this unspecified feature
2) Forbid it for fireAsync()


Thanks for your feedback and your correction if I missed the feature in the spec.

Antoine 
_______________________________________________
cdi-dev mailing list
cdi-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/cdi-dev

Note that for all code provided on this list, the provider licenses the code under the Apache License, Version 2 (http://www.apache.org/licenses/LICENSE-2.0.html). For all other ideas provided on this list, the provider waives all patent and other intellectual property rights inherent in such information.