make object data manager return a promise