read(name, options = nil)
  public
  
    
    
Fetches data from the cache, using the given key. If there is data in the
cache with the given key, then that data is returned. Otherwise, nil is
returned.
Options are passed to the underlying cache implementation.
   
  
    Show source    
    
      
      def read(name, options = nil)
        options = merged_options(options)
        key = namespaced_key(name, options)
        instrument(:read, name, options) do |payload|
          entry = read_entry(key, options)
          if entry
            if entry.expired?
              delete_entry(key, options)
              payload[:hit] = false if payload
              nil
            else
              payload[:hit] = true if payload
              entry.value
            end
          else
            payload[:hit] = false if payload
            nil
          end
        end
      end