Yep,<div>I understand, like you I&#39;m not sure what is the best choice (honestly I think yours is better), I just wanted to put all the options on the table, should be great to hear other opinions.</div><div>Seb</div><div>
 <br><br><div class="gmail_quote">On Wed, Mar 20, 2013 at 3:00 PM, Matthias Wessendorf <span dir="ltr">&lt;<a href="mailto:matzew@apache.org" target="_blank">matzew@apache.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
 <br><div class="gmail_quote"><div class="im"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>when we will be adding new devices (BB, Windows, Facebook phone;) ), could something like that works :</div>

</blockquote><div><br></div><div><br></div></div><div>You still need some server side logic, to understadn the windows (for instance) mapping of the attributes.</div><div><br></div><div>IMO no matter if the decision of the TYPE is done _inside_ of the payload, or on different endpoint/subendpoint.</div>

<div><br></div><div>In vert.x the RouteMatcher is already generic:</div><div><pre style="font-size:13px;line-height:19px;font-family:Consolas,&#39;Liberation Mono&#39;,Courier,monospace;word-wrap:break-word;margin-top:15px;margin-bottom:15px;background-color:rgb(248,248,248);border:1px solid rgb(204,204,204);overflow:auto;padding:6px 10px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px">
<span style="color:rgb(51,51,51)">rm</span><span style="font-weight:bold">.</span><span style="color:teal">post</span><span style="font-weight:bold">(</span><span style="color:rgb(221,17,68)">&quot;/applications/:key/:variant&quot;</span><span style="font-weight:bold">,</span> <span style="font-weight:bold">new</span> <span style="color:rgb(51,51,51)">Handler</span><span style="font-weight:bold">&lt;</span><span style="color:rgb(51,51,51)">HttpServerRequest</span><span style="font-weight:bold">&gt;()</span></pre>

</div><div> So... if theere is a post against &quot;/application/12345/windows&quot; - the &quot;parser decides based on &quot;variant&quot;. Your way it would check based on payload type;</div><div><br></div><div>Again - I am not against it - nor I am for that :) I am just ... not sure if &quot;wildcards&quot; are always that great...</div>
<div><div class="h5">
<div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><br></div><div><span style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">/applications/</span><span style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">das231432qwdsa2/register</span></div>


<div><span style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif"> </span></div><div><span style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">{</span></div>


<div><span style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">  &quot;deviceType&quot;: &quot;ios&quot; // could be &quot;android&quot;, &quot;bb&quot;</span></div>
<div><span style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">  &quot;settings&quot; : {</span></div><div><span style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">                    // wildcard key/value pairs </span></div>


<div><span style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">                   }</span></div><div><font color="#222222" face="arial, sans-serif">}</font></div>
<div><font color="#222222" face="arial, sans-serif"><br></font></div><div><font color="#222222" face="arial, sans-serif">We keep here a generic API but will maybe have more work on the backend side.</font></div><div><font color="#222222" face="arial, sans-serif">Just a suggestion.</font></div>


<div><font color="#222222" face="arial, sans-serif">Seb</font></div><div><div><div><font color="#222222" face="arial, sans-serif"><br></font></div><div><br><br><div class="gmail_quote">On Wed, Mar 20, 2013 at 2:41 PM, Matthias Wessendorf <span dir="ltr">&lt;<a href="mailto:matzew@apache.org" target="_blank">matzew@apache.org</a>&gt;</span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br><br><div class="gmail_quote"><div>On Wed, Mar 20, 2013 at 2:13 PM, Sebastien Blanc <span dir="ltr">&lt;<a href="mailto:scm.blanc@gmail.com" target="_blank">scm.blanc@gmail.com</a>&gt;</span> wrote:<br>


</div><div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Maybe we can have this UBER api but we still need to have the &quot;atomic&quot; service to be able to add a mobile apps afterwards, no ? <div>Second point is, if I understood it well from the previous gists and discussion : inside a same device type, let&#39;s say iOS, there can multiple mobile apps pointing to the same push app (freemium/premium etc ...). So we need an extra array : </div>




<div><br></div><div><br></div><div><div><div style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">[</div><div style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">




 {</div><div style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">  name: &quot;app1&quot;,</div></div></div></blockquote></div><div>..... </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">



<div><div><div style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif"><span style="font-size:12.727272033691406px">  name: &quot;app2&quot;,</span></div></div></div></blockquote>
<div><br></div><div>... not sure if I really want to register the entire app store, with one HTTP POST :)</div><div><br></div><div>what u suggested is basically, one POST registers:</div><div>-Foo-Inc&#39;s HR app (and various iOS/Android)</div>



<div>-Foo-Inc&#39;s CRM app (and various iOS/Android)</div><div>-Foo-Inc&#39;s WHAT-NOT-APP app (and various iOS/Android)</div><div>...</div><div><br></div><div>I think that a POST to /applications, should only register ONE push app (however, with different mobile variations (paid/free))</div>


<span><font color="#888888">
<div><br></div><div><br></div><div>-M</div></font></span><div><div><div><br></div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div><div style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">
<div><div>  description: &quot;desc2&quot;,</div><div>  // I would recommend wrapping these in platform names in case key names ever change and match</div><div>  ios: {</div><div>
      [</div></div><div>          {cert: &quot;certval3&quot;,</div><div>          passphrase: &quot;passphrase3&quot;},</div><div><br></div><div>         {cert: &quot;certval4&quot;,</div><div>          passphrase: &quot;passphrase4&quot;}</div>




<div>   ]         </div><div>  },</div><div>android: {</div><div>    [</div><div>       {&quot;google-api-key&quot;: &quot;key3&quot;},</div><div>       {&quot;google-api-key&quot;: &quot;key4&quot;}</div><div>   ]  </div>




<div>}</div><div> }</div><div>]</div></div></div><div><div><div style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif"><br></div><div style="color:rgb(34,34,34);font-size:12.727272033691406px;font-family:arial,sans-serif">




