introduced listener to get rid of maven dependencies in generic part