Is `$cacheProvider['cache']` always a string? The `is_callable` check should come after checking the locator IMO