<br></div><div><br><br><div class="gmail_quote">On Wed, Mar 20, 2013 at 1:54 PM, Kris Borchers <span dir="ltr">&lt;<a href="mailto:kris@redhat.com" target="_blank">kris@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">




<div style="word-wrap:break-word"><br><div><div><div><div>On Mar 20, 2013, at 7:42 AM, Matthias Wessendorf &lt;<a href="mailto:matzew@apache.org" target="_blank">matzew@apache.org</a>&gt; wrote:</div><br><blockquote type="cite">




<br><br><div class="gmail_quote">On Wed, Mar 20, 2013 at 1:31 PM, Kris Borchers <span dir="ltr">&lt;<a href="mailto:kris@redhat.com" target="_blank">kris@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div style="word-wrap:break-word"><br><div><div><div>On Mar 20, 2013, at 6:43 AM, Matthias Wessendorf &lt;<a href="mailto:matzew@apache.org" target="_blank">matzew@apache.org</a>&gt; wrote:</div><br></div><blockquote type="cite">





<div>Here is the REST API for &quot;Push App&quot; (+mobile app) registrations:<div><br></div><div><a href="https://gist.github.com/matzew/2da6fc349a4aaf629bce" target="_blank">https://gist.github.com/matzew/2da6fc349a4aaf629bce</a></div>





<div>
<br></div><div><br></div><div>Questions:</div><div><br></div><div>The post to &quot;/applications/das231432qwdsa2/iOS&quot; and/or &quot;/applications/das231432qwdsa2/android&quot; are different (payload-wise)....</div><div>






<br></div><div>Not sure if that is best solution.... However, we need to differentiate between different &quot;mobile os variants&quot; anyways....</div><div><br></div></div><div>My (CURRENT) feelings is that a different &quot;endpoint&quot; is better instead of an ugly, large - but generic - API that does everything, and the server figures out what type of mobile app has been registered …</div>





</blockquote><div><br></div>I agree that different endpoints makes sense, especially if a user is only interested in iOS devices for example and so only build an app that works on iOS, since this would allow for easy registration of a single type of application. I would however like to see, and believe users would like to see, some sort of unified API so that they only have register an app once for both Android and iOS. Maybe this won&#39;t be an issue once we have more than just a REST interface but just wanted to throw it out there.<br>





