RxJava toList – completes only after onComplete is called

 mGetActiveHubUpdatesInteractor.getActiveHubUpdates()
                .filter(Optional::isPresent)
                .firstOrError()
                .map(Optional::get)
                .flatMap(activeHub ->
                        mGetActiveHubEventsInteractor.getActiveHubEvents(activeHub, startTime,
                                endTime))
                .flattenAsObservable(list -> list)
                .map(mActiveHubEventUiMapper::toUiActiveHubEvent)
                .toList()
                .subscribe(this::populateEvents, this::handleError);
Continue reading “RxJava toList – completes only after onComplete is called”

Selenium + BrowserMobProxy to gather data from SSL secured websites like Facebook

Recently, Facebook decided to turn off access to public events. So now, if you are not an administrator of the page or if you don’t have an access to the page, you don’t have access to its events, even though they are public. Here is the bug for it.

Continue reading “Selenium + BrowserMobProxy to gather data from SSL secured websites like Facebook”

Thinking about Code Architecture & Object Oriented Programming

The Content

I recently got to watch several videos about architecture that got me a bit deeper into the topic and I decided to share my thoughts here. There first two videos are from Realm:

They are mostly Android oriented but there are some general rules which are applicable to code architecture.

Continue reading “Thinking about Code Architecture & Object Oriented Programming”

Applying Clean Architecture in Android

Short Intro

For 4 months now I have been implementing “clean architecture” in my current project. The project is huge, more than 17 Android developers work on it including me, so it is important to apply an architecture that works for all of us. I will not talk about what “clean architecture” is, but I will directly dive into the code and explain step by step the purpose of the layers that we have and what each layer is about.

Continue reading “Applying Clean Architecture in Android”

It’s 21st century – Stop using EVENTBUS!

Do you still use it!? Have you used it? I mean the EventBus. If the answer is NO, then you are either a new developer who started Android recently or you had the wonderful opportunity to not meet this three-headed monster. What I am talking about? Let’s make a brieft visit of the Android development history.

Continue reading “It’s 21st century – Stop using EVENTBUS!”