class HammerCLI::Connection

Public Class Methods

new(logger = nil) click to toggle source
# File lib/hammer_cli/connection.rb, line 9
def initialize(logger = nil)
  @logger = logger
end

Public Instance Methods

available() click to toggle source
# File lib/hammer_cli/connection.rb, line 38
def available
  connections.select { |k, v| !v.nil? }.values.first
end
create(name) { || ... } click to toggle source
# File lib/hammer_cli/connection.rb, line 21
def create(name, &create_connector_block)
  unless connections[name]
    connector = yield
    @logger.debug("Registered: #{name}") if @logger
    connections[name] = connector
  end
  connections[name]
end
drop(name) click to toggle source
# File lib/hammer_cli/connection.rb, line 13
def drop(name)
  connections.delete(name)
end
drop_all() click to toggle source
# File lib/hammer_cli/connection.rb, line 17
def drop_all()
  connections.keys.each { |c| drop(c) }
end
exist?(name) click to toggle source
# File lib/hammer_cli/connection.rb, line 30
def exist?(name)
  !get(name).nil?
end
get(name) click to toggle source
# File lib/hammer_cli/connection.rb, line 34
def get(name)
  connections[name]
end

Private Instance Methods

connections() click to toggle source
# File lib/hammer_cli/connection.rb, line 44
def connections
  @connections_hash ||= {}
  @connections_hash
end