Module: Dynamoid::Adapter

Extended by:
Adapter
Included in:
Adapter
Defined in:
lib/dynamoid/adapter.rb,
lib/dynamoid/adapter/local.rb,
lib/dynamoid/adapter/aws_sdk.rb

Defined Under Namespace

Modules: AwsSdk, Local

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method, *args) ⇒ Object



18
19
20
21
# File 'lib/dynamoid/adapter.rb', line 18

def method_missing(method, *args)
  return @adapter.send(method, *args) if @adapter.respond_to?(method)
  super
end

Instance Method Details

#adapterObject



7
8
9
10
# File 'lib/dynamoid/adapter.rb', line 7

def adapter
  reconnect! unless @adapter
  @adapter
end

#reconnect!Object



12
13
14
15
16
# File 'lib/dynamoid/adapter.rb', line 12

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