Sha256: 01888747be85ca27b8cb3d743a95a9a0fa99a96e877646afcb511addedae8c80

Contents?: true

Size: 1.31 KB

Versions: 6865

Compression:

Stored size: 1.31 KB

Contents

module Typhoeus
  class Request

    # This module handles the blocked connection request mode on
    # the request side, where only stubbed requests
    # are allowed.
    # Connection blocking needs to be turned on:
    #   Typhoeus.configure do |config|
    #     config.block_connection = true
    #   end
    #
    # When trying to do real requests a NoStub error
    # is raised.
    #
    # @api private
    module BlockConnection

      # Overrides run in order to check before if block connection
      # is turned on. If thats the case a NoStub error is
      # raised.
      #
      # @example Run request.
      #   request.run
      #
      # @raise [Typhoeus::Errors::NoStub] If connection is blocked
      #   and no stub defined.
      def run
        if blocked?
          raise Typhoeus::Errors::NoStub.new(self)
        else
          super
        end
      end

      # Returns wether a request is blocked or not. Takes
      # request.block_connection and Typhoeus::Config.block_connection
      # into consideration.
      #
      # @example Blocked?
      #   request.blocked?
      #
      # @return [ Boolean ] True if blocked, false else.
      def blocked?
        if block_connection.nil?
          Typhoeus::Config.block_connection
        else
          block_connection
        end
      end
    end
  end
end

Version data entries

6,865 entries across 6,862 versions & 28 rubygems

Version Path
ory-client-0.0.1.alpha56 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha55 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha54 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha53 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha52 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha51 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha50 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha49 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha48 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha47 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha46 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha45 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha44 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha43 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha42 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha41 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha40 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha39 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha38 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb
ory-client-0.0.1.alpha37 vendor/bundle/ruby/2.5.0/gems/typhoeus-1.4.0/lib/typhoeus/request/block_connection.rb