code: func (c *Cache) setTTL(r services.Resource) {
  	if c.OnlyRecent.Enabled || (c.PreferRecent.Enabled && c.PreferRecent.NeverExpires) {
  		return
  	}
  	// honor expiry set in the resource
  	if !r.Expiry().IsZero() {
  		return
  	}
  	// set max TTL on the resources
  	r.SetTTL(c.Clock, c.PreferRecent.MaxTTL)
  }
docs: // setTTL overrides TTL supplied by the resource
  // based on the cache behavior:
  // - for "only recent", does nothing
  // - for "prefer recent", honors TTL set on the resource, otherwise
  //   sets TTL to max TTL