WIP · patrickread/sendgrid-python@ff555ca · GitHub
Skip to content

Commit ff555ca

Browse files
WIP
1 parent ad6c4da commit ff555ca

12 files changed

Lines changed: 174 additions & 29 deletions

sendgrid/helpers/mail/attachment.py

Lines changed: 35 additions & 2 deletions

sendgrid/helpers/mail/bcc_settings.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,14 @@ def __init__(self, enable=None, email=None):
1313
:param email: Who should be BCCed.
1414
:type email: Email, optional
1515
"""
16-
self.enable = enable
17-
self.email = email
16+
self._enable = None
17+
self._email = None
18+
19+
if enable is not None:
20+
self.enable = enable
21+
22+
if email is not None:
23+
self.email = email
1824

1925
@property
2026
def enable(self):

sendgrid/helpers/mail/bypass_list_management.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,10 @@ def __init__(self, enable=None):
1313
:param enable: Whether emails should bypass list management.
1414
:type enable: boolean, optional
1515
"""
16-
self.enable = enable
16+
self._enable = None
17+
18+
if enable is not None:
19+
self.enable = enable
1720

1821
@property
1922
def enable(self):

sendgrid/helpers/mail/category.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,10 @@ def __init__(self, name=None):
77
:param name: The name of this category
88
:type name: string, optional
99
"""
10-
self.name = name
10+
self._name = None
11+
12+
if name is not None:
13+
self.name = name
1114

1215
@property
1316
def name(self):

sendgrid/helpers/mail/click_tracking.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,14 @@ def __init__(self, enable=None, enable_text=None):
99
:param enable_text: If click tracking is on in your email's text/plain.
1010
:type enable_text: boolean, optional
1111
"""
12-
self.enable = enable
13-
self.enable_text = enable_text
12+
self._enable = None
13+
self._enable_text = None
14+
15+
if enable is not None:
16+
self.enable = enable
17+
18+
if enable_text is not None:
19+
self.enable_text = enable_text
1420

1521
@property
1622
def enable(self):

sendgrid/helpers/mail/custom_arg.py

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,21 @@ class CustomArg(object):
88
"""
99

1010
def __init__(self, key=None, value=None):
11-
"""Create a CustomArg with the given key and value."""
12-
self.key = key
13-
self.value = value
11+
"""Create a CustomArg with the given key and value.
12+
13+
:param key: Key for this CustomArg
14+
:type key: string, optional
15+
:param value: Value of this CustomArg
16+
:type value: string, optional
17+
"""
18+
self._key = None
19+
self._value = None
20+
21+
if key is not None:
22+
self.key = key
23+
24+
if value is not None:
25+
self.value = value
1426

1527
@property
1628
def key(self):

sendgrid/helpers/mail/email.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,19 @@ def __init__(self, email=None, name=None):
1717
:param name: Name for this sender or recipient.
1818
:type name: string
1919
"""
20+
self._name = None
21+
self._email = None
22+
2023
if email and not name:
2124
# allows passing emails as "dude Fella <example@example.com>"
2225
self.parse_email(email)
2326
else:
2427
# allows backwards compatibility for Email(email, name)
25-
self.email = email
26-
self.name = name
28+
if email is not None:
29+
self.email = email
30+
31+
if name is not None:
32+
self.name = name
2733

2834
@property
2935
def name(self):

sendgrid/helpers/mail/exceptions.py

Lines changed: 39 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,47 @@ class SendGridException(Exception):
88

99

1010
class APIKeyIncludedException(SendGridException):
11-
"""Exception raised for when SendGrid API Key included in message text
12-
Attributes:
13-
expression -- input expression in which the error occurred
14-
message -- explanation of the error
15-
"""
11+
"""Exception raised for when SendGrid API Key included in message text"""
1612

1713
def __init__(self,
1814
expression="Email body",
1915
message="SendGrid API Key detected"):
20-
self.expression = expression
21-
self.message = message
16+
"""Create an exception for when SendGrid API Key included in message text
17+
18+
:param expression: Input expression in which the error occurred
19+
:type expression: string
20+
:param message: Explanation of the error
21+
:type message: string
22+
"""
23+
self._expression = None
24+
self._message = None
2225

26+
if expression is not None:
27+
self.expression = expression
28+
29+
if message is not None:
30+
self.message = message
31+
32+
@property
33+
def expression(self):
34+
"""Input expression in which the error occurred
35+
36+
:rtype: string
37+
"""
38+
return self._expression
39+
40+
@expression.setter
41+
def expression(self, value):
42+
self._expression = value
43+
44+
@property
45+
def message(self):
46+
"""Explanation of the error
47+
48+
:rtype: string
49+
"""
50+
return self._message
51+
52+
@message.setter
53+
def message(self, value):
54+
self._message = value

sendgrid/helpers/mail/footer_settings.py

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,18 @@ def __init__(self, enable=None, text=None, html=None):
1111
:param html: HTML content of this footer
1212
:type html: string, optional
1313
"""
14-
self.enable = enable
15-
self.text = text
16-
self.html = html
14+
self._enable = None
15+
self._text = None
16+
self._html = None
17+
18+
if enable is not None:
19+
self.enable = enable
20+
21+
if text is not None:
22+
self.text = text
23+
24+
if html is not None:
25+
self.html = html
1726

1827
@property
1928
def enable(self):

sendgrid/helpers/mail/ganalytics.py

Lines changed: 1 addition & 1 deletion

0 commit comments

Comments
 (0)