<div dir="ltr"><div>Guys,</div><div>Just noticed, I never joined the IRC chat from here in the company (last time was mostly Christmas in Austria) and both web URLs or ports seem blocked by our firewall and proxy, so I'm afraid I can't join today either. If it's a less busy week I try to be at home by then should work there.</div><div><br></div><div>+1 for using Java SE 8 where we can btw. Everything that makes CDI 2 less dependent on other specs that may become optional in future profiles or won't even be around in a pure SE/desktop environment sounds like a good idea.</div><div><br></div><div>Werner</div><div><br></div><div class="gmail_extra"><div class="gmail_quote">On Wed, Jan 21, 2015 at 4:25 PM, <span dir="ltr"><<a href="mailto:cdi-dev-request@lists.jboss.org" target="_blank">cdi-dev-request@lists.jboss.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid">Send cdi-dev mailing list submissions to<br>
<a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
<a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
or, via email, send a message with subject or body 'help' to<br>
<a href="mailto:cdi-dev-request@lists.jboss.org">cdi-dev-request@lists.jboss.org</a><br>
<br>
You can reach the person managing the list at<br>
<a href="mailto:cdi-dev-owner@lists.jboss.org">cdi-dev-owner@lists.jboss.org</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than "Re: Contents of cdi-dev digest..."<br>
<br>
<br>
Today's Topics:<br>
<br>
1. Re: Today's meeting (Antoine Sabot-Durand)<br>
2. Re: [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
(Werner Keil)<br>
3. Re: Building EJB-like @Asynchronous via interceptor in CDI<br>
(Antoine Sabot-Durand)<br>
4. Re: [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
(Antoine Sabot-Durand)<br>
<br>
<br>
----------------------------------------------------------------------<br>
<br>
Message: 1<br>
Date: Wed, 21 Jan 2015 16:04:38 +0100<br>
From: Antoine Sabot-Durand <<a href="mailto:antoine@sabot-durand.net">antoine@sabot-durand.net</a>><br>
Subject: Re: [cdi-dev] Today's meeting<br>
To: John Ament <<a href="mailto:john.d.ament@gmail.com">john.d.ament@gmail.com</a>><br>
Cc: "<a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a>" <<a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a>><br>
Message-ID: <<a href="mailto:6CE398B0-3590-4194-99BF-29C6B147148C@sabot-durand.net">6CE398B0-3590-4194-99BF-29C6B147148C@sabot-durand.net</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Hi John,<br>
<br>
Good luck. I?ll be happy to talk to you next week.<br>
<br>
Antoine<br>
<br>
<br>
> Le 21 janv. 2015 ? 13:40, John D. Ament <<a href="mailto:john.d.ament@gmail.com">john.d.ament@gmail.com</a>> a ?crit :<br>
><br>
> Hey guys<br>
><br>
> Was hoping to get to today's meeting, luck's not in my favor and I have some surgery today :-( Good news is at least the next six weeks no one will bother me right before the scheduled meeting so I'll be there.<br>
><br>
> I just updated the CDI SE ticket based on what we talked about last week. I can start marking up the doc in google docs this week as well.<br>
><br>
> - John<br>
> _______________________________________________<br>
> cdi-dev mailing list<br>
> <a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
><br>
> Note that for all code provided on this list, the provider licenses the code under the Apache License, Version 2 (<a href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">http://www.apache.org/licenses/LICENSE-2.0.html</a>). For all other ideas provided on this list, the provider waives all patent and other intellectual property rights inherent in such information.<br>
<br>
-------------- next part --------------<br>
A non-text attachment was scrubbed...<br>
Name: signature.asc<br>
Type: application/pgp-signature<br>
Size: 495 bytes<br>
Desc: Message signed with OpenPGP using GPGMail<br>
Url : <a href="http://lists.jboss.org/pipermail/cdi-dev/attachments/20150121/a6d90af2/attachment-0001.bin" target="_blank">http://lists.jboss.org/pipermail/cdi-dev/attachments/20150121/a6d90af2/attachment-0001.bin</a><br>
<br>
------------------------------<br>
<br>
Message: 2<br>
Date: Wed, 21 Jan 2015 16:07:46 +0100<br>
From: Werner Keil <<a href="mailto:werner.keil@gmail.com">werner.keil@gmail.com</a>><br>
Subject: Re: [cdi-dev] [JBoss JIRA] (CDI-499) Firing events<br>
asynchronously<br>
To: Antoine Sabot-Durand <<a href="mailto:antoine@sabot-durand.net">antoine@sabot-durand.net</a>><br>
Cc: cdi-dev <<a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a>><br>
Message-ID:<br>
<CAAGawe0qe3KvDk7r4Tb2zB-EhSWeV4oH64Gq7Y=P2Zg9-V=<a href="mailto:xHg@mail.gmail.com">xHg@mail.gmail.com</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Hi Antoine,<br>
<br>
It seems the exact place for that is still to be found, but even if these<br>
are separate threads in parallel the fact that CDI 2 aims to add support<br>
for async events means anything other JSRs cannot do or don't want to do<br>
(see Bill's remark on resources in other JSRs) would fit into CDI 2 as long<br>
as the resource situation here isn't too critical either of course;-)<br>
<br>
That's what I wanted to say.<br>
<br>
Werner<br>
<br>
On Wed, Jan 21, 2015 at 4:01 PM, Antoine Sabot-Durand <<br>
<a href="mailto:antoine@sabot-durand.net">antoine@sabot-durand.net</a>> wrote:<br>
<br>
> Hi Werner,<br>
><br>
><br>
> No, it doesn?t cover @Asynchronous or @Async annotation. Discussion about<br>
> async operation support in CDI 2.0 is another subject.<br>
><br>
><br>
> Le 21 janv. 2015 ? 13:52, Werner Keil <<a href="mailto:werner.keil@gmail.com">werner.keil@gmail.com</a>> a ?crit :<br>
><br>
> Antoine/all,<br>
><br>
> Is it safe to assume any recent discussion about an @Asynchronous<br>
> annotation would be covered there unless e.g. EJB itself needs it to be<br>
> updated for EE 8?<br>
><br>
> Werner<br>
><br>
> On Wed, Jan 21, 2015 at 1:06 PM, <<a href="mailto:cdi-dev-request@lists.jboss.org">cdi-dev-request@lists.jboss.org</a>> wrote:<br>
><br>
>> Send cdi-dev mailing list submissions to<br>
>> <a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
>><br>
>> To subscribe or unsubscribe via the World Wide Web, visit<br>
>> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
>> or, via email, send a message with subject or body 'help' to<br>
>> <a href="mailto:cdi-dev-request@lists.jboss.org">cdi-dev-request@lists.jboss.org</a><br>
>><br>
>> You can reach the person managing the list at<br>
>> <a href="mailto:cdi-dev-owner@lists.jboss.org">cdi-dev-owner@lists.jboss.org</a><br>
>><br>
>> When replying, please edit your Subject line so it is more specific<br>
>> than "Re: Contents of cdi-dev digest..."<br>
>><br>
>><br>
>> Today's Topics:<br>
>><br>
>> 1. [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>> (Antoine Sabot-Durand (JIRA))<br>
>> 2. [JBoss JIRA] (CDI-31) Asynchronous events<br>
>> (Antoine Sabot-Durand (JIRA))<br>
>> 3. [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>> (Antoine Sabot-Durand (JIRA))<br>
>> 4. [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>> (Antoine Sabot-Durand (JIRA))<br>
>> 5. [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>> (Jos? Paumard (JIRA))<br>
>> 6. [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>> (Jozef Hartinger (JIRA))<br>
>><br>
>><br>
>> ----------------------------------------------------------------------<br>
>><br>
>><br>
>> Message: 6<br>
>> Date: Wed, 21 Jan 2015 07:06:49 -0500 (EST)<br>
>> From: "Jozef Hartinger (JIRA)" <<a href="mailto:issues@jboss.org">issues@jboss.org</a>><br>
>> Subject: [cdi-dev] [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>> To: <a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
>> Message-ID:<br>
>> <JIRA.12561330.1421835166000.18078.1421842009269@Atlassian.JIRA><br>
>> Content-Type: text/plain; charset=UTF-8<br>
>><br>
>><br>
>> [<br>
>> <a href="https://issues.jboss.org/browse/CDI-499?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13034058#comment-13034058" target="_blank">https://issues.jboss.org/browse/CDI-499?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13034058#comment-13034058</a><br>
>> ]<br>
>><br>
>> Jozef Hartinger commented on CDI-499:<br>
>> -------------------------------------<br>
>><br>
>> {quote}For backward compatibility reason the possibility to invoke an<br>
>> observer asynchronously should be let to the observer{quote}<br>
>> What exactly are the reasons for this? I can think of one:<br>
>> - observer method injecting a @RequestScoped (or similar) bean<br>
>> Are there other arguments for this?<br>
>><br>
>> {quote}3. Observer bound to a transaction phase<br>
>> these observer will be invoked in the right transaction phase but<br>
>> asynchronously{quote}<br>
>> How's that different from Event.fire()?<br>
>><br>
>> > Firing events asynchronously<br>
>> > -----------------------------<br>
>> ><br>
>> > Key: CDI-499<br>
>> > URL: <a href="https://issues.jboss.org/browse/CDI-499" target="_blank">https://issues.jboss.org/browse/CDI-499</a><br>
>> > Project: CDI Specification Issues<br>
>> > Issue Type: Feature Request<br>
>> > Components: Events<br>
>> > Affects Versions: 1.2.Final<br>
>> > Reporter: Antoine Sabot-Durand<br>
>> ><br>
>> > We should allow a way to fire event asynchronously. This mechanism<br>
>> should leverage new async API in JDK8 especially the {{CompletionStage}}<br>
>> interface.<br>
>> > Our proposal is:<br>
>> > h2. 1. Add {{fireAsync()}} method to {{Event}} and {{BeanManager}}<br>
>> > Signature of the method on {{Event<T>}} would be<br>
>> > {code:java}<br>
>> > <U extends T> CompletionStage<U> fireAsync(U event);<br>
>> > {code}<br>
>> > Signature on {{BeanManager}} would be<br>
>> > {code:java}<br>
>> > <T> CompletionStage<T> fireAsyncEvent(T event, Annotation... qualifiers)<br>
>> > {code}<br>
>> > h2. 2. Add an {{asyncSupported()}} member to {{@Observes}}<br>
>> > For backward compatibility reason the possibility to invoke an observer<br>
>> asynchronously should be let to the observer (legacy observers should be<br>
>> called synchronously). We propose to add the boolean {{asyncSupported()}}<br>
>> member with the {{false}} default value to support this backward<br>
>> compatibility aspect.<br>
>> > So to be notified asynchronously an observer should have<br>
>> {{asyncSupported}} member to true. otherwise it will be called<br>
>> synchronously.<br>
>> > h2. 3. Observer bound to a transaction phase<br>
>> > these observer will be invoked in the right transaction phase but<br>
>> asynchronously<br>
>> > h2. 4. Event Ordering<br>
>> > Should we decide to add events ordering in CDI 2.0, the order will be<br>
>> keep in asynchronous observer notification. If there are a mix of<br>
>> synchronous and asynchronous observer, asynchronous will be called first in<br>
>> order, then synchronous in their order (async has priority on sync).<br>
>> > h2. 5. Event state (payload mutability)<br>
>> > We'll keep payload mutability with async events (but should explicitly<br>
>> specify it). That means that we should guarantee the event state<br>
>> consistency between observers and in case of ordered observers the fact<br>
>> that observer N+1 get the event state at the end of observer N.<br>
>><br>
>><br>
>><br>
>> --<br>
>> This message was sent by Atlassian JIRA<br>
>> (v6.3.11#6341)<br>
>><br>
>><br>
>> ------------------------------<br>
>><br>
>> _______________________________________________<br>
>> cdi-dev mailing list<br>
>> <a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
>> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
>><br>
>> Note that for all code provided on this list, the provider licenses the<br>
>> code under the Apache License, Version 2 (<br>
>> <a href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">http://www.apache.org/licenses/LICENSE-2.0.html</a>). For all other ideas<br>
>> provided on this list, the provider waives all patent and other<br>
>> intellectual property rights inherent in such information.<br>
>><br>
>> End of cdi-dev Digest, Vol 50, Issue 42<br>
>> ***************************************<br>
>><br>
><br>
> _______________________________________________<br>
> cdi-dev mailing list<br>
> <a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
><br>
> Note that for all code provided on this list, the provider licenses the<br>
> code under the Apache License, Version 2 (<br>
> <a href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">http://www.apache.org/licenses/LICENSE-2.0.html</a>). For all other ideas<br>
> provided on this list, the provider waives all patent and other<br>
> intellectual property rights inherent in such information.<br>
><br>
><br>
><br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: <a href="http://lists.jboss.org/pipermail/cdi-dev/attachments/20150121/eb5a3559/attachment-0001.html" target="_blank">http://lists.jboss.org/pipermail/cdi-dev/attachments/20150121/eb5a3559/attachment-0001.html</a><br>
<br>
------------------------------<br>
<br>
Message: 3<br>
Date: Wed, 21 Jan 2015 16:20:46 +0100<br>
From: Antoine Sabot-Durand <<a href="mailto:antoine@sabot-durand.net">antoine@sabot-durand.net</a>><br>
Subject: Re: [cdi-dev] Building EJB-like @Asynchronous via interceptor<br>
in CDI<br>
To: "<a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a>" <<a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a>><br>
Message-ID: <<a href="mailto:2D5C8B76-F389-4CE3-92F6-E48EFA0BE8D6@sabot-durand.net">2D5C8B76-F389-4CE3-92F6-E48EFA0BE8D6@sabot-durand.net</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Hi Guys,<br>
<br>
Remember that CDI 2.0 will require JDK8. So user will have very powerful asynchronous feature out of the box with the CompletableFuture class. So I wonder if we should really focus on this @Asynhcronous annotation and it?s right JSR ?<br>
Whatever we decide here, the first point we should work on IMO is specifying how contexts will be propagated (or not) during async operations.<br>
<br>
Antoine<br>
-------------- next part --------------<br>
A non-text attachment was scrubbed...<br>
Name: signature.asc<br>
Type: application/pgp-signature<br>
Size: 495 bytes<br>
Desc: Message signed with OpenPGP using GPGMail<br>
Url : <a href="http://lists.jboss.org/pipermail/cdi-dev/attachments/20150121/9036a06f/attachment-0001.bin" target="_blank">http://lists.jboss.org/pipermail/cdi-dev/attachments/20150121/9036a06f/attachment-0001.bin</a><br>
<br>
------------------------------<br>
<br>
Message: 4<br>
Date: Wed, 21 Jan 2015 16:25:44 +0100<br>
From: Antoine Sabot-Durand <<a href="mailto:antoine@sabot-durand.net">antoine@sabot-durand.net</a>><br>
Subject: Re: [cdi-dev] [JBoss JIRA] (CDI-499) Firing events<br>
asynchronously<br>
To: Werner Keil <<a href="mailto:werner.keil@gmail.com">werner.keil@gmail.com</a>><br>
Cc: cdi-dev <<a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a>><br>
Message-ID: <<a href="mailto:70D7164E-3C68-46A9-9BCC-F737E5385C85@sabot-durand.net">70D7164E-3C68-46A9-9BCC-F737E5385C85@sabot-durand.net</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
My concern is too avoid creating a new EJB spec with CDI 2. Managing async operation is now very simple for end user with java 8, so do we have to add annotation to support it. I wonder.<br>
<br>
Antoine Sabot-Durand<br>
<br>
> Le 21 janv. 2015 ? 16:07, Werner Keil <<a href="mailto:werner.keil@gmail.com">werner.keil@gmail.com</a>> a ?crit :<br>
><br>
> Hi Antoine,<br>
><br>
> It seems the exact place for that is still to be found, but even if these are separate threads in parallel the fact that CDI 2 aims to add support for async events means anything other JSRs cannot do or don't want to do (see Bill's remark on resources in other JSRs) would fit into CDI 2 as long as the resource situation here isn't too critical either of course;-)<br>
><br>
> That's what I wanted to say.<br>
><br>
> Werner<br>
><br>
>> On Wed, Jan 21, 2015 at 4:01 PM, Antoine Sabot-Durand <<a href="mailto:antoine@sabot-durand.net">antoine@sabot-durand.net</a>> wrote:<br>
>> Hi Werner,<br>
>><br>
>><br>
>> No, it doesn?t cover @Asynchronous or @Async annotation. Discussion about async operation support in CDI 2.0 is another subject.<br>
>><br>
>><br>
>>> Le 21 janv. 2015 ? 13:52, Werner Keil <<a href="mailto:werner.keil@gmail.com">werner.keil@gmail.com</a>> a ?crit :<br>
>>><br>
>>> Antoine/all,<br>
>>><br>
>>> Is it safe to assume any recent discussion about an @Asynchronous annotation would be covered there unless e.g. EJB itself needs it to be updated for EE 8?<br>
>>><br>
>>> Werner<br>
>>><br>
>>>> On Wed, Jan 21, 2015 at 1:06 PM, <<a href="mailto:cdi-dev-request@lists.jboss.org">cdi-dev-request@lists.jboss.org</a>> wrote:<br>
>>>> Send cdi-dev mailing list submissions to<br>
>>>> <a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
>>>><br>
>>>> To subscribe or unsubscribe via the World Wide Web, visit<br>
>>>> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
>>>> or, via email, send a message with subject or body 'help' to<br>
>>>> <a href="mailto:cdi-dev-request@lists.jboss.org">cdi-dev-request@lists.jboss.org</a><br>
>>>><br>
>>>> You can reach the person managing the list at<br>
>>>> <a href="mailto:cdi-dev-owner@lists.jboss.org">cdi-dev-owner@lists.jboss.org</a><br>
>>>><br>
>>>> When replying, please edit your Subject line so it is more specific<br>
>>>> than "Re: Contents of cdi-dev digest..."<br>
>>>><br>
>>>><br>
>>>> Today's Topics:<br>
>>>><br>
>>>> 1. [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>>>> (Antoine Sabot-Durand (JIRA))<br>
>>>> 2. [JBoss JIRA] (CDI-31) Asynchronous events<br>
>>>> (Antoine Sabot-Durand (JIRA))<br>
>>>> 3. [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>>>> (Antoine Sabot-Durand (JIRA))<br>
>>>> 4. [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>>>> (Antoine Sabot-Durand (JIRA))<br>
>>>> 5. [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>>>> (Jos? Paumard (JIRA))<br>
>>>> 6. [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>>>> (Jozef Hartinger (JIRA))<br>
>>>><br>
>>>><br>
>>>> ----------------------------------------------------------------------<br>
>>>><br>
>>>><br>
>>>> Message: 6<br>
>>>> Date: Wed, 21 Jan 2015 07:06:49 -0500 (EST)<br>
>>>> From: "Jozef Hartinger (JIRA)" <<a href="mailto:issues@jboss.org">issues@jboss.org</a>><br>
>>>> Subject: [cdi-dev] [JBoss JIRA] (CDI-499) Firing events asynchronously<br>
>>>> To: <a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
>>>> Message-ID:<br>
>>>> <JIRA.12561330.1421835166000.18078.1421842009269@Atlassian.JIRA><br>
>>>> Content-Type: text/plain; charset=UTF-8<br>
>>>><br>
>>>><br>
>>>> [ <a href="https://issues.jboss.org/browse/CDI-499?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13034058#comment-13034058" target="_blank">https://issues.jboss.org/browse/CDI-499?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13034058#comment-13034058</a> ]<br>
>>>><br>
>>>> Jozef Hartinger commented on CDI-499:<br>
>>>> -------------------------------------<br>
>>>><br>
>>>> {quote}For backward compatibility reason the possibility to invoke an observer asynchronously should be let to the observer{quote}<br>
>>>> What exactly are the reasons for this? I can think of one:<br>
>>>> - observer method injecting a @RequestScoped (or similar) bean<br>
>>>> Are there other arguments for this?<br>
>>>><br>
>>>> {quote}3. Observer bound to a transaction phase<br>
>>>> these observer will be invoked in the right transaction phase but asynchronously{quote}<br>
>>>> How's that different from Event.fire()?<br>
>>>><br>
>>>> > Firing events asynchronously<br>
>>>> > -----------------------------<br>
>>>> ><br>
>>>> > Key: CDI-499<br>
>>>> > URL: <a href="https://issues.jboss.org/browse/CDI-499" target="_blank">https://issues.jboss.org/browse/CDI-499</a><br>
>>>> > Project: CDI Specification Issues<br>
>>>> > Issue Type: Feature Request<br>
>>>> > Components: Events<br>
>>>> > Affects Versions: 1.2.Final<br>
>>>> > Reporter: Antoine Sabot-Durand<br>
>>>> ><br>
>>>> > We should allow a way to fire event asynchronously. This mechanism should leverage new async API in JDK8 especially the {{CompletionStage}} interface.<br>
>>>> > Our proposal is:<br>
>>>> > h2. 1. Add {{fireAsync()}} method to {{Event}} and {{BeanManager}}<br>
>>>> > Signature of the method on {{Event<T>}} would be<br>
>>>> > {code:java}<br>
>>>> > <U extends T> CompletionStage<U> fireAsync(U event);<br>
>>>> > {code}<br>
>>>> > Signature on {{BeanManager}} would be<br>
>>>> > {code:java}<br>
>>>> > <T> CompletionStage<T> fireAsyncEvent(T event, Annotation... qualifiers)<br>
>>>> > {code}<br>
>>>> > h2. 2. Add an {{asyncSupported()}} member to {{@Observes}}<br>
>>>> > For backward compatibility reason the possibility to invoke an observer asynchronously should be let to the observer (legacy observers should be called synchronously). We propose to add the boolean {{asyncSupported()}} member with the {{false}} default value to support this backward compatibility aspect.<br>
>>>> > So to be notified asynchronously an observer should have {{asyncSupported}} member to true. otherwise it will be called synchronously.<br>
>>>> > h2. 3. Observer bound to a transaction phase<br>
>>>> > these observer will be invoked in the right transaction phase but asynchronously<br>
>>>> > h2. 4. Event Ordering<br>
>>>> > Should we decide to add events ordering in CDI 2.0, the order will be keep in asynchronous observer notification. If there are a mix of synchronous and asynchronous observer, asynchronous will be called first in order, then synchronous in their order (async has priority on sync).<br>
>>>> > h2. 5. Event state (payload mutability)<br>
>>>> > We'll keep payload mutability with async events (but should explicitly specify it). That means that we should guarantee the event state consistency between observers and in case of ordered observers the fact that observer N+1 get the event state at the end of observer N.<br>
>>>><br>
>>>><br>
>>>><br>
>>>> --<br>
>>>> This message was sent by Atlassian JIRA<br>
>>>> (v6.3.11#6341)<br>
>>>><br>
>>>><br>
>>>> ------------------------------<br>
>>>><br>
>>>> _______________________________________________<br>
>>>> cdi-dev mailing list<br>
>>>> <a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
>>>> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
>>>><br>
>>>> Note that for all code provided on this list, the provider licenses the code under the Apache License, Version 2 (<a href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">http://www.apache.org/licenses/LICENSE-2.0.html</a>). For all other ideas provided on this list, the provider waives all patent and other intellectual property rights inherent in such information.<br>
>>>><br>
>>>> End of cdi-dev Digest, Vol 50, Issue 42<br>
>>>> ***************************************<br>
>>><br>
>>> _______________________________________________<br>
>>> cdi-dev mailing list<br>
>>> <a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
>>> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
>>><br>
>>> Note that for all code provided on this list, the provider licenses the code under the Apache License, Version 2 (<a href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">http://www.apache.org/licenses/LICENSE-2.0.html</a>). For all other ideas provided on this list, the provider waives all patent and other intellectual property rights inherent in such information.<br>
><br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: <a href="http://lists.jboss.org/pipermail/cdi-dev/attachments/20150121/3ffd155b/attachment.html" target="_blank">http://lists.jboss.org/pipermail/cdi-dev/attachments/20150121/3ffd155b/attachment.html</a><br>
<br>
------------------------------<br>
<br>
_______________________________________________<br>
cdi-dev mailing list<br>
<a href="mailto:cdi-dev@lists.jboss.org">cdi-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
<br>
Note that for all code provided on this list, the provider licenses the code under the Apache License, Version 2 (<a href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">http://www.apache.org/licenses/LICENSE-2.0.html</a>). For all other ideas provided on this list, the provider waives all patent and other intellectual property rights inherent in such information.<br>
<br>
End of cdi-dev Digest, Vol 50, Issue 45<br>
***************************************<br>
</blockquote></div><br></div></div>