YUKI Hiroshi
null+****@clear*****
Wed Jul 23 10:23:26 JST 2014
YUKI Hiroshi 2014-07-23 10:23:26 +0900 (Wed, 23 Jul 2014) New Revision: d232e713bc8f1fb771dee6698e5f369d44e96dbe https://github.com/droonga/droonga-engine/commit/d232e713bc8f1fb771dee6698e5f369d44e96dbe Message: Add "-node" option for custom queries and events if the paylaod includes "node" information Modified files: lib/droonga/serf.rb Modified: lib/droonga/serf.rb (+12 -3) =================================================================== --- lib/droonga/serf.rb 2014-07-22 20:34:02 +0900 (616b173) +++ lib/droonga/serf.rb 2014-07-23 10:23:26 +0900 (4f7dd7e) @@ -109,12 +109,14 @@ module Droonga def send_event(event, payload) ensure_serf - run_once("event", event, JSON.generate(payload)) + options = ["-format", "json"] + options_from_payload(payload) + run_once("event", event, *options) end def send_query(query, payload) ensure_serf - run_once("query", query, JSON.generate(payload)) + options = ["-format", "json"] + options_from_payload(payload) + run_once("query", query, *options) end private @@ -149,11 +151,18 @@ module Droonga def run_once(command, *options) process = SerfProcess.new(@loop, @serf, command, "-rpc-addr", rpc_address, - "-format", "json", *options) process.run_once end + def options_from_payload(payload) + options = [JSON.generate(payload)] + if payload.is_a?(Hash) and payload.include?("node") + options = ["-node", payload["node"]] + options + end + options + end + def extract_host(node_name) node_name.split(":").first end -------------- next part -------------- HTML����������������������������... Download