build update listener functionality