</div></div></blockquote><div><br></div><div><br></div><div>Like a post to &quot;/applications</div><div><br></div><div>where the payload is:</div><div><br></div><div><div>{</div><div>  // push app properties</div><div>  &quot;description&quot;:&quot;just a test&quot;,</div>





<div>  &quot;name&quot;:&quot;TestApp&quot;,</div><div>  </div><div>  // REQUIRED Apple Push Network props:</div><div>  &quot;cert&quot;:&quot;CERT_UPLOAD_VAL&quot;,</div><div>  &quot;passphrase&quot;: &quot;top-secret&quot;,</div>





<div>  </div><div>  REQUIRED GCM Push Network props:</div><div>  &quot;google-api-key&quot;: &quot;dsdsaadsadsdasadsdsa&quot; </div><div>  </div><div>}</div><div><br></div><div>and the 201 Response could look like:</div>




<div>
{</div><div>  &quot;id&quot;:&quot;PushAppKey&quot;</div><div>  &quot;apps&quot;:[</div><div>     {&quot;iOS-ID&quot;:&quot;adda213213&quot;},</div><div>     {&quot;android-ID&quot;:&quot;454dda213213&quot;},</div><div>  ]</div>





<div>}</div><div><br></div><div>This UBER :) API could work, for really just one &quot;server side&quot; abstraction, that has exaclty ONE iOS and one Android APP  (of course the request body of the POST could contain arrays for different CERTS, passphrases, API-Keys).</div>





<div><br></div><div>For a convenience we surly can have that - Is that what you mean ?</div></div></div></blockquote><div><br></div></div></div>Yep, that is pretty much what I meant, and would be in favor of passing an array of applications instead of an array of certs, etc. which would allow for multiple applications on multiple platforms like this:</div>




<div><br></div><div>[</div><div> {</div><div>  name: &quot;app1&quot;,</div><div>  description: &quot;desc1&quot;,</div><div>  // I would recommend wrapping these in platform names in case key names ever change and match</div>




<div>  ios: {</div><div>   cert: &quot;certval1&quot;,</div><div>   passphrase: &quot;passphrase1&quot;</div><div>  },</div><div>  android: {</div><div>   &quot;google-api-key&quot;: &quot;key1&quot;</div><div>  }</div><div>




 },</div><div><div> {</div><div>  name: &quot;app2&quot;,</div><div>  description: &quot;desc2&quot;,</div><div>  // I would recommend wrapping these in platform names in case key names ever change and match</div><div>  ios: {</div>




<div>   cert: &quot;certval2&quot;,</div><div>   passphrase: &quot;passphrase2&quot;</div><div>  },</div><div>  android: {</div><div>   &quot;google-api-key&quot;: &quot;key2&quot;</div><div>  }</div><div> }</div></div><div>




]<br><blockquote type="cite"><div><div><div class="gmail_quote"><div><div><br></div><div>-M</div></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div style="word-wrap:break-word"><div><blockquote type="cite"><div><div>
<div><br></div><div><br></div><div>NEXT: Device Registrations + Sender Endpoints</div><div><br></div><div>(Followed by &quot;management&quot; (get, put, delete.....)</div><div><br></div><div> </div><div>Greetings,</div><div>






Matthias</div><div><br></div><div><br><br><div class="gmail_quote">On Tue, Mar 19, 2013 at 4:45 PM, Matthias Wessendorf <span dir="ltr">&lt;<a href="mailto:matzew@apache.org" target="_blank">matzew@apache.org</a>&gt;</span> wrote:<br>






<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><font face="Helvetica, arial, freesans, clean, sans-serif"><span style="font-size:14px;line-height:20px">Hello,</span></font><div>






<font face="Helvetica, arial, freesans, clean, sans-serif"><span style="font-size:14px;line-height:20px"><br>
</span></font></div><div><font face="Helvetica, arial, freesans, clean, sans-serif"><span style="font-size:14px;line-height:20px">here is the &#39;overview&#39; section of the Unified push....:<br></span></font><div><font face="Helvetica, arial, freesans, clean, sans-serif"><span style="font-size:14px;line-height:20px"><br>







</span></font></div><div><font face="Helvetica, arial, freesans, clean, sans-serif"><span style="font-size:14px;line-height:20px"><br></span></font><h1 style="font-size:28px;margin:0px 0px 10px;padding:0px;font-family:Helvetica,arial,freesans,clean,sans-serif">







AeroGear Unified Push (DRAFT 0.0.2)</h1><p style="margin:0px 0px 15px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px">This is an <em>early</em> version of a &#39;spec&#39; for the AeroGear Unified Push server.</p>







<h2 style="margin:20px 0px 10px;padding:0px;font-size:24px;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:rgb(204,204,204);font-family:Helvetica,arial,freesans,clean,sans-serif"><a name="13d881a61a520392_13d8814d23b97829_13d8808dde8a2b3f_13d87ef21dc99431_13d87de08faaf0a3_13d87c8ffc9079b9_13d83534f6ebf0be_overview" href="https://gist.github.com/matzew/ec5c3c2dfa955c58c328#overview" style="color:rgb(65,131,196);text-decoration:none;display:block;padding-left:30px" target="_blank"></a>Overview</h2>




<p style="margin:0px 0px 15px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px">The <em>Unified Push</em> solution contains the following components:</p><ul style="margin:15px 0px;padding:0px 0px 0px 30px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px">







<li>Native Push Component: <em style="margin-top:0px">sends native push message to registered apps</em></li><li>Web Push Component: <em style="margin-top:0px">sends web push message to online client (e.g. WebSocket/SockJS clients)</em></li>







<li>Client SDK API<ul style="margin:0px;padding:0px 0px 0px 30px"><li>Native Push Client for iOS</li><li>Native Push Client for Android</li><li>Web Push Client for JavaScript</li></ul></li></ul><p style="margin-top:15px;margin-right:0px;margin-left:0px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px;margin-bottom:0px!important">







Details are discussed on the each of the different components</p><p style="margin-top:15px;margin-right:0px;margin-left:0px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px;margin-bottom:0px!important">







<br></p><p style="margin-top:15px;margin-right:0px;margin-left:0px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px;margin-bottom:0px!important">NOTE:   LINK need to be enabled :) :)</p>




