class Moromi::Error::DefaultInformationBuilder

Public Class Methods

new(controller) click to toggle source
# File lib/moromi/error/default_information_builder.rb, line 8
def initialize(controller)
  @controller = controller
end

Public Instance Methods

build() click to toggle source
# File lib/moromi/error/default_information_builder.rb, line 12
def build
  {
    user_id: fetch_user_id(controller),
    url: fetch_url(controller),
    user_agent: fetch_user_agent(controller)
  }
end

Private Instance Methods

fetch_url(controller) click to toggle source
# File lib/moromi/error/default_information_builder.rb, line 28
def fetch_url(controller)
  controller.request.try(:url)
rescue
  nil
end
fetch_user_agent(controller) click to toggle source
# File lib/moromi/error/default_information_builder.rb, line 34
def fetch_user_agent(controller)
  controller.request.try(:user_agent)
rescue
  nil
end
fetch_user_id(controller) click to toggle source
# File lib/moromi/error/default_information_builder.rb, line 22
def fetch_user_id(controller)
  controller.respond_to?(:current_user) ? controller.current_user&.id : 0
rescue
  nil
end