An Enumerable collection representing all your domains in SimpleDB.
Use a DomainCollection to create, get and list domains.
@example Creating a domain in SimpleDB
sdb = SimpleDB.new domain = sdb.domains.create('mydomain')
@example Getting a domain with indifferent access
domain = sdb.domains[:mydomain] domain = sdb.domains['mydomain']
@example Enumerating domains
sdb.domains.each do |domain| puts domain.name end
@see Core::Collection
Returns a domain object with the given name.
@note This does not attempt to create the domain if it does not
already exist in SimpleDB. Use {#create} to add a domain to SDB.
@param [String] domain_name The name of the domain to return. @return [Domain] Returns the domain with the given name.
# File lib/aws/simple_db/domain_collection.rb, line 64 def [] domain_name Domain.new(domain_name.to_s, :config => config) end
Creates a domain in SimpleDB and returns a domain object.
@note This operation might take 10 or more seconds to complete. @note Creating a domain in SimpleDB is an idempotent operation;
running it multiple times using the same domain name will not result in an error.
@note You can create up to 100 domains per account. @param [String] domain_name @return [Domain] Returns a new domain with the given name.
# File lib/aws/simple_db/domain_collection.rb, line 52 def create(domain_name) client.create_domain(:domain_name => domain_name) self[domain_name] end
# File lib/aws/simple_db/domain_collection.rb, line 70 def _each_item next_token, limit, options = {} options[:next_token] = next_token if next_token options[:max_number_of_domains] = limit if limit resp = client.list_domains(options) resp.data[:domain_names].each do |name| yield(self[name]) end resp.data[:next_token] end