def put_attributes(domain_name, item_name, attributes, replace = false, options={})
params = {'DomainName' => domain_name,
'ItemName' => item_name}.merge(pack_attributes(attributes, replace))
logger.debug 'PUT=' + params.inspect
link = generate_request("PutAttributes", params)
begin
request_info(link, QSdbSimpleParser.new, options)
rescue Aws::AwsError => ex
if options[:create_domain] && create_domain_if_not_exist(ex, domain_name)
options.delete(:create_domain)
put_attributes(domain_name, item_name, attributes, replace, options)
else
raise ex
end
end
rescue Exception
on_exception
end