Scalarisは、JSON-RPCから利用することができます。 付属のスクリプトを参考に、使用方法について触れます。 ここでは値の書き込み用のスクリプトと、読み込み用のスクリプトを サンプルとして紹介します。
contrib/jsonrpc.rbを元に作成しています。 また、単なるread/writeでは使用しない処理は省いています。
#!/usr/bin/ruby require 'json' require 'net/http' $url = 'http://localhost:8000/jsonrpc.yaws' def json_call(function, params) uri = URI.parse $url req = Net::HTTP::Post.new(uri.path) req.add_field 'Content-Type', 'application/json' req.body = { :version => '1.1', :method => function, :params => params, :id => 0}.to_json res = Net::HTTP.start(uri.host, uri.port){|http|http.request(req)} JSON.parse(res.body)['result'] end def read(key) json_call('read', [key]) end def write(key, value) json_call('write', [key, value]) end
key/valueの読み込み、書き出しを行う関数を定義しています。
例えばコマンドラインからkey/valueを指定して
書き込むスクリプトであれば、以下の処理を追加することで作成できます。
また、書き出しに成功した場合はresultにokという値が入ります。
result = write(ARGV[0],ARGV[1]) puts result
コマンドラインからkeyを指定して、 対応するvalueを表示するスクリプトであれば、 以下の処理を追加することで作成できます。 resultにはvalueの値が入ります。
result = read(ARGV[0]) puts result