adapter-simpledb 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +6 -0
 - data/Gemfile +12 -0
 - data/README.rdoc +32 -0
 - data/Rakefile +6 -0
 - data/adapter-simpledb.gemspec +23 -0
 - data/lib/adapter-simpledb.rb +2 -0
 - data/lib/adapter/simpledb.rb +56 -0
 - data/lib/adapter/simpledb/version.rb +5 -0
 - data/spec/helper.rb +31 -0
 - data/spec/simpledb_spec.rb +43 -0
 - metadata +85 -0
 
    
        data/.gitignore
    ADDED
    
    
    
        data/Gemfile
    ADDED
    
    | 
         @@ -0,0 +1,12 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            source "http://rubygems.org"
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # Specify your gem's dependencies in adapter-simpledb.gemspec
         
     | 
| 
      
 4 
     | 
    
         
            +
            gemspec
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            group :development do
         
     | 
| 
      
 7 
     | 
    
         
            +
              gem 'rake'
         
     | 
| 
      
 8 
     | 
    
         
            +
              gem 'rspec',      '~> 2.3'
         
     | 
| 
      
 9 
     | 
    
         
            +
              gem 'log_buddy',  '~> 0.5.0'
         
     | 
| 
      
 10 
     | 
    
         
            +
              gem 'ruby-debug',   :platform => :ruby_18
         
     | 
| 
      
 11 
     | 
    
         
            +
              gem 'ruby-debug19', :platform => :ruby_19, :require => 'ruby-debug'
         
     | 
| 
      
 12 
     | 
    
         
            +
            end
         
     | 
    
        data/README.rdoc
    ADDED
    
    | 
         @@ -0,0 +1,32 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            = adapter-smipledb
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            Amazon SimpleDB adapter for adapter gem.
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
                require 'adapter/simpledb'
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
                client = Fog::AWS::SimpleDB.new(
         
     | 
| 
      
 8 
     | 
    
         
            +
                  :aws_access_key_id => ENV['S3_KEY'],
         
     | 
| 
      
 9 
     | 
    
         
            +
                  :aws_secret_access_key => ENV['S3_SECRET']
         
     | 
| 
      
 10 
     | 
    
         
            +
                )
         
     | 
| 
      
 11 
     | 
    
         
            +
                adapter = Adapter[:simpledb].new(client, :domain => 'my-collection', :consistent_read => true)
         
     | 
| 
      
 12 
     | 
    
         
            +
                adapter.clear
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
                adapter.write('foo', 'bar')
         
     | 
| 
      
 15 
     | 
    
         
            +
                puts 'Should be bar: ' + adapter.read('foo').inspect
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
                adapter.delete('foo')
         
     | 
| 
      
 18 
     | 
    
         
            +
                puts 'Should be nil: ' + adapter.read('foo').inspect
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                adapter.write('foo', 'bar')
         
     | 
| 
      
 21 
     | 
    
         
            +
                adapter.clear
         
     | 
| 
      
 22 
     | 
    
         
            +
                puts 'Should be nil: ' + adapter.read('foo').inspect
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
                puts 'Should be bar: ' + adapter.fetch('foo', 'bar')
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
            == Note on Patches/Pull Requests
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
            * Fork the project.
         
     | 
| 
      
 29 
     | 
    
         
            +
            * Make your feature addition or bug fix.
         
     | 
| 
      
 30 
     | 
    
         
            +
            * Add tests for it. This is important so we don't break it in a future version unintentionally.
         
     | 
| 
      
 31 
     | 
    
         
            +
            * Commit, do not mess with Rakefile, version, or history. (if you want to have your own version, that is fine, but bump version in a commit by itself so we can ignore when we pull)
         
     | 
| 
      
 32 
     | 
    
         
            +
            * Send us a pull request. Bonus points for topic branches.
         
     | 
    
        data/Rakefile
    ADDED
    
    
| 
         @@ -0,0 +1,23 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # -*- encoding: utf-8 -*-
         
     | 
| 
      
 2 
     | 
    
         
            +
            $:.push File.expand_path("../lib", __FILE__)
         
     | 
| 
      
 3 
     | 
    
         
            +
            require "adapter/simpledb/version"
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            Gem::Specification.new do |s|
         
     | 
| 
      
 6 
     | 
    
         
            +
              s.name        = "adapter-simpledb"
         
     | 
| 
      
 7 
     | 
    
         
            +
              s.version     = Adapter::SimpleDB::VERSION
         
     | 
