lib/aerospike/client.rb in aerospike-1.0.1 vs lib/aerospike/client.rb in aerospike-1.0.2

- old
+ new

@@ -51,10 +51,27 @@ @cluster = Cluster.new(policy, Host.new(host, port)) self end + def self.new_many(hosts, options={}) + # Don't initiualize, just instantiate + client = Client.allocate + + client.default_policy = Policy.new + client.default_write_policy = WritePolicy.new + client.default_scan_policy = ScanPolicy.new + client.default_query_policy = QueryPolicy.new + client.default_admin_policy = QueryPolicy.new + + policy = client.send(:opt_to_client_policy , options) + + client.send(:cluster=, Cluster.new(policy, *hosts)) + + client + end + ## # Closes all client connections to database server nodes. def close @cluster.close @@ -848,9 +865,13 @@ elsif options.is_a?(AdminPolicy) options elsif options.is_a?(Hash) AdminPolicy.new(options) end + end + + def cluster=(cluster) + @cluster = cluster end def batch_execute(keys, &cmd_gen) batch_nodes = BatchNode.generate_list(@cluster, keys) threads = []