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