add new cache framework