Sha256: 08a21fa3c61b1b1217c537f9d99ee6910757595ab507da1f4e5577da10491b58
Contents?: true
Size: 1.06 KB
Versions: 3
Compression:
Stored size: 1.06 KB
Contents
module ActiveFedora # = Active Fedora Ldp Cache class LdpCache module ClassMethods # Enable the query cache within the block if Active Fedora is configured. # If it's not, it will execute the given block. def cache(&block) connection = ActiveFedora.fedora.connection connection.cache(&block) end # Disable the query cache within the block if Active Fedora is configured. # If it's not, it will execute the given block. def uncached(&block) ActiveFedora.fedora.connection.uncached(&block) end end def initialize(app) @app = app end def call(env) ActiveFedora.fedora.connection.enable_cache! response = @app.call(env) response[2] = Rack::BodyProxy.new(response[2]) do reset_cache_settings end response rescue Exception => e reset_cache_settings raise e end private def reset_cache_settings ActiveFedora.fedora.connection.clear_cache ActiveFedora.fedora.connection.disable_cache! end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
active-fedora-9.7.0 | lib/active_fedora/ldp_cache.rb |
active-fedora-9.6.2 | lib/active_fedora/ldp_cache.rb |
active-fedora-9.6.1 | lib/active_fedora/ldp_cache.rb |