Source code for models.email_meta_data

# -*- coding: utf-8 -*-
# Copyright 2021 Cohesity Inc.


[docs]class EmailMetaData(object): """Implementation of the 'EmailMetaData' model. Specifies details about the emails and the folder containing emails. Attributes: all_under_hierarchy (bool): AllUnderHierarchy specifies if logs of all the tenants under the hierarchy of tenant with id TenantId should be returned. bcc_recipient_addresses (list of string): Specifies the email addresses of the bcc recipients. cc_recipient_addresses (list of string): Specifies the email addresses of the cc recipients. domain_ids (list of long|int): Specifies the domain Ids in which mailboxes are registered. email_subject (string): Specifies the subject of the email. folder_key (long|int): Specifes the Parent Folder key. folder_name (string): Specifies the parent folder name of the email. has_attachments (bool): Specifies whether the emails have any attachments. item_key (string): Specifies the Key(unique within mailbox) for Outlook item such as Email. This key is not indexed but used for identifying the item while restore. mailbox_ids (list of long|int): Specifies the mailbox Ids which contains the emails/folders. protection_job_ids (list of long|int): Specifies the protection job Ids which have backed up mailbox(es) continaing emails/folders. received_end_time (long|int): Specifies the unix end time for querying on email's received time. received_start_time (long|int): Specifies the unix start time for querying on email's received time. received_time_seconds (long|int): Specifies the unix time when the email was received. recipient_addresses (list of string): Specifies the email addresses of the recipients. sender_address (string): Specifies the email address of the sender. sent_time_seconds (long|int): Specifies the unix time when the email was sent. show_only_email_folders (bool): Specifies whether the query result should include only Email folders. tenant_id (string): TenantId specifies the tenant whose action resulted in the audit log. """ # Create a mapping from Model property names to API property names _names = { "all_under_hierarchy":'allUnderHierarchy', "bcc_recipient_addresses":'bccRecipientAddresses', "cc_recipient_addresses":'ccRecipientAddresses', "domain_ids":'domainIds', "email_subject":'emailSubject', "folder_key":'folderKey', "folder_name":'folderName', "has_attachments":'hasAttachments', "item_key":'itemKey', "mailbox_ids":'mailboxIds', "protection_job_ids":'protectionJobIds', "received_end_time":'receivedEndTime', "received_start_time":'receivedStartTime', "received_time_seconds":'receivedTimeSeconds', "recipient_addresses":'recipientAddresses', "sender_address":'senderAddress', "sent_time_seconds":'sentTimeSeconds', "show_only_email_folders":'showOnlyEmailFolders', "tenant_id":'tenantId' } def __init__(self, all_under_hierarchy=None, bcc_recipient_addresses=None, cc_recipient_addresses=None, domain_ids=None, email_subject=None, folder_key=None, folder_name=None, has_attachments=None, item_key=None, mailbox_ids=None, protection_job_ids=None, received_end_time=None, received_start_time=None, received_time_seconds=None, recipient_addresses=None, sender_address=None, sent_time_seconds=None, show_only_email_folders=None, tenant_id=None): """Constructor for the EmailMetaData class""" # Initialize members of the class self.all_under_hierarchy = all_under_hierarchy self.bcc_recipient_addresses = bcc_recipient_addresses self.cc_recipient_addresses = cc_recipient_addresses self.domain_ids = domain_ids self.email_subject = email_subject self.folder_key = folder_key self.folder_name = folder_name self.has_attachments = has_attachments self.item_key = item_key self.mailbox_ids = mailbox_ids self.protection_job_ids = protection_job_ids self.received_end_time = received_end_time self.received_start_time = received_start_time self.received_time_seconds = received_time_seconds self.recipient_addresses = recipient_addresses self.sender_address = sender_address self.sent_time_seconds = sent_time_seconds self.show_only_email_folders = show_only_email_folders self.tenant_id = tenant_id
[docs] @classmethod def from_dictionary(cls, dictionary): """Creates an instance of this model from a dictionary Args: dictionary (dictionary): A dictionary representation of the object as obtained from the deserialization of the server's response. The keys MUST match property names in the API description. Returns: object: An instance of this structure class. """ if dictionary is None: return None # Extract variables from the dictionary all_under_hierarchy = dictionary.get('allUnderHierarchy') bcc_recipient_addresses = dictionary.get('bccRecipientAddresses') cc_recipient_addresses = dictionary.get('ccRecipientAddresses') domain_ids = dictionary.get('domainIds') email_subject = dictionary.get('emailSubject') folder_key = dictionary.get('folderKey') folder_name = dictionary.get('folderName') has_attachments = dictionary.get('hasAttachments') item_key = dictionary.get('itemKey') mailbox_ids = dictionary.get('mailboxIds') protection_job_ids = dictionary.get('protectionJobIds') received_end_time = dictionary.get('receivedEndTime') received_start_time = dictionary.get('receivedStartTime') received_time_seconds = dictionary.get('receivedTimeSeconds') recipient_addresses = dictionary.get('recipientAddresses') sender_address = dictionary.get('senderAddress') sent_time_seconds = dictionary.get('sentTimeSeconds') show_only_email_folders = dictionary.get('showOnlyEmailFolders') tenant_id = dictionary.get('tenantId') # Return an object of this model return cls(all_under_hierarchy, bcc_recipient_addresses, cc_recipient_addresses, domain_ids, email_subject, folder_key, folder_name, has_attachments, item_key, mailbox_ids, protection_job_ids, received_end_time, received_start_time, received_time_seconds, recipient_addresses, sender_address, sent_time_seconds, show_only_email_folders, tenant_id)