2
2
3
3
from localstack .clients import BaseClient
4
4
from localstack .sdk .api .aws_api import AwsApi
5
- from localstack .sdk .models import Message
5
+ from localstack .sdk .models import Message , SesSentEmail
6
6
7
7
8
8
def _from_sqs_query_to_json (xml_dict : dict ) -> list [Message ]:
@@ -35,6 +35,10 @@ def __init__(self, **kwargs) -> None:
35
35
super ().__init__ (** kwargs )
36
36
self ._client = AwsApi (self ._api_client )
37
37
38
+ ########
39
+ # SQS
40
+ ########
41
+
38
42
def list_sqs_messages (self , account_id : str , region : str , queue_name : str ) -> list [Message ]:
39
43
response = self ._client .list_sqs_messages_with_http_info (
40
44
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]:
45
49
response = self ._client .list_all_sqs_messages_with_http_info (queue_url = queue_url )
46
50
return _from_sqs_query_to_json (json .loads (response .raw_data ))
47
51
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
+
48
65
49
66
def get_default (** args ) -> AwsApi :
50
67
"""Return a client with a default configuration"""
0 commit comments