class Appsignal::Extension::Jruby::Transaction
rubocop:disable Metrics/ClassLength
def complete
def complete Extension.appsignal_complete_transaction(pointer) end
def finish(gc_duration_ms)
def finish(gc_duration_ms) Extension.appsignal_finish_transaction(pointer, gc_duration_ms) end
def finish_event(name, title, body, body_format, gc_duration_ms)
def finish_event(name, title, body, body_format, gc_duration_ms) case body when String method = :appsignal_finish_event body_arg = make_appsignal_string(body) when Data method = :appsignal_finish_event_data body_arg = body.pointer else raise ArgumentError, "body argument should be a String or Appsignal::Extension::Data" end Extension.public_send( method, pointer, make_appsignal_string(name), make_appsignal_string(title), body_arg, body_format, gc_duration_ms ) end
def initialize(pointer)
def initialize(pointer) @pointer = FFI::AutoPointer.new( pointer, Extension.method(:appsignal_free_transaction) ) end
def record_event(name, title, body, body_format, duration, gc_duration_ms) # rubocop:disable Metrics/ParameterLists
def record_event(name, title, body, body_format, duration, gc_duration_ms) # rubocop:disable Metrics/ParameterLists case body when String method = :appsignal_record_event body_arg = make_appsignal_string(body) when Data method = :appsignal_record_event_data body_arg = body.pointer else raise ArgumentError, "body argument should be a String or Appsignal::Extension::Data" end Extension.public_send( method, pointer, make_appsignal_string(name), make_appsignal_string(title), body_arg, body_format, duration, gc_duration_ms ) end
def set_action(action_name) # rubocop:disable Naming/AccessorMethodName
def set_action(action_name) # rubocop:disable Naming/AccessorMethodName Extension.appsignal_set_transaction_action( pointer, make_appsignal_string(action_name) ) end
def set_error(name, message, backtrace)
def set_error(name, message, backtrace) Extension.appsignal_set_transaction_error( pointer, make_appsignal_string(name), make_appsignal_string(message), backtrace.pointer ) end
def set_metadata(key, value)
def set_metadata(key, value) Extension.appsignal_set_transaction_metadata( pointer, make_appsignal_string(key), make_appsignal_string(value) ) end
def set_namespace(namespace) # rubocop:disable Naming/AccessorMethodName
def set_namespace(namespace) # rubocop:disable Naming/AccessorMethodName Extension.appsignal_set_transaction_namespace( pointer, make_appsignal_string(namespace) ) end
def set_queue_start(time) # rubocop:disable Naming/AccessorMethodName
def set_queue_start(time) # rubocop:disable Naming/AccessorMethodName Extension.appsignal_set_transaction_queue_start(pointer, time) end
def set_sample_data(key, payload)
def set_sample_data(key, payload) Extension.appsignal_set_transaction_sample_data( pointer, make_appsignal_string(key), payload.pointer ) end
def start_event(gc_duration_ms)
def start_event(gc_duration_ms) Extension.appsignal_start_event(pointer, gc_duration_ms) end
def to_json
def to_json json = Extension.appsignal_transaction_to_json(pointer) make_ruby_string(json) if json[:len] > 0 end