<p style="margin-top:15px;margin-right:0px;margin-left:0px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px;margin-bottom:0px!important">HOWEVER.......</p><p style="margin-top:15px;margin-right:0px;margin-left:0px;margin-bottom:0px!important">







<font face="Helvetica, arial, freesans, clean, sans-serif"><span style="line-height:20px">Here is what I&#39;d like to add to the home page for the native push component - based on last weeks </span></font><font face="Helvetica, arial, freesans, clean, sans-serif"><span style="font-size:14px;line-height:20px">discussion</span></font><font face="Helvetica, arial, freesans, clean, sans-serif"><span style="line-height:20px">:</span></font></p>




<p style="margin-top:15px;margin-right:0px;margin-left:0px;margin-bottom:0px!important"><font face="Helvetica, arial, freesans, clean, sans-serif"><span style="font-size:14px;line-height:20px"><a href="https://gist.github.com/matzew/69d33a18d4fac9fdedd4" target="_blank">https://gist.github.com/matzew/69d33a18d4fac9fdedd4</a></span></font></p>




<p style="margin-top:15px;margin-right:0px;margin-left:0px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px;margin-bottom:0px!important">PLEASE comment on the gist....</p>






<span><font color="#888888"><p style="margin-top:15px;margin-right:0px;margin-left:0px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px;margin-bottom:0px!important"><br>





</p><p style="margin-top:15px;margin-right:0px;margin-left:0px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px;margin-bottom:0px!important">

<br></p><p style="margin-top:15px;margin-right:0px;margin-left:0px;font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:13.63636302947998px;line-height:20px;margin-bottom:0px!important"><br></p><br>-- <br>Matthias Wessendorf<br>







<br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>






twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a><br>
</font></span></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Matthias Wessendorf <br><br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>






twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
</div></div></div>
_______________________________________________<br>aerogear-dev mailing list<br><a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br><a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a></blockquote>





</div><br></div><br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br>Matthias Wessendorf <br>





<br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>




</div></div>
twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
_______________________________________________<div><br>aerogear-dev mailing list<br><a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br><a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a></div>




</blockquote></div><br></div><br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div></div></div><div><div><br><br clear="all">
<div><br></div>-- <br>Matthias Wessendorf <br>
<br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>



twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
</div></div><br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div></div></div><div class="HOEnZb"><div class="h5"><br><br clear="all">
<div><br></div>-- <br>Matthias Wessendorf <br>
<br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>

twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
</div></div><br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div><br></div>