[aerogear-dev] AeroGear WebPush Java Client

Idel Pivnitskiy idel.pivnitskiy at gmail.com
Wed Mar 16 05:34:20 EDT 2016


>
> will this replace the java client [1] we currently have? Or will can we
> extend it?


Think that it will replace SimplePush in the future.

wanna have it included in the aerogear organization ?


it would be great :)

Best regards,
Idel Pivnitskiy
--
Twitter: @idelpivnitskiy <https://twitter.com/idelpivnitskiy>
GitHub: @idelpivnitskiy <https://github.com/idelpivnitskiy>

On Wed, Mar 16, 2016 at 10:46 AM, Matthias Wessendorf <matzew at apache.org>
wrote:

> awesome!
>
> wanna have it included in the aerogear organization ?
>
> On Tue, Mar 15, 2016 at 9:17 PM, Idel Pivnitskiy <
> idel.pivnitskiy at gmail.com> wrote:
>
>> What's new in WebPush Java Client:
>>
>>    - Updated to the latest aerogear-parent
>>    - Updated Jetty http2-client to the latest version
>>    - Clean up pom.xml
>>    - Subscription and PushMessage objects became to be Serializable
>>    - Refactoring and little improvements
>>    - Added documentation to all public classes and methods - the most
>>    valuable improvement :)
>>
>> For more information, see [1].
>>
>> Tests will be coming soon...
>>
>> [1]
>> https://github.com/idelpivnitskiy/aerogear-webpush-java-client/commits/master
>>
>> Best regards,
>> Idel Pivnitskiy
>> --
>> Twitter: @idelpivnitskiy <https://twitter.com/idelpivnitskiy>
>> GitHub: @idelpivnitskiy <https://github.com/idelpivnitskiy>
>>
>> On Wed, Aug 19, 2015 at 7:30 AM, Idel Pivnitskiy <
>> idel.pivnitskiy at gmail.com> wrote:
>>
>>> Hi all!
>>>
>>> I've just implemented a lightweight java client for receiving push
>>> messages from AeroGear WebPush Server [1]. It is easy to use and fully
>>> async!
>>>
>>> A few words about decision to use Jetty as a HTTP/2 client:
>>>
>>> Currently there are only 3 Java libraries, which implement client side
>>> of HTTP/2 protocol [2]: Netty, Jetty and OkHttp. I tried all of them:
>>>
>>>    - First of all I tried to use OkHttp. This is a lightweight http
>>>    client for Android and other Java apps. But currently this library supports
>>>    HTTP/2 protocol only via old HTTP/1.1 API. It works well for simple
>>>    request-response, but its client API does not allow to use HTTP/2 features,
>>>    like Server Push Frames. I looked at GRPC [3], because Googlers use OkHttp
>>>    for HTTP/2 transport. But they don't use public API, they use only inner
>>>    classes to handle frames and built their own logic atop this classes. It
>>>    would be too complicated for our purposes.
>>>    - Secondary, I tried to refactor our WebPush console to a client
>>>    library. But this way is complicated too. netty-codec-http2 does not
>>>    provide a client API, it is only codec, low level protocol implementation.
>>>    - Now I use jetty-http2-client. It is easy to configure and use,
>>>    fast and async. Jetty provides a user friendly API to handle HTTP/2 streams
>>>    and get PUSH_PROMISE frames.
>>>
>>> For more information, look at my commit history.
>>> In the future, if there will be more lightweight alternatives than Jetty
>>> (for example, new version of OkHttp or Java 9 API), I will rewrite the
>>> transport layer of my library.
>>>
>>> Here is an example, how to use my library [4].
>>>
>>> [1] https://github.com/idelpivnitskiy/aerogear-webpush-java-client
>>> [2] https://github.com/http2/http2-spec/wiki/Implementations
>>> [3] https://github.com/grpc/grpc-java/tree/master/okhttp
>>> [4]
>>> https://github.com/idelpivnitskiy/aerogear-webpush-java-client/blob/master/src/example/java/org/jboss/aerogear/webpush/Example.java
>>>
>>> Best regards,
>>> Idel Pivnitskiy
>>> --
>>> E-mail: Idel.Pivnitskiy at gmail.com
>>> Twitter: @idelpivnitskiy <https://twitter.com/idelpivnitskiy>
>>> GitHub: @idelpivnitskiy <https://github.com/idelpivnitskiy>
>>>
>>
>>
>> _______________________________________________
>> aerogear-dev mailing list
>> aerogear-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>
>
>
>
> --
> Matthias Wessendorf
>
> blog: http://matthiaswessendorf.wordpress.com/
> sessions: http://www.slideshare.net/mwessendorf
> twitter: http://twitter.com/mwessendorf
>
> _______________________________________________
> aerogear-dev mailing list
> aerogear-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/aerogear-dev/attachments/20160316/89b7a3ac/attachment.html 


More information about the aerogear-dev mailing list