Class: Crabfarm::CrabtrapRunner
- Inherits:
-
Object
- Object
- Crabfarm::CrabtrapRunner
- Defined in:
- lib/crabfarm/crabtrap_runner.rb
Constant Summary collapse
- CRABTRAP_START_TM =
seconds
5
Instance Method Summary collapse
-
#initialize(_config = {}) ⇒ CrabtrapRunner
constructor
A new instance of CrabtrapRunner.
- #is_running? ⇒ Boolean
- #kill ⇒ Object
- #mode ⇒ Object
- #port ⇒ Object
- #start ⇒ Object
- #stop ⇒ Object
Constructor Details
#initialize(_config = {}) ⇒ CrabtrapRunner
Returns a new instance of CrabtrapRunner.
10 11 12 13 |
# File 'lib/crabfarm/crabtrap_runner.rb', line 10 def initialize(_config={}) @config = _config; @process = nil end |
Instance Method Details
#is_running? ⇒ Boolean
15 16 17 |
# File 'lib/crabfarm/crabtrap_runner.rb', line 15 def is_running? not @process.nil? end |
#kill ⇒ Object
42 43 44 45 46 47 48 49 |
# File 'lib/crabfarm/crabtrap_runner.rb', line 42 def kill unless @process.nil? logger.info "Killing crabtrap (PID: #{@process.pid})" @process.stop 0 @process = nil logger.info "Crabtrap stopped" end end |
#mode ⇒ Object
23 24 25 |
# File 'lib/crabfarm/crabtrap_runner.rb', line 23 def mode @config.fetch(:mode, :pass).to_sym end |
#port ⇒ Object
19 20 21 |
# File 'lib/crabfarm/crabtrap_runner.rb', line 19 def port @config[:port] end |
#start ⇒ Object
27 28 29 30 31 |
# File 'lib/crabfarm/crabtrap_runner.rb', line 27 def start logger.info "Starting crabtrap in port #{port}" @process = spawn_crabtrap logger.info "Crabtrap started (PID: #{@process.pid})" end |
#stop ⇒ Object
33 34 35 36 37 38 39 40 |
# File 'lib/crabfarm/crabtrap_runner.rb', line 33 def stop unless @process.nil? logger.info "Stopping crabtrap (PID: #{@process.pid})" @process.stop @process = nil logger.info "Crabtrap stopped" end end |