Class: ReactEmailRails::RenderModes::Persistent::CommandRunner

Inherits:
Object
  • Object
show all
Defined in:
lib/react_email_rails/render_modes/persistent/command_runner.rb

Class Method Summary collapse

Class Method Details

.capture(command, input:, timeout:, max_requests: nil) ⇒ Object



6
7
8
# File 'lib/react_email_rails/render_modes/persistent/command_runner.rb', line 6

def capture(command, input:, timeout:, max_requests: nil)
  server_for(command).capture(input:, timeout:, max_requests:)
end

.healthy?(command, timeout:) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
13
14
15
# File 'lib/react_email_rails/render_modes/persistent/command_runner.rb', line 10

def healthy?(command, timeout:)
  result = server_for(command).health_check(timeout:)
  ReactEmailRails::RenderProtocol.healthy_result?(result)
rescue StandardError
  false
end

.stop_allObject



17
18
19
20
21
22
# File 'lib/react_email_rails/render_modes/persistent/command_runner.rb', line 17

def stop_all
  @mutex.synchronize do
    @servers&.each_value(&:stop)
    @servers&.clear
  end
end