module DoSnapshot::Adapter
Adapter
interface for API connections Ability to select DigitalOcean API versions.
Public Class Methods
api(protocol, options = {})
click to toggle source
# File lib/do_snapshot/adapter.rb, line 11 def api(protocol, options = {}) konst = find_protocol(protocol) error_protocol(protocol) unless DoSnapshot::Adapter.const_defined?(konst) obj = DoSnapshot::Adapter.const_get(konst) obj.new(options) end
Private Class Methods
error_protocol(protocol)
click to toggle source
# File lib/do_snapshot/adapter.rb, line 20 def error_protocol(protocol) fail DoSnapshot::NoProtocolError, "Not existing protocol: #{protocol}." end
find_protocol(protocol)
click to toggle source
# File lib/do_snapshot/adapter.rb, line 24 def find_protocol(protocol) if protocol.is_a?(String) protocol else error_protocol(protocol) if protocol.is_a?(Integer) && protocol < 2 'DropletKit' end end