Should this be up to implementation so we can support proxy's with several drivers for several layers of cache?
In such a case you would not have to consider returning option object as suggested by @schmittjoh, cause the proxy implementation handles it for you.