Sha256: 77417ba27fe126b96b1e622d317c4d775c60d882003ec4a084a5a40dde6d3c0c

Contents?: true

Size: 799 Bytes

Versions: 12

Compression:

Stored size: 799 Bytes

Contents

# frozen_string_literal: true
# This module provides the cache key which can be used by rails
# caching to determine when to expire a particular object's cache
# See http://apidock.com/rails/ActiveRecord/Integration/cache_key
# This key should be used in conjunction with additional data to
# determine when a document can be cached (e.g. for different view
# types in search results like gallery and list)
module Blacklight::Document::CacheKey
  def cache_key
    case
    when new_record?
      "#{self.class.model_name.cache_key}/new"
    when cache_version_value = self[cache_version_key]
      "#{self.class.model_name.cache_key}/#{id}-#{Array(cache_version_value).join}"
    else
      "#{self.class.model_name.cache_key}/#{id}"
    end
  end

  def cache_version_key
    :_version_
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
blacklight-6.5.0 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.4.2 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.4.1 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.4.0 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.3.3 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.3.1 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.3.0 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.2.0 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.1.0 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.0.2 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.0.1 app/models/concerns/blacklight/document/cache_key.rb
blacklight-6.0.0 app/models/concerns/blacklight/document/cache_key.rb