Class: Sniffer::DataItem

Inherits:
Object
  • Object
show all
Includes:
ActiveAttr::MassAssignment
Defined in:
lib/sniffer/data_item.rb

Overview

Sniffer data item stores a request info

Defined Under Namespace

Classes: HttpObject, Request, Response

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#requestObject

Returns the value of attribute request.



11
12
13
# File 'lib/sniffer/data_item.rb', line 11

def request
  @request
end

#responseObject

Returns the value of attribute response.



11
12
13
# File 'lib/sniffer/data_item.rb', line 11

def response
  @response
end

Instance Method Details

#allowed_to_sniff?Boolean

Returns:

  • (Boolean)


44
45
46
47
48
# File 'lib/sniffer/data_item.rb', line 44

def allowed_to_sniff?
  return true unless request

  RequestPolicy.call(request)
end

#to_hObject



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/sniffer/data_item.rb', line 13

def to_h
  {
    request: # frozen_string_literal: true
# Sniffer data item stores a request info
# Basic object for request and response objects
# Stores http request data
# rubocop:enable
# Stores http response data

request&.to_h,
    response: # frozen_string_literal: true
# Sniffer data item stores a request info
# Basic object for request and response objects
# Stores http request data
# rubocop:enable
# Stores http response data

response&.to_h
  }
end

#to_json(*_args) ⇒ Object



40
41
42
# File 'lib/sniffer/data_item.rb', line 40

def to_json(*_args)
  to_log.to_json
end

#to_logObject



34
35
36
37
38
# File 'lib/sniffer/data_item.rb', line 34

def to_log
  return {} unless Sniffer.config.logger

  request.to_log.merge(response.to_log)
end