https://cognitivehub.in/android-publish-subscribe-pattern/