Class: Colloquy::Helpers::Redis::RedisProxy
- Inherits:
-
Object
- Object
- Colloquy::Helpers::Redis::RedisProxy
- Includes:
- Singleton
- Defined in:
- lib/colloquy/helpers/redis.rb
Instance Method Summary collapse
- #[](identifier) ⇒ Object
- #configure ⇒ Object
- #configure! ⇒ Object
- #configured? ⇒ Boolean
-
#initialize ⇒ RedisProxy
constructor
A new instance of RedisProxy.
- #require_redis_libraries ⇒ Object
Constructor Details
#initialize ⇒ RedisProxy
Returns a new instance of RedisProxy.
23 24 25 |
# File 'lib/colloquy/helpers/redis.rb', line 23 def initialize @configured = false end |
Instance Method Details
#[](identifier) ⇒ Object
59 60 61 62 63 64 65 |
# File 'lib/colloquy/helpers/redis.rb', line 59 def [](identifier) unless @redis_connections[identifier.to_sym] raise Colloquy::RedisConnectionNotFoundException, "A Redis connection for #{identifier} was not found, did you mis-spell or forget to configure it?" end @redis_connections[identifier.to_sym] end |
#configure ⇒ Object
27 28 29 30 |
# File 'lib/colloquy/helpers/redis.rb', line 27 def configure return if configured? configure! end |
#configure! ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/colloquy/helpers/redis.rb', line 32 def configure! unless redis_configuration_file.exist? raise Colloquy::RedisConfigurationNotFoundException, "Cannot find #{redis_configuration_file}" end begin require_redis_libraries rescue LoadError raise Colloquy::RedisGemsNotFoundException, "Cannot load the em-redis gem." end @redis_connections ||= {} redis_configuration_load @configured = true end |
#configured? ⇒ Boolean
49 50 51 |
# File 'lib/colloquy/helpers/redis.rb', line 49 def configured? @configured end |
#require_redis_libraries ⇒ Object
53 54 55 56 57 |
# File 'lib/colloquy/helpers/redis.rb', line 53 def require_redis_libraries require "em-redis" require "em-synchrony" require "em-synchrony/em-redis" end |