UNPKG

@jaricardodev/ews-javascript-api

Version:
79 lines (66 loc) 3.04 kB
import { Convert } from '../ExtensionMethods'; import { EwsServiceJsonReader } from "../Core/EwsServiceJsonReader"; import { ExchangeService } from '../Core/ExchangeService'; import { XmlElementNames } from "../Core/XmlElementNames"; import { XmlNamespace } from "../Enumerations/XmlNamespace"; /** * Represents failed mailbox to be searched * * @sealed */ export class FailedSearchMailbox { Mailbox: string = null; ErrorCode: number = 0; ErrorMessage: string = null; IsArchive: boolean = false; /** * Constructor * * @param {string} mailbox Mailbox identifier * @param {number} errorCode Error code * @param {string} errorMessage Error message */ constructor(mailbox: string, errorCode: number, errorMessage: string); /** * Constructor * * @param {string} mailbox Mailbox identifier * @param {number} errorCode Error code * @param {string} errorMessage Error message * @param {boolean} isArchive True if it is mailbox archive */ constructor(mailbox: string, errorCode: number, errorMessage: string, isArchive: boolean); constructor(mailbox: string, errorCode: number, errorMessage: string, isArchive: boolean = false) { this.Mailbox = mailbox; this.ErrorCode = errorCode; this.ErrorMessage = errorMessage; this.IsArchive = isArchive; } /** * @internal Load failed mailboxes xml * * @param {any} jsObject Json Object converted from XML. * @param {ExchangeService} service The service. * @return {FailedSearchMailbox[]} Failed search mailboxes. */ static LoadFromXmlJsObject(jsObject: any, service: ExchangeService): FailedSearchMailbox[] { let failedMailboxes: FailedSearchMailbox[] = []; for (let failedMailboxObject of EwsServiceJsonReader.ReadAsArray(jsObject, XmlElementNames.FailedMailbox)) { let mailbox: string = null, errorCode: number = 0, errorMessage: string = null, isArchive: boolean = false; if (failedMailboxObject[XmlElementNames.Mailbox]) { mailbox = failedMailboxObject[XmlElementNames.Mailbox]; } if (failedMailboxObject[XmlElementNames.ErrorCode]) { errorCode = Convert.toNumber(failedMailboxObject[XmlElementNames.ErrorCode]); } if (failedMailboxObject[XmlElementNames.ErrorMessage]) { errorMessage = failedMailboxObject[XmlElementNames.ErrorMessage]; } if (failedMailboxObject[XmlElementNames.IsArchive]) { isArchive = Convert.toBool(failedMailboxObject[XmlElementNames.IsArchive]); } failedMailboxes.push(new FailedSearchMailbox(mailbox, errorCode, errorMessage, isArchive)); } return failedMailboxes.length === 0 ? null : failedMailboxes; } }