Module: Philotic::Config::Defaults

Included in:
Philotic::Config
Defined in:
lib/philotic/config/defaults.rb

Constant Summary collapse

DISABLE_PUBLISH =
false
INITIALIZE_NAMED_QUEUES =
false
DELETE_EXISTING_QUEUES =
false
LOG_LEVEL =
Logger::DEBUG
RABBIT_SCHEME =
'amqp'
RABBIT_HOST =
'localhost'
RABBIT_PORT =
5672
RABBIT_USER =
'guest'
RABBIT_PASSWORD =
'guest'
RABBIT_VHOST =

‘/’

'%2f'
RABBIT_URL =
"#{RABBIT_SCHEME}://#{RABBIT_USER}:#{RABBIT_PASSWORD}@#{RABBIT_HOST}:#{RABBIT_PORT}/#{RABBIT_VHOST}"
EXCHANGE_NAME =
'philotic.headers'
ROUTING_KEY =
nil
PERSISTENT =
false
IMMEDIATE =
false
MANDATORY =
false
SERIALIZATIONS =

serializations is expected to be a JSON ray of strings

'["json"]'
CONTENT_TYPE =
'application/json'
CONTENT_ENCODING =
nil
PRIORITY =
nil
MESSAGE_ID =
nil
CORRELATION_ID =
nil
REPLY_TO =
nil
TYPE =
nil
USER_ID =
nil
APP_ID =
nil
TIMESTAMP =
nil
EXPIRATION =
nil
CONNECTION_ATTEMPTS =
3
PREFETCH_COUNT =
0
AUTOMATICALLY_RECOVER =
true
NETWORK_RECOVERY_INTERVAL =

seconds

5
CONTINUATION_TIMEOUT =

ms

4000
RAISE_ERROR_ON_PUBLISH =
false
ENCRYPTION_KEY =
nil

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



55
56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/philotic/config/defaults.rb', line 55

def self.included(base)
  Philotic::Config::Defaults.constants.each do |c|
    attr_symbol = c.downcase.to_sym
    base.send(:attr_writer, attr_symbol)
    base.class_eval %Q{
    def #{attr_symbol}
      unless defined? @#{attr_symbol}
        @#{attr_symbol} = defaults[:#{attr_symbol}]
      end
      @#{attr_symbol}
    end
  }
  end
end

Instance Method Details

#defaultsObject



44
45
46
47
48
49
50
51
52
53
# File 'lib/philotic/config/defaults.rb', line 44

def defaults
  @defaults ||= Hash[Philotic::Config::Defaults.constants.map do |c|
                       key = c.downcase.to_sym

                       env_key = "#{ENV_PREFIX}_#{key}".upcase

                       [key, ENV[env_key] || Philotic::Config::Defaults.const_get(c)]
                     end
  ]
end