Refactor getIndicatorData again, using callbacks as causes memory leaks