diff --git a/api/ECNQueue.py b/api/ECNQueue.py index 5bfa26a..e7127ec 100644 --- a/api/ECNQueue.py +++ b/api/ECNQueue.py @@ -5,6 +5,7 @@ #------------------------------------------------------------------------------# import os, time, email, re from typing import Union +import json @@ -40,6 +41,19 @@ def __init__(self, queue: str, number: int) -> None: self.subject = self.__getMostRecentHeaderByType("Subject")["content"] self.status = self.__getMostRecentHeaderByType("Status")["content"] + self.jsonData = { + "lastUpdated": self.lastUpdated, + "headers": self.headers, + "content": self.content, + "isLocked": self.isLocked, + "userEmail": self.userEmail, + "userName": self.userName, + "userAlias": self.userName, + "assignedTo": self.assignedTo, + "subject": self.subject, + "status": self.status + } + def __getLastUpdated(self) -> float: """Returns last modified time of item reported by the filesystem in mm-dd-yy hh:mm am/pm format. @@ -246,6 +260,14 @@ def __getAssignedTo(self) -> str: assignedTo = assignedToHeader["content"] return assignedTo + def toJson(self) -> dict: + """Returns a JSON safe representation of the item. + + Returns: + dict: JSON safe representation of the item. + """ + return json.dumps(self.jsonData) + def __repr__(self) -> str: return self.queue + str(self.number)