Module: Rollbar::LanguageSupport

Extended by:
LanguageSupport
Included in:
LanguageSupport
Defined in:
lib/rollbar/language_support.rb

Instance Method Summary collapse

Instance Method Details

#can_scrub_url?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/rollbar/language_support.rb', line 21

def can_scrub_url?
  !version?('1.8')
end

#const_defined?(mod, target, inherit = true) ⇒ Boolean

Returns:

  • (Boolean)


5
6
7
8
9
10
11
# File 'lib/rollbar/language_support.rb', line 5

def const_defined?(mod, target, inherit = true)
  if ruby_18?
    mod.const_defined?(target)
  else
    mod.const_defined?(target, inherit)
  end
end

#const_get(mod, target, inherit = true) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/rollbar/language_support.rb', line 13

def const_get(mod, target, inherit = true)
  if ruby_18?
    mod.const_get(target)
  else
    mod.const_get(target, inherit)
  end
end

#ruby_18?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/rollbar/language_support.rb', line 25

def ruby_18?
  version?('1.8')
end

#ruby_19?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'lib/rollbar/language_support.rb', line 29

def ruby_19?
  version?('1.9')
end

#timeout_exceptionsObject



39
40
41
42
43
# File 'lib/rollbar/language_support.rb', line 39

def timeout_exceptions
  return [] if ruby_18? || ruby_19?

  [Net::ReadTimeout, Net::OpenTimeout]
end

#version?(version) ⇒ Boolean

Returns:

  • (Boolean)


33
34
35
36
37
# File 'lib/rollbar/language_support.rb', line 33

def version?(version)
  numbers = version.split('.')

  numbers == ::RUBY_VERSION.split('.')[0, numbers.size]
end