<div dir="ltr">OK, fair point.<div><br></div><div>Once I am done w/ documentation, I will get back to this - unless some else beats me to it :) </div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Jul 28, 2014 at 4:56 PM, Luke Holmquist <span dir="ltr">&lt;<a href="mailto:lholmqui@redhat.com" target="_blank">lholmqui@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">I would rather not have to generate some id and then store that locally.<br>
<br>
Simple push is not the only thing the uses the UPS client.<br>
<br>
Sent from my iPhone<br>
<div class="HOEnZb"><div class="h5"><br>
&gt; On Jul 28, 2014, at 3:36 AM, Karel Piwko &lt;kpiwko@ .com&gt; wrote:<br>
&gt;<br>
&gt; Yes, that was it. And you&#39;re right, it indeed makes better sense to<br>
&gt; generate UUID by client, not by server.<br>
&gt;<br>
&gt; Karel<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On Fri, Jul 25, 2014 at 3:19 PM, Matthias Wessendorf<br>
&gt; &lt;<a href="mailto:matzew@apache.org">matzew@apache.org</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; On Fri, Jul 25, 2014 at 3:06 PM, Karel Piwko &lt;<a href="mailto:kpiwko@redhat.com">kpiwko@redhat.com</a>&gt;<br>
&gt;&gt; wrote:<br>
&gt;&gt;&gt; On Fri, Jul 25, 2014 at 2:56 PM, Matthias Wessendorf<br>
&gt;&gt;&gt; &lt;<a href="mailto:matzew@apache.org">matzew@apache.org</a>&gt; wrote:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; UPS can translate {deviceToken} to EndpointURL. We just need a way<br>
&gt;&gt;&gt;&gt;&gt; how<br>
&gt;&gt;&gt;&gt;&gt; to generate unique {deviceToken} on client.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; that would be our own layer on-top, which is a no-go<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; why? it would be there anyway. Imagine that your UPS is running on<br>
&gt;&gt;&gt; exposed URL which is a gateway to your internal network. SP URL is<br>
&gt;&gt;&gt; valid only in that internal network, not visible from outside world<br>
&gt;&gt;&gt; at<br>
&gt;&gt;&gt; all.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; So, using UPS is the only way to send the message to that URL.<br>
&gt;&gt;<br>
&gt;&gt; Hrm... let&#39;s see if I am following you. Let&#39;s try:<br>
&gt;&gt;<br>
&gt;&gt; If the UPS has a mapping between &quot;magic_UUID&quot; and endpointURL, that<br>
&gt;&gt; means the client layer (e.g. UPS.js) has to store this UUID<br>
&gt;&gt; somewhere, for unregistration.<br>
&gt;&gt;<br>
&gt;&gt; Instead of having the UPS generating the UUID, it could be generated<br>
&gt;&gt; by the UPS.js, and its JS callback would/could return it (so that the<br>
&gt;&gt; JS app has it handy for later unregister).<br>
&gt;&gt;<br>
&gt;&gt; That would mean the JS client would sending down the same JSON as<br>
&gt;&gt; before, right ?<br>
&gt;&gt;<br>
&gt;&gt; deviceToken: client_side_generated_UUID,<br>
&gt;&gt; pushEndpoint: someURL<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Did I get it ?<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Would UUID work?<br>
&gt;&gt;&gt;&gt;&gt; EndpointURL can become part of JSON [1].<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; it was there as &quot;simplePushEndpoint&quot;, but for stated reasons it&#39;s<br>
&gt;&gt;&gt; now<br>
&gt;&gt;&gt;&gt; the deviceToken that has the URL value<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Such change would mean that clients can&#39;t use SP server directly<br>
&gt;&gt;&gt; but<br>
&gt;&gt;&gt;&gt;&gt; have to go through UPS. This makes more sense then current setup<br>
&gt;&gt;&gt; to<br>
&gt;&gt;&gt;&gt;&gt; me.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; not really<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; See reason stated above.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Karel<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; [1]<br>
&gt;&gt;&gt; <a href="https://github.com/aerogear/aerogear-unifiedpush-server/blob/master/jaxrs/src/main/java/org/jboss/aerogear/unifiedpush/rest/registry/installations/InstallationRegistrationEndpoint.java#L74" target="_blank">https://github.com/aerogear/aerogear-unifiedpush-server/blob/master/jaxrs/src/main/java/org/jboss/aerogear/unifiedpush/rest/registry/installations/InstallationRegistrationEndpoint.java#L74</a><br>

