Sha256: 97aa7ed2fc621d41062e628c431aa6f20db39833012b3e52654e22136003df5c

Contents?: true

Size: 574 Bytes

Versions: 4

Compression:

Stored size: 574 Bytes

Contents

# frozen_string_literal: true

module Dynamoid
  module AdapterPlugin
    class AwsSdkV3
      module Middleware
        class StartKey
          def initialize(next_chain)
            @next_chain = next_chain
          end

          def call(request)
            response = @next_chain.call(request)

            if response.last_evaluated_key
              request[:exclusive_start_key] = response.last_evaluated_key
            else
              throw :stop_pagination
            end

            return response
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
dynamoid-3.4.1 lib/dynamoid/adapter_plugin/aws_sdk_v3/middleware/start_key.rb
dynamoid-3.4.0 lib/dynamoid/adapter_plugin/aws_sdk_v3/middleware/start_key.rb
dynamoid-3.3.0 lib/dynamoid/adapter_plugin/aws_sdk_v3/middleware/start_key.rb
dynamoid-3.2.0 lib/dynamoid/adapter_plugin/aws_sdk_v3/middleware/start_key.rb