That's why I originally didn't name it something with a ?
I'm not sure what to name this method.  Maybe get_cache ?  I'm open to other ideas if it's not clear right now.

I think returning docs or nil while doing I/O is a typical pattern.  See the "Boolean Expressions" section here:
http://www.ruby-doc.org/docs/ProgrammingRuby/tut_expressions.html

which references this:
http://www.ruby-doc.org/core-2.0/IO.html#method-i-gets