Sha256: dd7a26c060bc72002d4eae4bc28ed390e744b84ea0dce0156940be9226f80497

Contents?: true

Size: 616 Bytes

Versions: 3

Compression:

Stored size: 616 Bytes

Contents

# encoding: UTF-8
module MongoMapper
  module Plugins
    module Caching
      extend ActiveSupport::Concern

      def cache_key(*suffixes)
        cache_key = case
                      when !persisted?
                        "#{self.class.name}/new"
                      when timestamp = self[:updated_at]
                        "#{self.class.name}/#{id}-#{timestamp.to_formatted_s(:number)}"
                      else
                        "#{self.class.name}/#{id}"
                    end
        cache_key += "/#{suffixes.join('/')}" unless suffixes.empty?
        cache_key
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
mongo_mapper-0.17.0 lib/mongo_mapper/plugins/caching.rb
mongo_mapper-0.16.0 lib/mongo_mapper/plugins/caching.rb
mongo_mapper-0.15.6 lib/mongo_mapper/plugins/caching.rb