&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; On Fri, Jul 25, 2014 at 1:04 PM, Matthias Wessendorf<br>
&gt;&gt;&gt;&gt;&gt; &lt;<a href="mailto:matzew@apache.org">matzew@apache.org</a>&gt; wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; On Fri, Jul 25, 2014 at 12:25 PM, Tadeas Kriz &lt;<a href="mailto:tkriz@redhat.com">tkriz@redhat.com</a>&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; —<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Tadeas Kriz<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; On 25 Jul 2014, at 11:04 am, Daniel Bevenius<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; &lt;<a href="mailto:daniel.bevenius@gmail.com">daniel.bevenius@gmail.com</a>&gt; wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 5. don’t use the url as a deviceToken (might not comply<br>
&gt;&gt;&gt; with<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Mozzila’s SimplePush specs)<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; The deviceToken is an UPS concept and there is nothing in the<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; SimplePush spec which is violated in this case.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; I thought that deviceTokens were changed from a generated<br>
&gt;&gt;&gt; value to<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; the URL just to comply with Mozzila’s SimplePush specs.<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; Nope<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Matzew, why was the generated token removed then?<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; It was the channelID before - but that should not be exposed.<br>
&gt;&gt;&gt;&gt;&gt;&gt; In GCM devices are identified via registrationID<br>
&gt;&gt;&gt;&gt;&gt;&gt; In APNs devices are identified va deviceToken<br>
&gt;&gt;&gt;&gt;&gt;&gt; (both are somewhat the same - but different names)<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; In SimplePush devices are identifeid v/ the URL of the<br>
&gt;&gt;&gt; pushEndpoint<br>
&gt;&gt;&gt;&gt;&gt;&gt; (a backend uses that endpoint to notify _THAT_ client,<br>
&gt;&gt;&gt; regardless<br>
&gt;&gt;&gt;&gt;&gt; of<br>
&gt;&gt;&gt;&gt;&gt;&gt; how many channels it has subscribed)<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; So, that lead us to make the change (see history of this threa)<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; -M<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; I&#39;m not sure about what the best option is for UPS thought.<br>
&gt;&gt;&gt;&gt;&gt; Would a<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; regex in for the @Path annotation work perhaps, something<br>
&gt;&gt;&gt; like:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; @DELETE<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; @Path(&quot;{token, .+}&quot;)<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; public Response unregisterInstallations(<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; What do you mean by that regex? The problem is simply the<br>
&gt;&gt;&gt;&gt;&gt; “%2F”<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; in the token (which is an URLencoded simplepush url) and it’s<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; being revoked long before it hits the RestEasy (which does the<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; routing according to what’s in the @Path).<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; On 25 July 2014 10:32, Tadeas Kriz &lt;<a href="mailto:tkriz@redhat.com">tkriz@redhat.com</a>&gt; wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; —<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Tadeas Kriz<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; On 24 Jul 2014, at 05:44 pm, Karel Piwko &lt;<a href="mailto:kpiwko@redhat.com">kpiwko@redhat.com</a>&gt;<br>
&gt;&gt;&gt;&gt;&gt; wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; On Thu, Jul 24, 2014 at 3:28 PM, Tadeas Kriz<br>
&gt;&gt;&gt;&gt;&gt; &lt;<a href="mailto:tkriz@redhat.com">tkriz@redhat.com</a>&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; It should not. For hibernate, it’s just a string like<br>
&gt;&gt;&gt; any<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; other.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; The problem might be in the configuration of<br>
&gt;&gt;&gt;&gt;&gt; <a href="http://JAX.RS/RestEasy" target="_blank">JAX.RS/RestEasy</a>. If<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; I’ll have some time today evening, I’ll try to fix<br>
&gt;&gt;&gt; it, it<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; should<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; be an easy fix.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Last famous words? ;-)<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; I shall never say “an easy fix” again.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; But I agree. Everything is string and URL encode should<br>
&gt;&gt;&gt;&gt;&gt; happen on<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; client while server should automatically decode and work<br>
&gt;&gt;&gt;&gt;&gt; always<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; with<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; just decoded string. If we need to encode twice, something<br>
&gt;&gt;&gt; is<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; wrong.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Anyway, the 400 Bad request response is made by the tomcat<br>
&gt;&gt;&gt;&gt;&gt; itself,<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; disallowing the use of %2F as a path parameter. This will<br>
&gt;&gt;&gt;&gt;&gt; probably<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; apply on other web containers.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Possible solutions with their disadvantages:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 1. well-documented double-encoding of the URL (might be<br>
&gt;&gt;&gt;&gt;&gt; confusing)<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 2. use @QueryParam instead of @PathParam (breaks the api<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; consistence, as every other call would still use @PathParam)<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 3. allow @QueryParam (again, breaks the api consistence, but<br>
&gt;&gt;&gt;&gt;&gt; only<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; for the SimplePush)<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 4. find another encoding (Base64 for URL = URLEncode then<br>
&gt;&gt;&gt; Base64<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; encode)<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 5. don’t use the url as a deviceToken (might not comply<br>
&gt;&gt;&gt; with<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Mozzila’s SimplePush specs)<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; What do you think guys?<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; aerogear-dev mailing list<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; aerogear-dev mailing list<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; aerogear-dev mailing list<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; aerogear-dev mailing list<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; --<br>
&gt;&gt;&gt;&gt;&gt;&gt; Matthias Wessendorf<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>
&gt;&gt;&gt;&gt;&gt;&gt; sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
&gt;&gt;&gt;&gt;&gt;&gt; twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a><br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt;&gt; aerogear-dev mailing list<br>
&gt;&gt;&gt;&gt;&gt; <a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; --<br>
&gt;&gt;&gt;&gt; Matthias Wessendorf<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>
&gt;&gt;&gt;&gt; sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
&gt;&gt;&gt;&gt; twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt; aerogear-dev mailing list<br>
&gt;&gt;&gt; <a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
&gt;&gt;&gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; --<br>
&gt;&gt; Matthias Wessendorf<br>
&gt;&gt;<br>
&gt;&gt; blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>
&gt;&gt; sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
&gt;&gt; twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a><br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; aerogear-dev mailing list<br>
&gt; <a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
&gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
<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></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>