Class: RubyRabbitmqJanus::Tools::Config
- Inherits:
-
Object
- Object
- RubyRabbitmqJanus::Tools::Config
- Includes:
- ConfigGem, ConfigJanus, ConfigQueues, ConfigRabbit, Singleton
- Defined in:
- lib/rrj/tools/gem/config.rb
Overview
# Manage configuration file Singleton object for reading configuration file
Constant Summary collapse
- RRJ_HOME =
Define HOME RRJ gem
File.realpath(File.join(File.dirname(__FILE__), '..', '..', '..'))
- CONF_DEFAULT =
Define a default name to file configuration
'config/default.yml'
- CONF_CUSTOM =
Define a default override file configuration
'config/ruby-rabbitmq-janus.yml'
- PATH_DEFAULT =
Define a default path to file configuration to gem
File.join(RRJ_HOME, CONF_DEFAULT)
Instance Attribute Summary collapse
-
#configuration ⇒ String
readonly
Path to configuration file used.
-
#options ⇒ Hash
readonly
Return all options to configured in config file.
Instance Method Summary collapse
-
#initialize ⇒ Config
constructor
Initialize configuration file default or customize if exist.
Methods included from ConfigJanus
Methods included from ConfigQueues
#queue_admin_from, #queue_admin_to, #queue_from, #queue_janus_instance, #queue_to
Methods included from ConfigRabbit
#admin_pass, #log_level_rabbit, #server_settings
Methods included from ConfigGem
#cluster, #environment, #listener_admin_path, #listener_path, #log_level, #log_option, #log_type, #object_relational_mapping, #program_name, #public_queue_process, #rspec_response
Constructor Details
#initialize ⇒ Config
Initialize configuration file default or customize if exist
49 50 51 52 53 |
# File 'lib/rrj/tools/gem/config.rb', line 49 def initialize @options = @configuration = nil loading_configuration_customize @options ||= loading_configuration_default end |
Instance Attribute Details
#configuration ⇒ String (readonly)
Returns Path to configuration file used.
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/rrj/tools/gem/config.rb', line 26 class Config include Singleton include RubyRabbitmqJanus::Tools::ConfigGem include RubyRabbitmqJanus::Tools::ConfigRabbit include RubyRabbitmqJanus::Tools::ConfigQueues include RubyRabbitmqJanus::Tools::ConfigJanus attr_reader :options, :configuration # Define HOME RRJ gem RRJ_HOME = File.realpath(File.join(File.dirname(__FILE__), '..', '..', '..')) # Define a default name to file configuration CONF_DEFAULT = 'config/default.yml' # Define a default override file configuration CONF_CUSTOM = 'config/ruby-rabbitmq-janus.yml' # Define a default path to file configuration to gem PATH_DEFAULT = File.join(RRJ_HOME, CONF_DEFAULT) # Initialize configuration file default or customize if exist def initialize @options = @configuration = nil loading_configuration_customize @options ||= loading_configuration_default end private def load_configuration ::YAML.safe_load(ERB.new(File.read(@configuration)).result) end def loading_configuration_customize @configuration = File.join(Dir.pwd, CONF_CUSTOM) @options = load_configuration if File.exist?(@configuration) end def loading_configuration_default @configuration = PATH_DEFAULT load_configuration end end |
#options ⇒ Hash (readonly)
Return all options to configured in config file.
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/rrj/tools/gem/config.rb', line 26 class Config include Singleton include RubyRabbitmqJanus::Tools::ConfigGem include RubyRabbitmqJanus::Tools::ConfigRabbit include RubyRabbitmqJanus::Tools::ConfigQueues include RubyRabbitmqJanus::Tools::ConfigJanus attr_reader :options, :configuration # Define HOME RRJ gem RRJ_HOME = File.realpath(File.join(File.dirname(__FILE__), '..', '..', '..')) # Define a default name to file configuration CONF_DEFAULT = 'config/default.yml' # Define a default override file configuration CONF_CUSTOM = 'config/ruby-rabbitmq-janus.yml' # Define a default path to file configuration to gem PATH_DEFAULT = File.join(RRJ_HOME, CONF_DEFAULT) # Initialize configuration file default or customize if exist def initialize @options = @configuration = nil loading_configuration_customize @options ||= loading_configuration_default end private def load_configuration ::YAML.safe_load(ERB.new(File.read(@configuration)).result) end def loading_configuration_customize @configuration = File.join(Dir.pwd, CONF_CUSTOM) @options = load_configuration if File.exist?(@configuration) end def loading_configuration_default @configuration = PATH_DEFAULT load_configuration end end |