Sha256: ebba3833587e577792c253950885e1048c9a3b8d98763ded22e2e981fffc704f

Contents?: true

Size: 837 Bytes

Versions: 87

Compression:

Stored size: 837 Bytes

Contents

module Scrivito
module Cache
  class FileStore
    include Chainable

    attr_reader :internal_store, :next_store

    def initialize(options = {})
      @internal_store = ActiveSupport::Cache::FileStore.new(
        options[:path] || Rails.root + 'tmp/scrivito_cache')
      @next_store = options[:next_store]
    end

    delegate :clear, to: :internal_store

    private

    delegate :read, to: :internal_store, prefix: :internal

    def tentative?
      false
    end

    def internal_write(key, value, expires_in = nil)
      internal_store.write(key, value, expires_in: expires_in)
    end

    def transform_key(key)
      # Workaround for rails/rails#15616. Will be fixed in Rails 4.2.
      Digest::SHA1.hexdigest(key)
    end

    def forward_write?(key, value, expires_in)
      super && !expires_in
    end
  end
end
end

Version data entries

87 entries across 87 versions & 1 rubygems

Version Path
scrivito_sdk-1.18.0 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.18.0.rc1 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.17.0 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.17.0.rc3 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.17.0.rc2 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.17.0.rc1 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.16.0 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.16.0.rc2 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.16.0.rc1 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.15.0 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.15.0.rc2 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.15.0.rc1 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.14.0 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.14.0.rc3 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.14.0.rc2 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.14.0.rc1 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.13.0 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.13.0.rc2 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.13.0.rc1 app/cms/scrivito/cache/file_store.rb
scrivito_sdk-1.12.0 app/cms/scrivito/cache/file_store.rb