| 
      
 8 
     | 
    
         
            +
              s.authors     = ["Daniel Morrison"]
         
     | 
| 
      
 9 
     | 
    
         
            +
              s.email       = ["daniel@collectiveidea.com"]
         
     | 
| 
      
 10 
     | 
    
         
            +
              s.homepage    = "https://github.com/collectiveidea/adapter-simpledb"
         
     | 
| 
      
 11 
     | 
    
         
            +
              s.summary     = %q{Adapter for Amazon SimpleDB}
         
     | 
| 
      
 12 
     | 
    
         
            +
              s.description = %q{Adapter for Amazon SimpleDB}
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
              s.rubyforge_project = "adapter-simpledb"
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              s.files         = `git ls-files`.split("\n")
         
     | 
| 
      
 17 
     | 
    
         
            +
              s.test_files    = `git ls-files -- {test,spec,features}/*`.split("\n")
         
     | 
| 
      
 18 
     | 
    
         
            +
              s.executables   = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
         
     | 
| 
      
 19 
     | 
    
         
            +
              s.require_paths = ["lib"]
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
              s.add_dependency 'adapter', '~>0.5.1'
         
     | 
| 
      
 22 
     | 
    
         
            +
              s.add_dependency 'fog',     '~>1.0.0'
         
     | 
| 
      
 23 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,56 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'adapter'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'fog/aws/simpledb'
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            module Adapter
         
     | 
| 
      
 5 
     | 
    
         
            +
              module SimpleDB
         
     | 
| 
      
 6 
     | 
    
         
            +
                NonHashValueKeyName = '_value'
         
     | 
| 
      
 7 
     | 
    
         
            +
                ArrayFillName = '_array'
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
                def read(key)
         
     | 
| 
      
 10 
     | 
    
         
            +
                  decode(client.get_attributes(domain, key_for(key), 'ConsistentRead' => options[:consistent_read]))
         
     | 
| 
      
 11 
     | 
    
         
            +
                end
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                def write(key, value)
         
     | 
| 
      
 14 
     | 
    
         
            +
                  encoded_value = encode(value)
         
     | 
| 
      
 15 
     | 
    
         
            +
                  client.put_attributes(domain, key_for(key), encoded_value, :replace => encoded_value.keys)
         
     | 
| 
      
 16 
     | 
    
         
            +
                end
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
                def delete(key)
         
     | 
| 
      
 19 
     | 
    
         
            +
                  read(key).tap { client.delete_attributes(domain, key_for(key)) }
         
     | 
| 
      
 20 
     | 
    
         
            +
                end
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
                def clear
         
     | 
| 
      
 23 
     | 
    
         
            +
                  client.delete_domain(domain)
         
     | 
| 
      
 24 
     | 
    
         
            +
                  client.create_domain(domain)
         
     | 
| 
      
 25 
     | 
    
         
            +
                end
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
                def encode(value)
         
     | 
| 
      
 28 
     | 
    
         
            +
                  value.is_a?(Hash) ? value : {NonHashValueKeyName => value}
         
     | 
| 
      
 29 
     | 
    
         
            +
                  value.each {|key, v| v.unshift(ArrayFillName) if v.is_a?(Array) }
         
     | 
| 
      
 30 
     | 
    
         
            +
                end
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
                def decode(value)
         
     | 
| 
      
 33 
     | 
    
         
            +
                  value = value.body['Attributes']
         
     | 
| 
      
 34 
     | 
    
         
            +
                  return if value.nil? || value == {}
         
     | 
| 
      
 35 
     | 
    
         
            +
                  value = fix_arrays(value)
         
     | 
| 
      
 36 
     | 
    
         
            +
                  value.key?(NonHashValueKeyName) ? value[NonHashValueKeyName] : value
         
     | 
| 
      
 37 
     | 
    
         
            +
                end
         
     | 
| 
      
 38 
     | 
    
         
            +
             
     | 
| 
      
 39 
     | 
    
         
            +
                private
         
     | 
| 
      
 40 
     | 
    
         
            +
                  def domain
         
     | 
| 
      
 41 
     | 
    
         
            +
                    options[:domain] || raise('no :domain specified')
         
     | 
| 
      
 42 
     | 
    
         
            +
                  end
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
                  def fix_arrays(hash)
         
     | 
| 
      
 45 
     | 
    
         
            +
                    hash.each do |key, value|
         
     | 
| 
      
 46 
     | 
    
         
            +
                      if value.first == ArrayFillName
         
     | 
