Abstracting common functionality of finding providers