From 1dd473ca546ece333cd242cbfdf6f3f9578a1bbd Mon Sep 17 00:00:00 2001 From: Jacob Daniel Bennett Date: Mon, 2 Nov 2020 12:25:17 -0500 Subject: [PATCH] Implementation of headers only by passing a boolean to the Item class to include all or part of the item --- api/ECNQueue.py | 23 +++++++++++++++++------ api/api.py | 2 +- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/api/ECNQueue.py b/api/ECNQueue.py index 6d73768..f6f0ffc 100644 --- a/api/ECNQueue.py +++ b/api/ECNQueue.py @@ -51,7 +51,7 @@ currentFileDirectory = os.path.dirname(currentFilePath) currentFileDirectoryParent = os.path.dirname(currentFileDirectory) queueDirectory = os.path.join(currentFileDirectoryParent, "q-snapshot") - +#queueDirectory = "/home/pier/e/benne238/personalQueues" # Queues to not load in getQueues() queuesToIgnore = ["archives", "drafts", "inbox", "coral"] @@ -106,7 +106,7 @@ class Item: jsonData: A JSON serializable representation of the Item. """ - def __init__(self, queue: str, number: int) -> None: + def __init__(self, queue: str, number: int, wholeItem: bool) -> None: self.queue = queue try: self.number = int(number) @@ -118,7 +118,10 @@ def __init__(self, queue: str, number: int) -> None: self.lastUpdated = self.__getLastUpdated() self.__rawItem = self.__getRawItem() self.headers = self.__parseHeaders() - self.content = self.__parseSections() + + if wholeItem: + self.content = self.__parseSections() + self.isLocked = self.__isLocked() self.userEmail = self.__parseFromData(data="userEmail") self.userName = self.__parseFromData(data="userName") @@ -138,7 +141,7 @@ def __init__(self, queue: str, number: int) -> None: "number": self.number, "lastUpdated": self.lastUpdated, "headers": self.headers, - "content": self.content, + #"content": self.content, "isLocked": self.isLocked, "userEmail": self.userEmail, "userName": self.userName, @@ -151,6 +154,8 @@ def __init__(self, queue: str, number: int) -> None: "building": self.building, "dateReceived": self.dateReceived } + if wholeItem: + self.jsonData["content"] = self.content def __getLastUpdated(self) -> str: """Returns last modified time of item reported by the filesystem in mm-dd-yy hh:mm am/pm format. @@ -1247,7 +1252,7 @@ def __getItems(self) -> list: isFile = True if os.path.isfile(itemPath) else False if isFile and isValidItemName(item): - items.append(Item(self.name, item)) + items.append(Item(self.name, item, False)) return items @@ -1331,4 +1336,10 @@ def loadQueues() -> list: for queue in getValidQueues(): queues.append(Queue(queue)) - return queues \ No newline at end of file + return queues +if __name__ == "__main__": + queueList = [] + validQueues = getValidQueues() + for queue in validQueues: + queueList.append(Queue(queue).toJson()) + print() \ No newline at end of file diff --git a/api/api.py b/api/api.py index f77e7fc..a4973fd 100644 --- a/api/api.py +++ b/api/api.py @@ -40,7 +40,7 @@ def get(self, queue: str, number: int) -> str: Returns: str: JSON representation of the item requested. """ - return ECNQueue.Item(queue, number).toJson() + return ECNQueue.Item(queue, number, True).toJson() class Queue(Resource): def get(self, queue: str) -> str: