Beispiel #1
0
    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
Beispiel #2
0
    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
Beispiel #3
0
    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
Beispiel #4
0
    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)
Beispiel #6
0
    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