mq
poller abstraction refactor