class SousVide::Outputs::Multi

Combines multiple outputs

@example

http = JsonHTTP.new(url: "http://localhost:9200/endpoint")
logger = SousVide::Outputs::Logger.new
file = SousVide::Outputs::JsonFile.new

SousVide::Outputs::Multi.new(logger, file, http)

Public Class Methods

new(*outputs) click to toggle source
# File lib/sous_vide/outputs/multi.rb, line 12
def initialize(*outputs)
  @outputs = outputs
end

Public Instance Methods

call(run_data:, node_data:, resources_data:) click to toggle source

Calls all configured outputs in order.

# File lib/sous_vide/outputs/multi.rb, line 17
def call(run_data:, node_data:, resources_data:)
  @outputs.each do |output|
    output.call(run_data: run_data, node_data: node_data,
                resources_data: resources_data)
  end
end