def get_stored_messages(self, subject): cursor = self._mongo.collection.find(dict(type=STORED_MSG)) list_of_msg_dicts = [dict for dict in cursor] stored_msgs = [(long_to_datetime(dict["datetime"]), dict["subject"], dict["body"]) for dict in list_of_msg_dicts] return stored_msgs
def log_entry_from_dict(mongoLogEntry, log_dict_input: dict): """ Starting with the dictionary representation, recover the original logEntry :param log_dict: dict, as per logEntry.log_dict() :return: logEntry object """ log_dict = copy(log_dict_input) log_timestamp_aslong = log_dict.pop(TIMESTAMP_ID) msg_level = log_dict.pop(LEVEL_ID) text = log_dict.pop(TEXT_ID) log_id = log_dict.pop(LOG_RECORD_ID) attributes = log_dict log_timestamp = long_to_datetime(log_timestamp_aslong) log_entry = mongoLogEntry( text, log_timestamp=log_timestamp, msglevel=msg_level, attributes=attributes, log_id=log_id, ) return log_entry
def get_stored_messages(self): dict_of_keys = {TYPE_KEY: STORED_MSG} list_of_msg_dicts = self.mongo_data.get_list_of_result_dicts_for_dict_keys( dict_of_keys) stored_msgs = [(long_to_datetime(dict[DATE_KEY]), dict[SUBJECT_KEY], dict[BODY_KEY]) for dict in list_of_msg_dicts] return stored_msgs
def _get_time_last_email_of_type_sent_with_this_subject( self, subject, type): result_dict = self._mongo.collection.find_one( dict(type=type, subject=subject)) if result_dict is None: return ARBITRARY_START result = result_dict["datetime"] result_as_datetime = long_to_datetime(result) return result_as_datetime
def from_dict_of_entries_to_margin_series( dict_of_entries: dict) -> seriesOfMargin: list_of_keys = dict_of_entries.keys() list_of_keys_as_datetime = [ long_to_datetime(int(key_entry)) for key_entry in list_of_keys ] list_of_values = list(dict_of_entries.values()) pd_series = pd.Series(list_of_values, index=list_of_keys_as_datetime) pd_series = pd_series.sort_index() return seriesOfMargin(pd_series)
def _get_time_last_email_of_type_sent_with_this_subject( self, subject, type): result_dict = self.mongo_data.get_result_dict_for_dict_keys({ TYPE_KEY: type, SUBJECT_KEY: subject }) if result_dict is missing_data: return missing_data result = result_dict[DATE_KEY] result_as_datetime = long_to_datetime(result) return result_as_datetime