| 
      
 47 
     | 
    
         
            +
                        value.shift
         
     | 
| 
      
 48 
     | 
    
         
            +
                      else
         
     | 
| 
      
 49 
     | 
    
         
            +
                        hash[key] = value.first
         
     | 
| 
      
 50 
     | 
    
         
            +
                      end
         
     | 
| 
      
 51 
     | 
    
         
            +
                    end
         
     | 
| 
      
 52 
     | 
    
         
            +
                  end
         
     | 
| 
      
 53 
     | 
    
         
            +
              end
         
     | 
| 
      
 54 
     | 
    
         
            +
            end
         
     | 
| 
      
 55 
     | 
    
         
            +
             
     | 
| 
      
 56 
     | 
    
         
            +
            Adapter.define(:simpledb, Adapter::SimpleDB)
         
     | 
    
        data/spec/helper.rb
    ADDED
    
    | 
         @@ -0,0 +1,31 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            $:.unshift(File.expand_path('../../lib', __FILE__))
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'rubygems'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'bundler'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            Bundler.require(:default, :development)
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
            require 'pathname'
         
     | 
| 
      
 9 
     | 
    
         
            +
            require 'logger'
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
            root_path = Pathname(__FILE__).dirname.join('..').expand_path
         
     | 
| 
      
 12 
     | 
    
         
            +
            lib_path  = root_path.join('lib')
         
     | 
| 
      
 13 
     | 
    
         
            +
            log_path  = root_path.join('log')
         
     | 
| 
      
 14 
     | 
    
         
            +
            log_path.mkpath
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            require 'adapter/spec/an_adapter'
         
     | 
| 
      
 17 
     | 
    
         
            +
            require 'adapter/spec/json_adapter'
         
     | 
| 
      
 18 
     | 
    
         
            +
            require 'adapter/spec/types'
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            require 'adapter-simpledb'
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
            shared_examples_for "a SimpleDB adapter" do
         
     | 
| 
      
 23 
     | 
    
         
            +
              it_should_behave_like 'a json adapter'
         
     | 
| 
      
 24 
     | 
    
         
            +
            end
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
            logger = Logger.new(log_path.join('test.log'))
         
     | 
| 
      
 27 
     | 
    
         
            +
            LogBuddy.init(:logger => logger)
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
            RSpec.configure do |c|
         
     | 
| 
      
 30 
     | 
    
         
            +
             
     | 
| 
      
 31 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,43 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'helper'
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            describe "SimpleDB adapter" do
         
     | 
| 
      
 4 
     | 
    
         
            +
              before do
         
     | 
| 
      
 5 
     | 
    
         
            +
                raise "Set your S3_KEY and S3_SECRET" unless ENV['S3_KEY'] && ENV['S3_SECRET']
         
     | 
| 
      
 6 
     | 
    
         
            +
                @client = Fog::AWS::SimpleDB.new(
         
     | 
| 
      
 7 
     | 
    
         
            +
                  :aws_access_key_id => ENV['S3_KEY'],
         
     | 
| 
      
 8 
     | 
    
         
            +
                  :aws_secret_access_key => ENV['S3_SECRET']
         
     | 
| 
      
 9 
     | 
    
         
            +
                )
         
     | 
| 
      
 10 
     | 
    
         
            +
                
         
     | 
| 
      
 11 
     | 
    
         
            +
                @domain = 'adapter-simpledb-spec'
         
     | 
| 
      
 12 
     | 
    
         
            +
                # Need to use :consistent_read => true or we wil likely get failures
         
     | 
| 
      
 13 
     | 
    
         
            +
                @adapter = Adapter[:simpledb].new(@client, :domain => @domain, :consistent_read => true)
         
     | 
| 
      
 14 
     | 
    
         
            +
                @adapter.clear
         
     | 
| 
      
 15 
     | 
    
         
            +
              end
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
              let(:adapter) { @adapter }
         
     | 
| 
      
 18 
     | 
    
         
            +
              let(:client)  { @client }
         
     | 
| 
      
 19 
     | 
    
         
            +
              let(:domain)  { @domain }
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
              it_should_behave_like 'a SimpleDB adapter'
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
              it "stores arrays of multiple elements correctly" do
         
     | 
| 
      
 24 
     | 
    
         
            +
                adapter.write('foo', 'bacon' => ['chunky', 'tasty'])
         
     | 
