Module: OLogger::ObjectMethods

Defined in:
lib/ologger/object_methods.rb

Instance Method Summary collapse

Instance Method Details

#ologger(message, *objs) ⇒ Object

g#group_fight.123#



15
16
17
18
# File 'lib/ologger/object_methods.rb', line 15

def ologger(message, *objs)
  parsed_objs = objs.map { |o| ologger_object_format(o) }
  OLogger.buffer.add :message => message, :objs => parsed_objs, :logger_module => ologger_module, :logger_id => ologger_id
end

#ologger_idObject



7
8
9
10
11
12
13
# File 'lib/ologger/object_methods.rb', line 7

def ologger_id
  if defined?(ActiveRecord::Base) && self.is_a?(ActiveRecord::Base)
    self.id
  else
    self.object_id
  end 
end

#ologger_moduleObject



3
4
5
# File 'lib/ologger/object_methods.rb', line 3

def ologger_module
  self.class.name.tableize
end

#ologger_object_format(obj) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/ologger/object_methods.rb', line 19

def ologger_object_format(obj)
  if defined?(ActiveRecord::Base) && obj.is_a?(ActiveRecord::Base)
    if obj == self
      obj.attributes
    elsif obj.ologger_id
      OLogger.buffer.add :message => 'Self:', :objs => [obj.attributes], :logger_module => obj.ologger_module, :logger_id => obj.ologger_id        
      "g##{obj.ologger_module}.#{obj.ologger_id}#"
    else
      obj
    end
  else
    obj
  end
end