def __init__(self, feedstate_dict: Mapping[str, Any]=None) -> None:
if feedstate_dict is not None:
LOG.debug("Successfully loaded feed state dict.")
self.feed = feedstate_dict.get("feed", {})
self.entries = feedstate_dict.get("entries", [])
self.entries_state_dict = feedstate_dict.get("entries_state_dict", {})
self.queue = collections.deque(feedstate_dict.get("queue", []))
# Store the most recent SUMMARY_LIMIT items we've downloaded.
temp_list = feedstate_dict.get("summary_queue", [])
self.summary_queue: MutableSequence[Dict[str, Any]] = collections.deque(
[],
SUMMARY_LIMIT,
)
# When we load from the cache file, mark all of the items in the summary queue as not
# being from the current session.
for elem in temp_list:
elem["is_this_session"] = False
self.summary_queue.append(elem)
last_modified = feedstate_dict.get("last_modified", None)
self.store_last_modified(last_modified)
self.etag = feedstate_dict.get("etag", None)
self.latest_entry_number = feedstate_dict.get("latest_entry_number", None)
else:
LOG.debug("Did not successfully load feed state dict.")
LOG.debug("Creating blank dict.")
self.feed = {}
self.entries = []
self.entries_state_dict = {}
self.queue = collections.deque([])
self.summary_queue = collections.deque([], SUMMARY_LIMIT)
self.last_modified: Any = None
self.etag: str = None
self.latest_entry_number = None
评论列表
文章目录