Sha256: f584fa44b146cf5313ff00b4c5406c7449f70545100229deecb4d492c98ff8cc

Contents?: true

Size: 671 Bytes

Versions: 3

Compression:

Stored size: 671 Bytes

Contents

$:.unshift File.expand_path '../../lib', File.dirname(__FILE__)
require 'rubygems'
require 'bundler/setup'
require 'sinatra/rocketio/linda/client'

linda = Sinatra::RocketIO::Linda::Client.new 'http://localhost:5000'
ts = linda.tuplespace["calc"]

calc = lambda{
  ts.take ["calc_request"] do |tuple, info|
    query = tuple[1]
    result = eval(query)
    puts "calc: #{query} = #{result} (from:#{info.from})"
    ts.write ["calc_result", result]
    calc.call
  end
}

linda.io.on :connect do
  puts "connect #{io.session}"
  calc.call
end

linda.io.on :disconnect do
  puts "disconnect #{io.session}"
end

linda.io.on :error do |err|
  STDERR.puts err
end

linda.wait

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
sinatra-rocketio-linda-1.1.0 sample/bin/cui_calc_worker.rb
sinatra-rocketio-linda-1.0.1 sample/bin/cui_calc_worker.rb
sinatra-rocketio-linda-1.0.0 sample/bin/cui_calc_worker.rb