module AnyCache::Drivers

@api private @since 0.2.0

Public Class Methods

build(config) click to toggle source

@param config [Qonfig::DataSet] @return [Object]

@raise [AnyCache::UnsupportedDriverError]

@api private @since 0.2.0 rubocop:disable Metrics/AbcSize

# File lib/any_cache/drivers.rb, line 24
def build(config)
  driver = config[:driver]

  case driver
  when :redis
    Redis.build(config[:redis])
  when :redis_store
    RedisStore.build(config[:redis_store])
  when :dalli
    Dalli.build(config[:dalli])
  when :as_file_store
    ActiveSupportFileStore.build(config[:as_file_store])
  when :as_memory_store
    ActiveSupportMemoryStore.build(config[:as_memory_store])
  when :as_redis_cache_store
    ActiveSupportRedisCacheStore.build(config[:as_redis_cache_store])
  when :as_mem_cache_store
    ActiveSupportMemCacheStore.build(config[:as_mem_cache_store])
  when :as_dalli_store
    ActiveSupportDalliStore.build(config[:as_dalli_store])
  else
    raise AnyCache::UnsupportedDriverError
  end
end