@jaricardodev/ews-javascript-api
Version:
EWS Managed api in JavaScript
47 lines (43 loc) • 1.97 kB
text/typescript
import { EwsServiceJsonReader } from '../Core/EwsServiceJsonReader';
import { ExchangeService } from "../Core/ExchangeService";
import { FailedSearchMailbox } from "./FailedSearchMailbox";
import { NonIndexableItem } from "./NonIndexableItem";
import { XmlElementNames } from "../Core/XmlElementNames";
/**
* Represents non indexable item details result.
*
* @sealed
*/
export class NonIndexableItemDetailsResult {
/**
* Collection of items
*/
Items: NonIndexableItem[] = null;
/**
* Failed mailboxes
*/
FailedMailboxes: FailedSearchMailbox[] = null;
/**
* @internal Loads service object from XML.
*
* @param {any} jsObject Json Object converted from XML.
* @param {ExchangeService} service The service.
* @return {NonIndexableItemDetailsResult} Non indexable item details result object
*/
static LoadFromXmlJsObject(jsObject: any, service: ExchangeService): NonIndexableItemDetailsResult {
let nonIndexableItemDetailsResult: NonIndexableItemDetailsResult = new NonIndexableItemDetailsResult();
if (jsObject[XmlElementNames.Items]) {
nonIndexableItemDetailsResult.Items = [];
for (let nonIndexableItem of EwsServiceJsonReader.ReadAsArray(jsObject[XmlElementNames.Items], XmlElementNames.NonIndexableItemDetail)) {
nonIndexableItemDetailsResult.Items.push(NonIndexableItem.LoadFromXmlJsObject(nonIndexableItem, service));
}
if (nonIndexableItemDetailsResult.Items.length === 0) {
nonIndexableItemDetailsResult.Items = null;
}
}
if (jsObject[XmlElementNames.FailedMailboxes]) {
nonIndexableItemDetailsResult.FailedMailboxes = FailedSearchMailbox.LoadFromXmlJsObject(jsObject[XmlElementNames.FailedMailboxes], service);
}
return nonIndexableItemDetailsResult;
}
}