| 
      
 25 
     | 
    
         
            +
                adapter.read('foo').should == {'bacon' => ['chunky', 'tasty']}
         
     | 
| 
      
 26 
     | 
    
         
            +
              end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
              it "stores arrays of a single element correctly" do
         
     | 
| 
      
 29 
     | 
    
         
            +
                adapter.write('foo', 'bacon' => ['chunky'])
         
     | 
| 
      
 30 
     | 
    
         
            +
                adapter.read('foo').should == {'bacon' => ['chunky']}
         
     | 
| 
      
 31 
     | 
    
         
            +
              end
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
              it "stores an empty array correctly" do
         
     | 
| 
      
 34 
     | 
    
         
            +
                adapter.write('foo', 'bacon' => [])
         
     | 
| 
      
 35 
     | 
    
         
            +
                adapter.read('foo').should == {'bacon' => []}
         
     | 
| 
      
 36 
     | 
    
         
            +
              end
         
     | 
| 
      
 37 
     | 
    
         
            +
              
         
     | 
| 
      
 38 
     | 
    
         
            +
              it "replaces values instead of appending" do
         
     | 
| 
      
 39 
     | 
    
         
            +
                adapter.write('foo', 'bacon' => 'chunky')
         
     | 
| 
      
 40 
     | 
    
         
            +
                adapter.write('foo', 'bacon' => 'tasty')
         
     | 
| 
      
 41 
     | 
    
         
            +
                adapter.read('foo').should == {'bacon' => 'tasty'}
         
     | 
| 
      
 42 
     | 
    
         
            +
              end
         
     | 
| 
      
 43 
     | 
    
         
            +
            end
         
     | 
    
        metadata
    ADDED
    
    | 
         @@ -0,0 +1,85 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            --- !ruby/object:Gem::Specification
         
     | 
| 
      
 2 
     | 
    
         
            +
            name: adapter-simpledb
         
     | 
| 
      
 3 
     | 
    
         
            +
            version: !ruby/object:Gem::Version
         
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.1.0
         
     | 
| 
      
 5 
     | 
    
         
            +
              prerelease: 
         
     | 
| 
      
 6 
     | 
    
         
            +
            platform: ruby
         
     | 
| 
      
 7 
     | 
    
         
            +
            authors:
         
     | 
| 
      
 8 
     | 
    
         
            +
            - Daniel Morrison
         
     | 
| 
      
 9 
     | 
    
         
            +
            autorequire: 
         
     | 
| 
      
 10 
     | 
    
         
            +
            bindir: bin
         
     | 
| 
      
 11 
     | 
    
         
            +
            cert_chain: []
         
     | 
| 
      
 12 
     | 
    
         
            +
            date: 2011-10-11 00:00:00.000000000Z
         
     | 
| 
      
 13 
     | 
    
         
            +
            dependencies:
         
     | 
| 
      
 14 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency
         
     | 
| 
      
 15 
     | 
    
         
            +
              name: adapter
         
     | 
| 
      
 16 
     | 
    
         
            +
              requirement: &70319721434180 !ruby/object:Gem::Requirement
         
     | 
| 
      
 17 
     | 
    
         
            +
                none: false
         
     | 
| 
      
 18 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 19 
     | 
    
         
            +
                - - ~>
         
     | 
| 
      
 20 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 21 
     | 
    
         
            +
                    version: 0.5.1
         
     | 
| 
      
 22 
     | 
    
         
            +
              type: :runtime
         
     | 
| 
      
 23 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 24 
     | 
    
         
            +
              version_requirements: *70319721434180
         
     | 
| 
      
 25 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency
         
     | 
| 
      
 26 
     | 
    
         
            +
              name: fog
         
     | 
| 
      
 27 
     | 
    
         
            +
              requirement: &70319721433260 !ruby/object:Gem::Requirement
         
     | 
| 
      
 28 
     | 
    
         
            +
                none: false
         
     | 
| 
      
 29 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 30 
     | 
    
         
            +
                - - ~>
         
     | 
| 
      
 31 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 32 
     | 
    
         
            +
                    version: 1.0.0
         
     | 
| 
      
 33 
     | 
    
         
            +
              type: :runtime
         
     | 
| 
      
 34 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 35 
     | 
    
         
            +
              version_requirements: *70319721433260
         
     | 
| 
      
 36 
     | 
    
         
            +
            description: Adapter for Amazon SimpleDB
         
     | 
| 
      
 37 
     | 
    
         
            +
            email:
         
     | 
