class SourceRoute::Proxy

Attributes

config[RW]
result_builder[RW]
tp[RW]

Public Class Methods

new() click to toggle source
# File lib/source_route/proxy.rb, line 8
def initialize
  reset
end

Public Instance Methods

reset() click to toggle source
# File lib/source_route/proxy.rb, line 12
def reset
  @tp.disable if defined? @tp
  @config = Config.new
  # only init once, so its @collected_data seems not useful
  @result_builder = GenerateResult.new(self)
  GenerateResult.clear_wanted_attributes
  self
end
trace() click to toggle source
# File lib/source_route/proxy.rb, line 21
def trace
  trace_filter = TraceFilter.new(config)
  track = TracePoint.new(*config.event) do |tp|
    next if trace_filter.block_it?(tp)
    @result_builder.output(tp)
  end
  track.enable
  self.tp = track
end
trace_chain() click to toggle source
# File lib/source_route/proxy.rb, line 31
def trace_chain
  result_builder.trace_chain
end