Class: Sponges::Cli

Inherits:
Boson::Runner
  • Object
show all
Defined in:
lib/sponges/cli.rb

Overview

This class concern is to expose a nice CLI interface.

Instance Method Summary collapse

Instance Method Details

#decrement(options = {}) ⇒ Object



53
54
55
56
# File 'lib/sponges/cli.rb', line 53

def decrement(options = {})
  Sponges::Commander.new(Sponges::Configuration.worker_name, options).
    decrement
end

#increment(options = {}) ⇒ Object



47
48
49
50
# File 'lib/sponges/cli.rb', line 47

def increment(options = {})
  Sponges::Commander.new(Sponges::Configuration.worker_name, options).
    increment
end

#kill(options = {}) ⇒ Object



31
32
33
# File 'lib/sponges/cli.rb', line 31

def kill(options = {})
  Sponges::Commander.new(Sponges::Configuration.worker_name, options).kill
end

#restart(options = {}) ⇒ Object



40
41
42
43
44
# File 'lib/sponges/cli.rb', line 40

def restart(options = {})
  stop(options)
  sleep 1
  start(options)
end

#start(options = {}) ⇒ Object



9
10
11
12
13
14
15
16
17
# File 'lib/sponges/cli.rb', line 9

def start(options = {})
  options = {
    size: Sponges::Configuration.size,
    daemonize: Sponges::Configuration.daemonize
  }.reject{|k, v| v.nil?}.merge(options)
  Sponges::Runner.new(Sponges::Configuration.worker_name, options,
                      Sponges::Configuration.worker
                     ).start
end

#stop(options = {}) ⇒ Object



22
23
24
25
26
27
28
# File 'lib/sponges/cli.rb', line 22

def stop(options = {})
  options = {
    timeout:    Sponges::Configuration.timeout,
    gracefully: Sponges::Configuration.gracefully
  }.reject{|k, v| v.nil?}.merge(options)
  Sponges::Commander.new(Sponges::Configuration.worker_name, options).stop
end