This is adapter class. One may override methods that needed. All other
methods delegates call to notifyEvent that don't have any implementation. If
one don't want to distinguish events he may just override notifyEvent. Either
he can override some of public methods and don't override notifyEvent.
author: ads