move GenericCache to common place