@jaricardodev/ews-javascript-api
Version:
EWS Managed api in JavaScript
47 lines (45 loc) • 2.39 kB
text/typescript
import {FolderIdWrapperList} from "../../Misc/FolderIdWrapperList";
import {ExchangeService} from "../ExchangeService";
import {ServiceErrorHandling} from "../../Enumerations/ServiceErrorHandling";
import {ServiceResponse} from "../Responses/ServiceResponse";
import {ExchangeVersion} from "../../Enumerations/ExchangeVersion";
import {XmlElementNames} from "../XmlElementNames";
import {XmlNamespace} from "../../Enumerations/XmlNamespace";
import {EwsServiceXmlWriter} from "../EwsServiceXmlWriter";
import {XmlAttributeNames} from "../XmlAttributeNames";
import {DeleteRequest} from "./DeleteRequest";
/** @internal */
export class EmptyFolderRequest extends DeleteRequest<ServiceResponse> {
DeleteSubFolders: boolean = false;
private folderIds: FolderIdWrapperList = new FolderIdWrapperList();
get FolderIds(): FolderIdWrapperList {
return this.folderIds;
}
constructor(service: ExchangeService, errorHandlingMode: ServiceErrorHandling) {
super(service, errorHandlingMode);
}
CreateServiceResponse(service: ExchangeService, responseIndex: number): ServiceResponse { return new ServiceResponse(); }
GetExpectedResponseMessageCount(): number { return this.FolderIds.Count; }
GetMinimumRequiredServerVersion(): ExchangeVersion { return ExchangeVersion.Exchange2010_SP1; }
GetResponseMessageXmlElementName(): string { return XmlElementNames.EmptyFolderResponseMessage; }
GetResponseXmlElementName(): string { return XmlElementNames.EmptyFolderResponse; }
GetXmlElementName(): string { return XmlElementNames.EmptyFolder; }
InternalToJson(body: any): any { throw new Error("EmptyFolderRequest.ts - InternalToJson : Not implemented."); }
Validate(): void {
super.Validate();
//EwsUtilities.ValidateParam(this.FolderIds, "FolderIds");
this.FolderIds.Validate(this.Service.RequestedServerVersion);
}
/**@internal */
WriteAttributesToXml(writer: EwsServiceXmlWriter): void {
super.WriteAttributesToXml(writer);
writer.WriteAttributeValue(XmlAttributeNames.DeleteSubFolders, this.DeleteSubFolders);
}
/**@internal */
WriteElementsToXml(writer: EwsServiceXmlWriter): void {
this.FolderIds.WriteToXml(
writer,
XmlNamespace.Messages,
XmlElementNames.FolderIds);
}
}