Sha256: 35b86c871766daa2749dccf67f3677eaa292ecb595729eeae15910f5298ed0fb

Contents?: true

Size: 612 Bytes

Versions: 2

Compression:

Stored size: 612 Bytes

Contents

# encoding: utf-8
module Dynamoid #:nodoc:

  module Adapter
    extend self
    
    def adapter
      reconnect! unless @adapter
      @adapter
    end
    
    def reconnect!
      require "dynamoid/adapter/#{Dynamoid::Config.adapter}" unless Dynamoid::Adapter.const_defined?(Dynamoid::Config.adapter.camelcase)
      @adapter = Dynamoid::Adapter.const_get(Dynamoid::Config.adapter.camelcase)
      @adapter.connect! if @adapter.respond_to?(:connect!)
    end
    
    def method_missing(method, *args)
      return @adapter.send(method, *args) if @adapter.respond_to?(method)
      super
    end
  end
  
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
dynamoid-0.0.2 lib/dynamoid/adapter.rb
Dynamoid-0.0.1 lib/dynamoid/adapter.rb