implemented a generic poller
got rid of the specific poller