lib/hanami/providers/db/adapters.rb in hanami-2.2.0.beta2 vs lib/hanami/providers/db/adapters.rb in hanami-2.2.0.rc1
- old
+ new
@@ -28,22 +28,38 @@
attr_reader :adapters
# @api private
# @since 2.2.0
def initialize
- @adapters = Hash.new do |hsh, key|
- hsh[key] = self.class.new_adapter(key)
- end
+ @adapters = {}
end
# @api private
# @since 2.2.0
def initialize_copy(source)
@adapters = source.adapters.dup
source.adapters.each do |key, val|
@adapters[key] = val.dup
end
+ end
+
+ # @api private
+ # @since 2.2.0
+ def adapter(key)
+ adapters[key] ||= new(key)
+ end
+
+ # @api private
+ # @since 2.2.0
+ def find(key)
+ adapters.fetch(key) { new(key) }
+ end
+
+ # @api private
+ # @since 2.2.0
+ def new(key)
+ self.class.new_adapter(key)
end
end
end
end
end