Module: PetiteLettre

Defined in:
lib/petite_lettre.rb

Class Method Summary collapse

Class Method Details

.call(command, message) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/petite_lettre.rb', line 4

def self.call(command,message)
  IO.popen(command,mode='r+') do |io|
    io.write(YAML::dump(message))
    io.close_write
    result = YAML::load(io.read)
    raise result[:error][:message] if result.is_a?(Hash) && result[:error]
    result
  end
end

.receive(input = $stdin, output = $stdout) ⇒ Object



14
15
16
17
18
19
20
21
22
23
# File 'lib/petite_lettre.rb', line 14

def self.receive(input=$stdin,output=$stdout)
  message = YAML::load(input.read)
  result = nil
  begin
    result = yield message
  rescue => e
    result = { :error => { :message => e.message } }
  end
  output.write(YAML::dump(result))
end