Skip to content

Commit 1dc5df3

Browse files
committed
Type hint DataAlertRequest
1 parent 289a128 commit 1dc5df3

File tree

1 file changed

+15
-6
lines changed

1 file changed

+15
-6
lines changed

tableauserverclient/server/request_factory.py

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@
55

66
from ..models import TaskItem, UserItem, GroupItem, PermissionsRule, FavoriteItem
77

8+
from typing import TYPE_CHECKING
9+
10+
if TYPE_CHECKING:
11+
from ..models import DataAlertItem
12+
813

914
def _add_multipart(parts):
1015
mime_multipart_parts = list()
@@ -87,22 +92,26 @@ def update_req(self, column_item):
8792

8893

8994
class DataAlertRequest(object):
90-
def add_user_to_alert(self, alert_item, user_id):
95+
def add_user_to_alert(self, alert_item: "DataAlertItem", user_id: str) -> bytes:
9196
xml_request = ET.Element("tsRequest")
9297
user_element = ET.SubElement(xml_request, "user")
9398
user_element.attrib["id"] = user_id
9499

95100
return ET.tostring(xml_request)
96101

97-
def update_req(self, alert_item):
102+
def update_req(self, alert_item: "DataAlertItem") -> bytes:
98103
xml_request = ET.Element("tsRequest")
99104
dataAlert_element = ET.SubElement(xml_request, "dataAlert")
100-
dataAlert_element.attrib["subject"] = alert_item.subject
101-
dataAlert_element.attrib["frequency"] = alert_item.frequency.lower()
102-
dataAlert_element.attrib["public"] = str(alert_item.public).lower()
105+
if alert_item.subject is not None:
106+
dataAlert_element.attrib["subject"] = alert_item.subject
107+
if alert_item.frequency is not None:
108+
dataAlert_element.attrib["frequency"] = alert_item.frequency.lower()
109+
if alert_item.public is not None:
110+
dataAlert_element.attrib["public"] = str(alert_item.public).lower()
103111

104112
owner = ET.SubElement(dataAlert_element, "owner")
105-
owner.attrib["id"] = alert_item.owner_id
113+
if alert_item.owner_id is not None:
114+
owner.attrib["id"] = alert_item.owner_id
106115

107116
return ET.tostring(xml_request)
108117

0 commit comments

Comments
 (0)