class Aws::Ses

Constants

API_VERSION
DEFAULT_HOST
DEFAULT_PATH
DEFAULT_PORT
DEFAULT_PROTOCOL

Public Class Methods

api() click to toggle source
# File lib/ses/ses.rb, line 37
def self.api
  @@api
end
bench() click to toggle source
# File lib/ses/ses.rb, line 22
def self.bench
  @@bench
end
bench_ec2() click to toggle source
# File lib/ses/ses.rb, line 30
def self.bench_ec2
  @@bench.service
end
bench_xml() click to toggle source
# File lib/ses/ses.rb, line 26
def self.bench_xml
  @@bench.xml
end
connection_name() click to toggle source
# File lib/ses/ses.rb, line 16
def self.connection_name
  :ses_connection
end
new(aws_access_key_id=nil, aws_secret_access_key=nil, params={}) click to toggle source
# File lib/ses/ses.rb, line 42
def initialize(aws_access_key_id=nil, aws_secret_access_key=nil, params={})
  init({:name => 'SES',
        :default_host => ENV['SES_URL'] ? URI.parse(ENV['SES_URL']).host : DEFAULT_HOST,
        :default_port => ENV['SES_URL'] ? URI.parse(ENV['SES_URL']).port : DEFAULT_PORT,
        :default_service => ENV['SES_URL'] ? URI.parse(ENV['SES_URL']).path : DEFAULT_PATH,
        :default_protocol => ENV['SES_URL'] ? URI.parse(ENV['SES_URL']).scheme : DEFAULT_PROTOCOL,
        :api_version => API_VERSION,
        :signature_version=>'3'},
       aws_access_key_id || ENV['AWS_ACCESS_KEY_ID'],
       aws_secret_access_key|| ENV['AWS_SECRET_ACCESS_KEY'],
       params)
end

Public Instance Methods

do_request(action, params, options={}) click to toggle source
# File lib/ses/ses.rb, line 55
def do_request(action, params, options={})
  link = generate_request(action, params)
  puts "request=" + link[:request].inspect
  resp = request_info_xml_simple3(self, link,
                                  :group_tags =>{"LoadBalancersDescriptions"=>"LoadBalancersDescription",
                                                 "DBParameterGroups" =>"DBParameterGroup",
                                                 "DBSecurityGroups" =>"DBSecurityGroup",
                                                 "EC2SecurityGroups" =>"EC2SecurityGroup",
                                                 "IPRanges" =>"IPRange"},
                                  :force_array =>["DBInstances",
                                                  "DBParameterGroups",
                                                  "DBSecurityGroups",
                                                  "EC2SecurityGroups",
                                                  "IPRanges"],
                                  :pull_out_array =>options[:pull_out_array],
                                  :pull_out_single=>options[:pull_out_single],
                                  :wrapper =>options[:wrapper])
end
get_send_quota(options={}) click to toggle source

options:

:marker => value received from previous response if IsTruncated = true
:max_items => number of items you want returned
:path_previx => for filtering results, default is /
# File lib/ses/ses.rb, line 84
def get_send_quota(options={})
  @logger.info("get_send_quota")

  resp = do_request("GetSendQuota", options)


rescue Exception
  on_exception
end
upload_server_certificate(name, public_key, private_key, options={}) click to toggle source

name: name of certificate public_key: public key certificate in PEM-encoded format private_key: private key in PEM-encoded format options:

:path => specify a path you want it stored in
:certificate_chain => contents of certificate chain
# File lib/ses/ses.rb, line 101
def upload_server_certificate(name, public_key, private_key, options={})
  params = {}
  params['ServerCertificateName'] = name
  params['PrivateKey'] = private_key
  params['CertificateBody'] = public_key

  params['CertificateChain'] = options[:certificate_chain] if options[:certificate_chain]
  params['Path'] = options[:path] if options[:path]

  p params

  resp = do_request("UploadServerCertificate", params, :pull_out_array=>[:list_server_certificates_result, :server_certificate_metadata_list])


rescue Exception
  on_exception
end