module Awspec::Type class SesIdentity < Base def initialize(id) super @resource_via_client = find_ses_identity(id) @id = @resource_via_client if @resource_via_client end def has_identity_policy?(name) res = ses_client.list_identity_policies({ identity: @id }) res.policy_names.find do |policy_name| policy_name == name end end # dkim_attributes dkim_attributes = %w( dkim_enabled dkim_verification_status ) dkim_attributes.each do |attribute| define_method attribute do res = ses_client.get_identity_dkim_attributes({ identities: [@id] }) res.dkim_attributes[@id][attribute.to_sym] end end def has_dkim_tokens?(token) res = ses_client.get_identity_dkim_attributes({ identities: [@id] }) res.dkim_attributes[@id][:tokens].include?(token) end # notification_attributes notification_attributes = %w( bounce_topic complaint_topic delivery_topic forwarding_enabled ) notification_attributes.each do |attribute| define_method attribute do res = ses_client.get_identity_notification_attributes({ identities: [@id] }) res.notification_attributes[@id][attribute.to_sym] end end # verification_attributes verification_attributes = %w( verification_status verification_token ) verification_attributes.each do |attribute| define_method attribute do res = ses_client.get_identity_verification_attributes({ identities: [@id] }) res.verification_attributes[@id][attribute.to_sym] end end end end