Make Cache system more flexible