class TnS3FileUploader::ErrorReportManager

Singleton that instruments all error reporters. Register your error reporter by calling `ErrorReportManager.instance.register_error_reporter` error reporters provided have to specify a method with name `report_error`

Public Class Methods

new() click to toggle source
# File lib/tn_s3_file_uploader/error_reporting/error_report_manager.rb, line 12
def initialize
  @error_reporters = []
end

Public Instance Methods

count_error_reporters() click to toggle source
# File lib/tn_s3_file_uploader/error_reporting/error_report_manager.rb, line 24
def count_error_reporters
  @error_reporters.count
end
register_error_reporter(error_reporter) click to toggle source
# File lib/tn_s3_file_uploader/error_reporting/error_report_manager.rb, line 16
def register_error_reporter(error_reporter)
  unless error_reporter.respond_to?(:report_error)
    raise ArgumentError, 'Provided error_reporter instance does not support the report_error method'
  end

  @error_reporters << error_reporter
end
report_error(exception, options = {}) click to toggle source
# File lib/tn_s3_file_uploader/error_reporting/error_report_manager.rb, line 28
def report_error(exception, options = {})
  @error_reporters.each do |error_reporter|
    error_reporter.report_error(exception, options)
  end
end