-
Core Java
1.x to 2.x migration: Observable vs. Observable: RxJava FAQ
The title is not a mistake. rx.Observable from RxJava 1.x is a completely different beast than io.reactivex.Observable from 2.x. Blindly upgrading rxdependency and renaming all…
Read More » -
Core Java
flatMap() and the order of events – RxJava FAQ
As we already discovered, flatMap() does not preserve the order of original stream. Let’s illustrate this using the GeoNames API example from previous article: public…
Read More » -
Enterprise Java
flatMap() vs. concatMap() vs. concatMapEager() – RxJava FAQ
There are three, seamlessly similar operators in RxJava 2.x: flatMap(), concatMap() and concatMapEager(). All of them accept the same argument – a function from…
Read More » -
Enterprise Java
Eager subscription – RxJava FAQ
While teaching and mentoring RxJava, as well as after authoring a book, I noticed some areas are especially problematic. I decided…
Read More » -
Enterprise Java
Beware of slow transaction callbacks in Spring
TL;DR If your application is failing to obtain new database connection, restarting ActiveMQ broker may help. Interested? The problem with…
Read More » -
Core Java
Small scale stream processing kata. Part 2: RxJava 1.x/2.x
In part 1: thread pools we designed and implemented relatively simple system for processing events in real time. Make sure…
Read More » -
Core Java
Small scale stream processing kata. Part 1: thread pools
Once again I prepared a programming contest on GeeCON 2016 for my company. This time the assignment required designing and…
Read More » -
Core Java
Guide to time and date in Java
Properly handling dates, time, time zones, daylight saving time, leap years and such has been my pet peeve for a…
Read More » -
Core Java
Functor and monad examples in plain Java
This article was initially an appendix in our Reactive Programming with RxJava book. However introduction to monads, albeit very much…
Read More »