class Cql::Client::Connector
@private
Public Class Methods
new(steps)
click to toggle source
# File lib/cql/client/connector.rb, line 55 def initialize(steps) @steps = steps.dup end
Public Instance Methods
connect(host)
click to toggle source
# File lib/cql/client/connector.rb, line 59 def connect(host) pending_connection = PendingConnection.new(host) seed = Future.resolved(pending_connection) f = @steps.reduce(seed) do |chain, step| chain.flat_map do |pending_connection| step.run(pending_connection) end end f.map do |pending_connection| pending_connection.connection end end