22
33from localstack .clients import BaseClient
44from localstack .sdk .api .aws_api import AwsApi
5- from localstack .sdk .models import Message
5+ from localstack .sdk .models import Message , SesSentEmail
66
77
88def _from_sqs_query_to_json (xml_dict : dict ) -> list [Message ]:
@@ -35,6 +35,10 @@ def __init__(self, **kwargs) -> None:
3535 super ().__init__ (** kwargs )
3636 self ._client = AwsApi (self ._api_client )
3737
38+ ########
39+ # SQS
40+ ########
41+
3842 def list_sqs_messages (self , account_id : str , region : str , queue_name : str ) -> list [Message ]:
3943 response = self ._client .list_sqs_messages_with_http_info (
4044 account_id = account_id , region = region , queue_name = queue_name
@@ -45,6 +49,19 @@ def list_sqs_messages_from_queue_url(self, queue_url) -> list[Message]:
4549 response = self ._client .list_all_sqs_messages_with_http_info (queue_url = queue_url )
4650 return _from_sqs_query_to_json (json .loads (response .raw_data ))
4751
52+ ########
53+ # SES
54+ ########
55+
56+ def get_ses_messages (
57+ self , id_filter : str | None = None , email_filter : str | None = None
58+ ) -> list [SesSentEmail ]:
59+ response = self ._client .get_ses_messages (id = id_filter , email = email_filter )
60+ return response .messages
61+
62+ def discard_ses_messages (self , id_filter : str | None = None ) -> None :
63+ return self ._client .discard_ses_messages (id = id_filter )
64+
4865
4966def get_default (** args ) -> AwsApi :
5067 """Return a client with a default configuration"""
0 commit comments