Method: Indy::Source#initialize

Defined in:
lib/indy/source.rb

#initialize(param, log_definition = nil) ⇒ Source

Creates a Source object.

Parameters:

  • param (String, Hash)

    The source content String, filepath String, or :cmd => ‘command’ Hash

Raises:



31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/indy/source.rb', line 31

def initialize(param,log_definition=nil)
  raise Indy::Source::Invalid, "No source specified." if param.nil?
  self.log_definition = log_definition || LogDefinition.new()
  return discover_connection(param) unless param.respond_to?(:keys)
  if param[:cmd]
    set_connection(:cmd, param[:cmd])
  elsif param[:file]
    set_connection(:file, open_or_return_file(param[:file]))
  elsif param[:string]
    set_connection(:string, param[:string])
  end
end