Splitted the Async handler

Refactor to merge functionalities of sync and async handlers