Sha256: 33475bb8e5b321b336c2bc32d8c288585e80bba19fccd76d33cce0845d1575c2

Contents?: true

Size: 995 Bytes

Versions: 25

Compression:

Stored size: 995 Bytes

Contents

# encoding: utf-8
module Rack
  module Mongoid
    module Middleware

      # This middleware contains the behaviour needed to properly use the
      # identity map in Rack based applications. This middleware will properly
      # handle Rails or Rack streaming responses.
      class IdentityMap

        # Initialize the new middleware.
        #
        # @example Init the middleware.
        #   IdentityMap.new(app)
        #
        # @param [ Object ] app The application.
        #
        # @since 2.1.0
        def initialize(app)
          @app = app
        end

        # Make the request with the provided environment.
        #
        # @example Make the request.
        #   identity_map.call(env)
        #
        # @param [ Object ] env The environment.
        #
        # @return [ Array ] The status, headers, and response.
        #
        # @since 2.1.0
        def call(env)
          ::Mongoid.unit_of_work { @app.call(env) }
        end
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 5 rubygems

Version Path
mongoid-3.1.7 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.1.6 lib/rack/mongoid/middleware/identity_map.rb
sepastian-mongoid-rails4-4.0.1.alpha lib/rack/mongoid/middleware/identity_map.rb
sepastian-mongoid-rails4-4.0.0.alpha lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.1.5 lib/rack/mongoid/middleware/identity_map.rb
mongoid_heroku_stable-4.0.0 lib/rack/mongoid/middleware/identity_map.rb
mongoid_rails4-4.0.0 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.1.4 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.1.3 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.1.2 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.0.23 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.1.1 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.1.0 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.0.22 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.0.21 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.0.20 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.0.19 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.0.18 lib/rack/mongoid/middleware/identity_map.rb
mongoid-3.0.17 lib/rack/mongoid/middleware/identity_map.rb
sunrise-cms-0.5.0.rc1 vendor/bundle/ruby/1.9.1/gems/mongoid-3.0.16/lib/rack/mongoid/middleware/identity_map.rb