ews javascript api

__extends

declaration
 __extends 

var __extends = this.__extends || function (d, b) {
    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
    function __() { this.constructor = d; }
    __.prototype = b.prototype;
    d.prototype = new __();
};
var MultiResponseServiceRequest_1 = require("./MultiResponseServiceRequest");
var UpdateFolderResponse_1 = require("../Responses/UpdateFolderResponse");
var XmlElementNames_1 = require("../XmlElementNames");
var XmlNamespace_1 = require("../../Enumerations/XmlNamespace");
var ExchangeVersion_1 = require("../../Enumerations/ExchangeVersion");
var ExtensionMethods_1 = require("../../ExtensionMethods");
var Strings_1 = require("../../Strings");
var UpdateFolderRequest = (function (_super) {
    __extends(UpdateFolderRequest, _super);
    function UpdateFolderRequest(service, errorHandlingMode) {
        _super.call(this, service, errorHandlingMode);
        this.folders = [];
    }
    Object.defineProperty(UpdateFolderRequest.prototype, "Folders", {
        get: function () {
            return this.folders;
        },
        enumerable: true,
        configurable: true
    });
    UpdateFolderRequest.prototype.CreateServiceResponse = function (session, responseIndex) { return new UpdateFolderResponse_1.UpdateFolderResponse(this.Folders[responseIndex]); };
    UpdateFolderRequest.prototype.GetExpectedResponseMessageCount = function () { throw new Error("UpdateFolderRequest.ts - GetExpectedResponseMessageCount : Not implemented."); };
    UpdateFolderRequest.prototype.GetMinimumRequiredServerVersion = function () { return ExchangeVersion_1.ExchangeVersion.Exchange2007_SP1; };
    UpdateFolderRequest.prototype.GetResponseMessageXmlElementName = function () { return XmlElementNames_1.XmlElementNames.UpdateFolderResponseMessage; };
    UpdateFolderRequest.prototype.GetResponseXmlElementName = function () { return XmlElementNames_1.XmlElementNames.UpdateFolderResponse; };
    UpdateFolderRequest.prototype.GetXmlElementName = function () { return XmlElementNames_1.XmlElementNames.UpdateFolder; };
    UpdateFolderRequest.prototype.Validate = function () {
        _super.prototype.Validate.call(this);
        //EwsUtilities.ValidateParamCollection(this.Folders, "Folders");
        for (var _i = 0, _a = this.folders; _i < _a.length; _i++) {
            var folder = _a[_i];
            if ((folder == null) || folder.IsNew) {
                throw new Error(ExtensionMethods_1.StringHelper.Format(Strings_1.Strings.FolderToUpdateCannotBeNullOrNew, this.folders.indexOf(folder)));
            }
            folder.Validate();
        }
    };
    UpdateFolderRequest.prototype.WriteElementsToXml = function (writer) {
        writer.WriteStartElement(XmlNamespace_1.XmlNamespace.Messages, XmlElementNames_1.XmlElementNames.FolderChanges);
        for (var _i = 0, _a = this.folders; _i < _a.length; _i++) {
            var folder = _a[_i];
            folder.WriteToXmlForUpdate(writer);
        }
        writer.WriteEndElement();
    };
    return UpdateFolderRequest;
})(MultiResponseServiceRequest_1.MultiResponseServiceRequest);
exports.UpdateFolderRequest = UpdateFolderRequest;