class Alephant::Publisher::Queue::Options
Constants
- CACHE_OPTS
- QUEUE_OPTS
- WRITER_OPTS
Attributes
cache[R]
queue[R]
writer[R]
Public Class Methods
new()
click to toggle source
# File lib/alephant/publisher/queue/options.rb, line 42 def initialize @queue = {} @writer = {} @cache = {} end
Public Instance Methods
add_cache(opts)
click to toggle source
# File lib/alephant/publisher/queue/options.rb, line 56 def add_cache(opts) execute(@cache, CACHE_OPTS, opts) end
add_queue(opts)
click to toggle source
# File lib/alephant/publisher/queue/options.rb, line 48 def add_queue(opts) execute(@queue, QUEUE_OPTS, opts) end
add_writer(opts)
click to toggle source
# File lib/alephant/publisher/queue/options.rb, line 52 def add_writer(opts) execute(@writer, WRITER_OPTS, opts) end
Private Instance Methods
execute(instance, type, opts)
click to toggle source
# File lib/alephant/publisher/queue/options.rb, line 62 def execute(instance, type, opts) validate(type, opts) instance.merge!(opts) rescue InvalidKeySpecifiedError => e logger.metric "QueueOptionsInvalidKeySpecified" logger.error( "event" => "QueueOptionsKeyInvalid", "class" => e.class, "message" => e.message, "backtrace" => e.backtrace.join.to_s, "method" => "#{self.class}#validate" ) puts e.message end
validate(type, opts)
click to toggle source
# File lib/alephant/publisher/queue/options.rb, line 77 def validate(type, opts) opts.each do |key, _value| unless type.include? key.to_sym raise InvalidKeySpecifiedError, "The key '#{key}' is invalid" end end end