Class: Percheron::Connection

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/percheron/connection.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.load!(config) ⇒ Object

rubocop:disable Style/ClassVars



9
10
11
12
13
# File 'lib/percheron/connection.rb', line 9

def self.load!(config)
  @@config = config
  instance.setup!
  instance
end

.perform(klass, method, *args, &blk) ⇒ Object

rubocop:enable Style/ClassVars



16
17
18
# File 'lib/percheron/connection.rb', line 16

def self.perform(klass, method, *args, &blk)
  instance.perform(klass, method, *args, &blk)
end

Instance Method Details

#perform(klass, method, *args) ⇒ Object



20
21
22
23
24
25
# File 'lib/percheron/connection.rb', line 20

def perform(klass, method, *args)
  klass.public_send(method, *args) { |out| yield(out) if block_given? }
rescue => e
  $logger.debug '%s.%s(%s) - %s' % [ klass, method, args, e.inspect ]
  raise
end

#setup!Object



27
28
29
30
# File 'lib/percheron/connection.rb', line 27

def setup!
  set_url!
  set_options!
end