| 
      
 38 
     | 
    
         
            +
            - daniel@collectiveidea.com
         
     | 
| 
      
 39 
     | 
    
         
            +
            executables: []
         
     | 
| 
      
 40 
     | 
    
         
            +
            extensions: []
         
     | 
| 
      
 41 
     | 
    
         
            +
            extra_rdoc_files: []
         
     | 
| 
      
 42 
     | 
    
         
            +
            files:
         
     | 
| 
      
 43 
     | 
    
         
            +
            - .gitignore
         
     | 
| 
      
 44 
     | 
    
         
            +
            - Gemfile
         
     | 
| 
      
 45 
     | 
    
         
            +
            - README.rdoc
         
     | 
| 
      
 46 
     | 
    
         
            +
            - Rakefile
         
     | 
| 
      
 47 
     | 
    
         
            +
            - adapter-simpledb.gemspec
         
     | 
| 
      
 48 
     | 
    
         
            +
            - lib/adapter-simpledb.rb
         
     | 
| 
      
 49 
     | 
    
         
            +
            - lib/adapter/simpledb.rb
         
     | 
| 
      
 50 
     | 
    
         
            +
            - lib/adapter/simpledb/version.rb
         
     | 
| 
      
 51 
     | 
    
         
            +
            - spec/helper.rb
         
     | 
| 
      
 52 
     | 
    
         
            +
            - spec/simpledb_spec.rb
         
     | 
| 
      
 53 
     | 
    
         
            +
            homepage: https://github.com/collectiveidea/adapter-simpledb
         
     | 
| 
      
 54 
     | 
    
         
            +
            licenses: []
         
     | 
| 
      
 55 
     | 
    
         
            +
            post_install_message: 
         
     | 
| 
      
 56 
     | 
    
         
            +
            rdoc_options: []
         
     | 
| 
      
 57 
     | 
    
         
            +
            require_paths:
         
     | 
| 
      
 58 
     | 
    
         
            +
            - lib
         
     | 
| 
      
 59 
     | 
    
         
            +
            required_ruby_version: !ruby/object:Gem::Requirement
         
     | 
| 
      
 60 
     | 
    
         
            +
              none: false
         
     | 
| 
      
 61 
     | 
    
         
            +
              requirements:
         
     | 
| 
      
 62 
     | 
    
         
            +
              - - ! '>='
         
     | 
| 
      
 63 
     | 
    
         
            +
                - !ruby/object:Gem::Version
         
     | 
| 
      
 64 
     | 
    
         
            +
                  version: '0'
         
     | 
| 
      
 65 
     | 
    
         
            +
                  segments:
         
     | 
| 
      
 66 
     | 
    
         
            +
                  - 0
         
     | 
| 
      
 67 
     | 
    
         
            +
                  hash: -645252348841906306
         
     | 
| 
      
 68 
     | 
    
         
            +
            required_rubygems_version: !ruby/object:Gem::Requirement
         
     | 
| 
      
 69 
     | 
    
         
            +
              none: false
         
     | 
| 
      
 70 
     | 
    
         
            +
              requirements:
         
     | 
| 
      
 71 
     | 
    
         
            +
              - - ! '>='
         
     | 
| 
      
 72 
     | 
    
         
            +
                - !ruby/object:Gem::Version
         
     | 
| 
      
 73 
     | 
    
         
            +
                  version: '0'
         
     | 
| 
      
 74 
     | 
    
         
            +
                  segments:
         
     | 
| 
      
 75 
     | 
    
         
            +
                  - 0
         
     | 
| 
      
 76 
     | 
    
         
            +
                  hash: -645252348841906306
         
     | 
| 
      
 77 
     | 
    
         
            +
            requirements: []
         
     | 
| 
      
 78 
     | 
    
         
            +
            rubyforge_project: adapter-simpledb
         
     | 
| 
      
 79 
     | 
    
         
            +
            rubygems_version: 1.8.10
         
     | 
| 
      
 80 
     | 
    
         
            +
            signing_key: 
         
     | 
| 
      
 81 
     | 
    
         
            +
            specification_version: 3
         
     | 
| 
      
 82 
     | 
    
         
            +
            summary: Adapter for Amazon SimpleDB
         
     | 
| 
      
 83 
     | 
    
         
            +
            test_files:
         
     | 
| 
      
 84 
     | 
    
         
            +
            - spec/helper.rb
         
     | 
| 
      
 85 
     | 
    
         
            +
            - spec/simpledb_spec.rb
         
     |