Class: Codebeacon::Tracer::MetadataMapper

Inherits:
Object
  • Object
show all
Defined in:
lib/codebeacon/tracer/src/data/metadata_mapper.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(database) ⇒ MetadataMapper

Returns a new instance of MetadataMapper.



4
5
6
# File 'lib/codebeacon/tracer/src/data/metadata_mapper.rb', line 4

def initialize(database)
  @db = database
end

Class Method Details

.create_indexes(database) ⇒ Object



28
29
# File 'lib/codebeacon/tracer/src/data/metadata_mapper.rb', line 28

def self.create_indexes(database)
end

.create_table(database) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/codebeacon/tracer/src/data/metadata_mapper.rb', line 8

def self.create_table(database)
  database.execute "    CREATE TABLE IF NOT EXISTS metadata (\n      id INTEGER PRIMARY KEY,\n      name TEXT,\n      description TEXT,\n      caller_file TEXT,\n      caller_method TEXT,\n      caller_line INTEGER,\n      caller_class TEXT,\n      caller_defined_class TEXT,\n      start_time TEXT,\n      end_time TEXT,\n      duration_ms REAL,\n      trigger_type TEXT,\n      language TEXT\n    );\n  SQL\nend\n"

Instance Method Details

#insert(metadata) ⇒ Object



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/codebeacon/tracer/src/data/metadata_mapper.rb', line 31

def insert()
   = .to_hash
  
  @db.execute("    INSERT INTO metadata (\n      name, description, caller_file, caller_method, caller_line,\n      caller_class, caller_defined_class, start_time, end_time,\n      duration_ms, trigger_type, language\n    ) VALUES (\n      ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?\n    )\n  SQL\n    metadata_hash[:name],\n    metadata_hash[:description],\n    metadata_hash[:caller_file],\n    metadata_hash[:caller_method],\n    metadata_hash[:caller_line],\n    metadata_hash[:caller_class],\n    metadata_hash[:caller_defined_class],\n    metadata_hash[:start_time]&.iso8601,\n    metadata_hash[:end_time]&.iso8601,\n    metadata_hash[:duration_ms],\n    metadata_hash[:trigger_type],\n    metadata_hash[:language]\n  )\nend\n",