Move provider related function to manager