Implemented Callbacks instead of Async Task