refactoring price cache get