Class: Refocus::Samples::Collector
- Inherits:
-
Object
- Object
- Refocus::Samples::Collector
- Includes:
- JsonHelper
- Defined in:
- lib/refocus/samples/collector.rb
Instance Attribute Summary collapse
-
#http ⇒ Object
readonly
Returns the value of attribute http.
-
#samples ⇒ Object
readonly
Returns the value of attribute samples.
Class Method Summary collapse
Instance Method Summary collapse
- #add(name:, aspect:, value: nil, message_body: nil, message_code: nil, related_links: nil) ⇒ Object
-
#initialize(http:) ⇒ Collector
constructor
A new instance of Collector.
- #upsert_bulk ⇒ Object (also: #submit)
Methods included from JsonHelper
Constructor Details
#initialize(http:) ⇒ Collector
Returns a new instance of Collector.
10 11 12 13 |
# File 'lib/refocus/samples/collector.rb', line 10 def initialize(http:) @http = http @samples = [] end |
Instance Attribute Details
#http ⇒ Object (readonly)
Returns the value of attribute http.
8 9 10 |
# File 'lib/refocus/samples/collector.rb', line 8 def http @http end |
#samples ⇒ Object (readonly)
Returns the value of attribute samples.
8 9 10 |
# File 'lib/refocus/samples/collector.rb', line 8 def samples @samples end |
Class Method Details
.format_sample(name:, aspect:, value: nil, message_body: nil, message_code: nil, related_links: nil) ⇒ Object
27 28 29 30 31 32 33 34 |
# File 'lib/refocus/samples/collector.rb', line 27 def self.format_sample(name:, aspect:, value:nil, message_body:nil, message_code:nil, related_links:nil) sample = {name: "#{name}|#{aspect}"} sample[:value] = value.to_s if value sample[:messageBody] = .to_s if sample[:messageCode] = .to_s if sample[:relatedLinks] = if sample end |
Instance Method Details
#add(name:, aspect:, value: nil, message_body: nil, message_code: nil, related_links: nil) ⇒ Object
15 16 17 18 |
# File 'lib/refocus/samples/collector.rb', line 15 def add(name:, aspect:, value:nil, message_body:nil, message_code:nil, related_links:nil) samples << self.class.format_sample(name:name, aspect: aspect, value: value, message_body: , message_code: , related_links: ) end |
#upsert_bulk ⇒ Object Also known as: submit
20 21 22 23 24 |
# File 'lib/refocus/samples/collector.rb', line 20 def upsert_bulk result = json(http.post("upsert/bulk", body: samples, expects: 200)) samples.clear result end |