Class: SqlSafetyNet::QueryInfo

Inherits:
Object
  • Object
show all
Defined in:
lib/sql_safety_net/query_info.rb

Overview

Class to store information about queries.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(sql, options = {}) ⇒ QueryInfo

Returns a new instance of QueryInfo.



6
7
8
9
10
11
12
13
14
# File 'lib/sql_safety_net/query_info.rb', line 6

def initialize(sql, options = {})
  @sql = sql
  @elapsed_time = options[:elapsed_time] || 0.0
  @rows = options[:rows] || 0
  @result_size = options[:result_size] || 0
  @alerts = options[:alerts] || []
  @cached = !!options[:cached]
  analyze!
end

Instance Attribute Details

#alertsObject (readonly)

Returns the value of attribute alerts.



4
5
6
# File 'lib/sql_safety_net/query_info.rb', line 4

def alerts
  @alerts
end

#elapsed_timeObject (readonly)

Returns the value of attribute elapsed_time.



4
5
6
# File 'lib/sql_safety_net/query_info.rb', line 4

def elapsed_time
  @elapsed_time
end

#result_sizeObject (readonly)

Returns the value of attribute result_size.



4
5
6
# File 'lib/sql_safety_net/query_info.rb', line 4

def result_size
  @result_size
end

#rowsObject (readonly)

Returns the value of attribute rows.



4
5
6
# File 'lib/sql_safety_net/query_info.rb', line 4

def rows
  @rows
end

#sqlObject (readonly)

Returns the value of attribute sql.



4
5
6
# File 'lib/sql_safety_net/query_info.rb', line 4

def sql
  @sql
end

Instance Method Details

#alerts?Boolean

Returns:

  • (Boolean)


20
21
22
# File 'lib/sql_safety_net/query_info.rb', line 20

def alerts?
  !alerts.empty?
end

#cached?Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/sql_safety_net/query_info.rb', line 16

def cached?
  @cached
end