code: def needs_refresh(self, source):
          
          now = time.time()
          if source._tok in self:
              s0 = self[source._tok]
              if self[source._tok].metadata.get('ttl', None):
                  then = s0.metadata['timestamp']
                  if s0.metadata['ttl'] < then - now:
                      return True
              return False
          return True
docs: Has the (persisted) source expired in the store
  
          Will return True if the source is not in the store at all, if it's
          TTL is set to None, or if more seconds have passed than the TTL.