lib/async/redis/client.rb in async-redis-0.10.1 vs lib/async/redis/client.rb in async-redis-0.11.0
- old
+ new
@@ -5,20 +5,20 @@
# Copyright, 2018, by Huba Nagy.
# Copyright, 2019, by Mikael Henriksson.
# Copyright, 2019, by David Ortiz.
# Copyright, 2020, by Salim Semaoune.
-require_relative 'context/pipeline'
-require_relative 'context/transaction'
-require_relative 'context/subscribe'
-require_relative 'endpoint'
+require_relative "context/pipeline"
+require_relative "context/transaction"
+require_relative "context/subscribe"
+require_relative "endpoint"
-require 'io/endpoint/host_endpoint'
-require 'async/pool/controller'
-require 'protocol/redis/methods'
+require "io/endpoint/host_endpoint"
+require "async/pool/controller"
+require "protocol/redis/methods"
-require 'io/stream'
+require "io/stream"
module Async
module Redis
# Legacy.
ServerError = ::Protocol::Redis::ServerError
@@ -87,11 +87,11 @@
def initialize(endpoint = Endpoint.local, protocol: endpoint.protocol, **options)
@endpoint = endpoint
@protocol = protocol
- @pool = connect(**options)
+ @pool = make_pool(**options)
end
attr :endpoint
attr :protocol
@@ -111,10 +111,17 @@
end.wait
end
protected
- def connect(**options)
+ def assign_default_tags(tags)
+ tags[:endpoint] = @endpoint.to_s
+ tags[:protocol] = @protocol.to_s
+ end
+
+ def make_pool(**options)
+ self.assign_default_tags(options[:tags] ||= {})
+
Async::Pool::Controller.wrap(**options) do
peer = @endpoint.connect
# We will manage flushing ourselves:
peer.sync = true