UNPKG

@jaricardodev/ews-javascript-api

Version:
114 lines (96 loc) 3.87 kB
import { Convert } from "../ExtensionMethods"; import { Guid } from "../Guid"; import { ExchangeService } from "../Core/ExchangeService"; import { XmlElementNames } from "../Core/XmlElementNames"; /** * Represents searchable mailbox object * * @sealed */ export class SearchableMailbox { /** * Guid */ Guid: Guid = null; /** * Smtp address */ SmtpAddress: string = null; /** * If true, this is an external mailbox */ IsExternalMailbox: boolean = false; /** * External email address for the mailbox */ ExternalEmailAddress: string = null; /** * Display name */ DisplayName: string = null; /** * Is a membership group */ IsMembershipGroup: boolean = false; /** * Reference id */ ReferenceId: string = null; /** * Constructor */ constructor(); /** * Constructor * * @param {Guid} guid Guid * @param {string} smtpAddress Smtp address * @param {boolean} isExternalMailbox If true, this is an external mailbox * @param {string} externalEmailAddress External email address * @param {string} displayName Display name * @param {boolean} isMembershipGroup Is a membership group * @param {string} referenceId Reference id */ constructor(guid: Guid, smtpAddress: string, isExternalMailbox: boolean, externalEmailAddress: string, displayName: string, isMembershipGroup: boolean, referenceId: string); constructor(guid: Guid = null, smtpAddress: string = null, isExternalMailbox: boolean = false, externalEmailAddress: string = null, displayName: string = null, isMembershipGroup: boolean = false, referenceId: string = null) { this.Guid = guid; this.SmtpAddress = smtpAddress; this.IsExternalMailbox = isExternalMailbox; this.ExternalEmailAddress = externalEmailAddress; this.DisplayName = displayName; this.IsMembershipGroup = isMembershipGroup; this.ReferenceId = referenceId; } /** * @internal Loads service object from XML. * * @param {any} jsObject Json Object converted from XML. * @param {ExchangeService} service The service. * @return {SearchableMailbox} Searchable mailbox object */ static LoadFromXmlJsObject(jsObject: any, service: ExchangeService): SearchableMailbox { let searchableMailbox: SearchableMailbox = new SearchableMailbox(); if (jsObject[XmlElementNames.Guid]) { searchableMailbox.Guid = new Guid(jsObject[XmlElementNames.Guid]); } if (jsObject[XmlElementNames.DisplayName]) { searchableMailbox.DisplayName = jsObject[XmlElementNames.DisplayName]; } if (jsObject[XmlElementNames.PrimarySmtpAddress]) { searchableMailbox.SmtpAddress = jsObject[XmlElementNames.PrimarySmtpAddress]; } if (jsObject[XmlElementNames.IsExternalMailbox]) { searchableMailbox.IsExternalMailbox = Convert.toBool(jsObject[XmlElementNames.IsExternalMailbox]); } if (jsObject[XmlElementNames.ExternalEmailAddress]) { searchableMailbox.ExternalEmailAddress = jsObject[XmlElementNames.ExternalEmailAddress]; } if (jsObject[XmlElementNames.IsMembershipGroup]) { searchableMailbox.IsMembershipGroup = Convert.toBool(jsObject[XmlElementNames.IsMembershipGroup]); } if (jsObject[XmlElementNames.ReferenceId]) { searchableMailbox.ReferenceId = jsObject[XmlElementNames.ReferenceId]; } return searchableMailbox; } }