Class: RightScale::CloudApi::AWS::SDB::Manager
- Defined in:
- lib/cloud/aws/sdb/manager.rb
Overview
Amazon Simple DB (SDB) compatible manager (thread safe).
Examples:
require "right_aws_api"
# Create a manager to access SDB.
sdb = RightScale::CloudApi::AWS::SDB::Manager::new(key, secret, 'https://sdb.amazonaws.com' )
sdb.ListDomains #=>
{"ListDomainsResponse"=>
{"ListDomainsResult"=>
{"DomainName"=>
["kd_tests",
"kdclient"]},
"ResponseMetadata"=>
{"RequestId"=>"d430ab64-18ff-b529-fc0c-0cae65d68203",
"BoxUsage"=>"0.0000071759"},
"@xmlns"=>"http://sdb.amazonaws.com/doc/2009-04-15/"}}
sdb.PutAttributes('DomainName' => 'kdclient',
'ItemName' => 'Employee',
'Attribute' => [ { 'Name' => 'name', 'Value' => 'John' },
{ 'Name' => 'age', 'Value' => '33' },
{ 'Name' => 'sex', 'Value' => 'male } ]) #=>
{"PutAttributesResponse"=>
{"ResponseMetadata"=>
{"RequestId"=>"210d06ce-8b15-0035-1084-baec98874f75",
"BoxUsage"=>"0.0000219961"},
"@xmlns"=>"http://sdb.amazonaws.com/doc/2009-04-15/"}}
# BatchPutAttributes
sdb.BatchPutAttributes( "DomainName" => "kdclient",
"Item.1.ItemName" => "konstantin",
"Item.1.Attribute.1.Name" => "sex",
"Item.1.Attribute.1.Value" => "male",
"Item.1.Attribute.2.Name" => "weight",
"Item.1.Attribute.2.Value" => "170",
"Item.1.Attribute.3.Name" => "age",
"Item.1.Attribute.3.Value" => "38",
"Item.2.ItemName" => "alex",
"Item.2.Attribute.1.Name" => "sex",
"Item.2.Attribute.1.Value" => "male",
"Item.2.Attribute.2.Name" => "weight",
"Item.2.Attribute.2.Value" => "188",
"Item.2.Attribute.3.Name" => "age",
"Item.2.Attribute.3.Value" => "42",
"Item.3.ItemName" => "diana",
"Item.3.Attribute.1.Name" => "sex",
"Item.3.Attribute.1.Value" => "female",
"Item.3.Attribute.2.Name" => "weight",
"Item.3.Attribute.2.Value" => "120",
"Item.3.Attribute.3.Name" => "age",
"Item.3.Attribute.3.Value" => "25" )
# ... the same as the call above (see {RightScale::CloudApi::Utils::AWS::parametrize} method usage)
sdb.BatchPutAttributes( 'DomainName' => 'kdclient',
'Item' => [ { 'ItemName' => 'konstantin',
'Attribute' => [ { 'Name' => 'sex', 'Value' => 'male' },
{ 'Name' => 'weight', 'Value' => '170'},
{ 'Name' => 'age', 'Value' => '38'} ] },
{ 'ItemName' => 'alex',
'Attribute' => [ { 'Name' => 'sex', 'Value' => 'male' },
{ 'Name' => 'weight', 'Value' => '188'},
{ 'Name' => 'age', 'Value' => '42'} ] },
{ 'ItemName' => 'diana',
'Attribute' => [ { 'Name' => 'sex', 'Value' => 'female' },
{ 'Name' => 'weight', 'Value' => '120'},
{ 'Name' => 'age', 'Value' => '25'} ] } ] ) #=>
{"BatchPutAttributesResponse"=>
{"ResponseMetadata"=>
{"RequestId"=>"4b0d9997-0a51-2c4f-3424-da04225d6ef9",
"BoxUsage"=>"0.0000461918"},
"@xmlns"=>"http://sdb.amazonaws.com/doc/2009-04-15/"}}
sdb.Select('SelectExpression' => "select name from kdclient where sex = 'female'")
See Also: