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 = []