class Tracetool::Android::JavaTraceScanner

Processes java traces

Constants

RX_FIRST_EXCEPTION_LINE

Usually java trace starts with

com.something.SomeClass(: Some message)?
RX_OTHER_EXCEPTION_LINE

Rest is expanded as

at com.other.OtherClass.someMethod(OtherClass.java:42)

Source marker can be just “Native Method” or “Unknown Source”

Public Class Methods

[](string) click to toggle source
# File lib/tracetool/android/java.rb, line 52
def [](string)
  new(string) if match(string)
end
match(string) click to toggle source
# File lib/tracetool/android/java.rb, line 44
def match(string)
  # Split into lines
  first, *rest = string.split("\n")
  return unless RX_FIRST_EXCEPTION_LINE.match(first)

  rest.all? { |line| RX_OTHER_EXCEPTION_LINE.match(line) }
end
new(string) click to toggle source
# File lib/tracetool/android/java.rb, line 27
def initialize(string)
  @trace = string
end

Public Instance Methods

parser(files) click to toggle source

Create parser for current trace format @param [Array] files list of files used in build. This files are

used to match file entries from stack trace to real files

@return [Tracetool::BaseTraceParser] parser that matches trace format

# File lib/tracetool/android/java.rb, line 39
def parser(files)
  JavaTraceParser.new(files)
end
process(_ctx) click to toggle source
# File lib/tracetool/android/java.rb, line 31
def process(_ctx)
  @trace
end