Module: Splash::Transports

Includes:
Config
Included in:
CLISplash::CLIController, CLISplash::Commands, CLISplash::Sequences, Commands::CommandWrapper, Daemon::Orchestrator::Scheduler, Sequences, Rabbitmq::Client, WebAdminApp
Defined in:
lib/splash/transports.rb,
lib/splash/transports/rabbitmq.rb

Overview

Splash Transports namespace

Defined Under Namespace

Modules: Rabbitmq

Constant Summary

Constants included from Constants

Constants::AUTHOR, Constants::BACKENDS_STRUCT, Constants::CONFIG_FILE, Constants::COPYRIGHT, Constants::DAEMON_LOGMON_SCHEDULING, Constants::DAEMON_METRICS_SCHEDULING, Constants::DAEMON_PID_FILE, Constants::DAEMON_PROCESS_NAME, Constants::DAEMON_PROCMON_SCHEDULING, Constants::DAEMON_STDERR_TRACE, Constants::DAEMON_STDOUT_TRACE, Constants::DEFAULT_RETENTION, Constants::EMAIL, Constants::EXECUTION_TEMPLATE, Constants::EXECUTION_TEMPLATE_TOKENS_LIST, Constants::LICENSE, Constants::LOGGERS_STRUCT, Constants::PID_PATH, Constants::PROMETHEUS_ALERTMANAGER_URL, Constants::PROMETHEUS_PUSHGATEWAY_URL, Constants::PROMETHEUS_URL, Constants::TRACE_PATH, Constants::TRANSPORTS_STRUCT, Constants::VERSION, Constants::WEBADMIN_IP, Constants::WEBADMIN_PID_FILE, Constants::WEBADMIN_PID_PATH, Constants::WEBADMIN_PORT, Constants::WEBADMIN_PROCESS_NAME, Constants::WEBADMIN_PROXY, Constants::WEBADMIN_STDERR_TRACE, Constants::WEBADMIN_STDOUT_TRACE

Instance Method Summary collapse

Methods included from Config

#get_config, #rehash_config

Methods included from ConfigUtilities

#addservice, #checkconfig, #flush_backend, #setupsplash

Methods included from Helpers

#check_unicode_term, #daemonize, #format_by_extensions, #format_response, #get_processes, #group_root, #install_file, #is_root?, #make_folder, #make_link, #run_as_root, #search_file_in_gem, #user_root, #verify_file, #verify_folder, #verify_link, #verify_service

Instance Method Details

#get_default_clientSplash::Transports::Rabbitmq::Client|Hash

factory for Splash::Transports::Rabbitmq::Client

Returns:



32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/splash/transports.rb', line 32

def get_default_client
  config = get_config.transports
  transport = config[:active]
  host = config[transport][:host]
  port = config[transport][:port]
  unless verify_service host: host, port: port then
    return  { :case => :service_dependence_missing, :more => "RabbitMQ Transport not available." }
   end
  aclass = "Splash::Transports::#{transport.to_s.capitalize}::Client"
  begin
    return Kernel.const_get(aclass)::new
  rescue
    return { :case => :configuration_error, :more => "Transport configuration error : #{transport}"}
  end
end

#get_default_subscriber(options) ⇒ Splash::Transports::Rabbitmq::Subscriber|Hash

factory for Splash::Transports::Rabbitmq::Subscriber

Parameters:

  • options (Hash)

Returns:



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/splash/transports.rb', line 14

def get_default_subscriber(options)
  config = get_config.transports
  transport = config[:active]
  host = config[transport][:host]
  port = config[transport][:port]
  unless verify_service host: host, port: port then
    return  { :case => :service_dependence_missing, :more => "RabbitMQ Transport not available." }
   end
  aclass = "Splash::Transports::#{transport.capitalize}::Subscriber"
  begin
    return Kernel.const_get(aclass)::new(options)
  rescue
    return { :case => :configuration_error, :more => "Transport specified for queue #{options[:queue]} configuration error : #{transport}"}
  end
end