class InspectRequest::Checker
Checker
class
Attributes
session[R]
started[R]
Public Class Methods
new()
click to toggle source
# File lib/inspect_request.rb, line 16 def initialize @results = [] @verifier_block = proc {} self.class.start self.class.session.on_request do |req| track_result @verifier_block.call req.clone end end
shutdown()
click to toggle source
Shutdown proxy
# File lib/inspect_request.rb, line 37 def self.shutdown @session.shutdown if @started @started = false end
start()
click to toggle source
Start the proxy. No need to do this unless you've explicitely shut it down
# File lib/inspect_request.rb, line 27 def self.start return if @started @session ||= Ritm::Session.new @session.start @started = true trap('INT') { Checker.shutdown } trap('TERM') { Checker.shutdown } end
Public Instance Methods
configure(&block)
click to toggle source
Configure proxy. It will also auto-restart the proxy
Examples¶ ↑
foo = InspectRequest::Checker.new foo.configure do proxy[:bind_port] = 7070 end
# File lib/inspect_request.rb, line 69 def configure(&block) self.class.session.send(:configure, &block) self.class.session.shutdown self.class.session.start end
fulfilled?()
click to toggle source
did our verification ever fulfilled?
# File lib/inspect_request.rb, line 57 def fulfilled? res = @results.any? # any true? @results.clear res end
started?()
click to toggle source
# File lib/inspect_request.rb, line 42 def started? self.class.started end
Private Instance Methods
track_result(result)
click to toggle source
# File lib/inspect_request.rb, line 77 def track_result(result) @results.push result end