move cache handling to super class