Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/sendgrid/helpers/mail/mail_settings.py: 29%
93 statements
« prev ^ index » next coverage.py v6.4.4, created at 2023-07-17 14:22 -0600
« prev ^ index » next coverage.py v6.4.4, created at 2023-07-17 14:22 -0600
1class MailSettings(object):
2 """A collection of mail settings that specify how to handle this email."""
4 def __init__(self,
5 bcc_settings=None,
6 bypass_bounce_management=None,
7 bypass_list_management=None,
8 bypass_spam_management=None,
9 bypass_unsubscribe_management=None,
10 footer_settings=None,
11 sandbox_mode=None,
12 spam_check=None):
13 """Create a MailSettings object
15 :param bcc_settings: The BCC Settings of this MailSettings
16 :type bcc_settings: BCCSettings, optional
17 :param bypass_bounce_management: Whether this MailSettings bypasses bounce management.
18 Should not be combined with bypass_list_management.
19 :type bypass_list_management: BypassBounceManagement, optional
20 :param bypass_list_management: Whether this MailSettings bypasses list
21 management
22 :type bypass_list_management: BypassListManagement, optional
23 :param bypass_spam_management: Whether this MailSettings bypasses spam management.
24 Should not be combined with bypass_list_management.
25 :type bypass_list_management: BypassSpamManagement, optional
26 :param bypass_unsubscribe_management: Whether this MailSettings bypasses unsubscribe management.
27 Should not be combined with bypass_list_management.
28 :type bypass_list_management: BypassUnsubscribeManagement, optional
29 :param footer_settings: The default footer specified by this
30 MailSettings
31 :type footer_settings: FooterSettings, optional
32 :param sandbox_mode: Whether this MailSettings enables sandbox mode
33 :type sandbox_mode: SandBoxMode, optional
34 :param spam_check: How this MailSettings requests email to be checked
35 for spam
36 :type spam_check: SpamCheck, optional
37 """
38 self._bcc_settings = None
39 self._bypass_bounce_management = None
40 self._bypass_list_management = None
41 self._bypass_spam_management = None
42 self._bypass_unsubscribe_management = None
43 self._footer_settings = None
44 self._sandbox_mode = None
45 self._spam_check = None
47 if bcc_settings is not None:
48 self.bcc_settings = bcc_settings
50 if bypass_bounce_management is not None:
51 self.bypass_bounce_management = bypass_bounce_management
53 if bypass_list_management is not None:
54 self.bypass_list_management = bypass_list_management
56 if bypass_spam_management is not None:
57 self.bypass_spam_management = bypass_spam_management
59 if bypass_unsubscribe_management is not None:
60 self.bypass_unsubscribe_management = bypass_unsubscribe_management
62 if footer_settings is not None:
63 self.footer_settings = footer_settings
65 if sandbox_mode is not None:
66 self.sandbox_mode = sandbox_mode
68 if spam_check is not None:
69 self.spam_check = spam_check
71 @property
72 def bcc_settings(self):
73 """The BCC Settings of this MailSettings.
75 :rtype: BCCSettings
76 """
77 return self._bcc_settings
79 @bcc_settings.setter
80 def bcc_settings(self, value):
81 """The BCC Settings of this MailSettings.
83 :param value: The BCC Settings of this MailSettings.
84 :type value: BCCSettings
85 """
86 self._bcc_settings = value
88 @property
89 def bypass_bounce_management(self):
90 """Whether this MailSettings bypasses bounce management.
92 :rtype: BypassBounceManagement
93 """
94 return self._bypass_bounce_management
96 @bypass_bounce_management.setter
97 def bypass_bounce_management(self, value):
98 """Whether this MailSettings bypasses bounce management.
100 :param value: Whether this MailSettings bypasses bounce management.
101 :type value: BypassBounceManagement
102 """
103 self._bypass_bounce_management = value
105 @property
106 def bypass_list_management(self):
107 """Whether this MailSettings bypasses list management.
109 :rtype: BypassListManagement
110 """
111 return self._bypass_list_management
113 @bypass_list_management.setter
114 def bypass_list_management(self, value):
115 """Whether this MailSettings bypasses list management.
117 :param value: Whether this MailSettings bypasses list management.
118 :type value: BypassListManagement
119 """
120 self._bypass_list_management = value
122 @property
123 def bypass_spam_management(self):
124 """Whether this MailSettings bypasses spam management.
126 :rtype: BypassSpamManagement
127 """
128 return self._bypass_spam_management
130 @bypass_spam_management.setter
131 def bypass_spam_management(self, value):
132 """Whether this MailSettings bypasses spam management.
134 :param value: Whether this MailSettings bypasses spam management.
135 :type value: BypassSpamManagement
136 """
137 self._bypass_spam_management = value
139 @property
140 def bypass_unsubscribe_management(self):
141 """Whether this MailSettings bypasses unsubscribe management.
143 :rtype: BypassUnsubscribeManagement
144 """
145 return self._bypass_unsubscribe_management
147 @bypass_unsubscribe_management.setter
148 def bypass_unsubscribe_management(self, value):
149 """Whether this MailSettings bypasses unsubscribe management.
151 :param value: Whether this MailSettings bypasses unsubscribe management.
152 :type value: BypassUnsubscribeManagement
153 """
154 self._bypass_unsubscribe_management = value
156 @property
157 def footer_settings(self):
158 """The default footer specified by this MailSettings.
160 :rtype: FooterSettings
161 """
162 return self._footer_settings
164 @footer_settings.setter
165 def footer_settings(self, value):
166 """The default footer specified by this MailSettings.
168 :param value: The default footer specified by this MailSettings.
169 :type value: FooterSettings
170 """
171 self._footer_settings = value
173 @property
174 def sandbox_mode(self):
175 """Whether this MailSettings enables sandbox mode.
177 :rtype: SandBoxMode
178 """
179 return self._sandbox_mode
181 @sandbox_mode.setter
182 def sandbox_mode(self, value):
183 """Whether this MailSettings enables sandbox mode.
185 :param value: Whether this MailSettings enables sandbox mode.
186 :type value: SandBoxMode
187 """
188 self._sandbox_mode = value
190 @property
191 def spam_check(self):
192 """How this MailSettings requests email to be checked for spam.
194 :rtype: SpamCheck
195 """
196 return self._spam_check
198 @spam_check.setter
199 def spam_check(self, value):
200 """How this MailSettings requests email to be checked for spam.
202 :param value: How this MailSettings requests email to be checked
203 for spam.
204 :type value: SpamCheck
205 """
206 self._spam_check = value
208 def get(self):
209 """
210 Get a JSON-ready representation of this MailSettings.
212 :returns: This MailSettings, ready for use in a request body.
213 :rtype: dict
214 """
215 mail_settings = {}
216 if self.bcc_settings is not None:
217 mail_settings["bcc"] = self.bcc_settings.get()
219 if self.bypass_bounce_management is not None:
220 mail_settings[
221 "bypass_bounce_management"] = self.bypass_bounce_management.get()
223 if self.bypass_list_management is not None:
224 mail_settings[
225 "bypass_list_management"] = self.bypass_list_management.get()
227 if self.bypass_spam_management is not None:
228 mail_settings[
229 "bypass_spam_management"] = self.bypass_spam_management.get()
231 if self.bypass_unsubscribe_management is not None:
232 mail_settings[
233 "bypass_unsubscribe_management"] = self.bypass_unsubscribe_management.get()
235 if self.footer_settings is not None:
236 mail_settings["footer"] = self.footer_settings.get()
238 if self.sandbox_mode is not None:
239 mail_settings["sandbox_mode"] = self.sandbox_mode.get()
241 if self.spam_check is not None:
242 mail_settings["spam_check"] = self.spam_check.get()
243 return mail_settings