/// <summary>
 /// Writes to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 /// <param name="xmlElementName">Name of the XML element.</param>
 internal override void WriteToXml(EwsServiceXmlWriter writer, string xmlElementName)
 {
     writer.WriteStartElement(XmlNamespace.Types, xmlElementName);
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.GroupIdentityType, this.IdentityType.ToString());
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.GroupIdentityValue, this.Value);
     writer.WriteEndElement();
 }
 /// <summary>
 /// Writes the attributes to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     if (this.ViewFilter.HasValue)
     {
         writer.WriteAttributeValue(XmlAttributeNames.ViewFilter, this.ViewFilter);
     }
 }
Exemplo n.º 3
0
        /// <summary>
        /// Writes to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        internal void WriteToXml(EwsServiceXmlWriter writer)
        {
            writer.WriteStartElement(XmlNamespace.Types, this.GetXmlElementName());

            this.WriteAttributesToXml(writer);

            writer.WriteEndElement(); // this.GetXmlElementName()
        }
        /// <summary>
        /// Writes to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        /// <param name="xmlElementName">Name of the XML element.</param>
        internal override void WriteToXml(EwsServiceXmlWriter writer, string xmlElementName)
        {
            writer.WriteStartElement(XmlNamespace.Types, xmlElementName);
            writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.SortType, this.SortType.ToString());
            writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.FilterType, this.FilterType.ToString());
            writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.SortDirection, this.SortDirection.ToString());

            writer.WriteEndElement();
        }
 /// <summary>
 /// Writes XML elements.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     if (!string.IsNullOrEmpty(this.mailboxSmtpAddress))
     {
         writer.WriteElementValue(
             XmlNamespace.Messages, 
             XmlElementNames.MailboxSmtpAddress, 
             this.mailboxSmtpAddress);
     }
 }
Exemplo n.º 6
0
        /// <summary>
        /// Writes to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        /// <param name="xmlElementName">Name of the XML element.</param>
        internal override void WriteToXml(EwsServiceXmlWriter writer, string xmlElementName)
        {
            writer.WriteStartElement(XmlNamespace.Types, xmlElementName);

            this.ConversationId.WriteToXml(writer);

            if (this.SyncState != null)
            {
                writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.SyncState, this.SyncState);
            }

            writer.WriteEndElement();
        }
Exemplo n.º 7
0
 void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     base.WriteAttributesToXml(writer);
 }
 /// <summary>
 /// Writes attributes to request XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal abstract void WriteAttributesToXml(EwsServiceXmlWriter writer);
        /// <summary>
        /// Executes this instance.
        /// </summary>
        /// <returns></returns>
        internal AutodiscoverResponse InternalExecute()
        {
            this.Validate();

            try
            {
                IEwsHttpWebRequest request = this.Service.PrepareHttpWebRequestForUrl(this.Url);

                this.Service.TraceHttpRequestHeaders(TraceFlags.AutodiscoverRequestHttpHeaders, request);

                bool needSignature = this.Service.Credentials != null && this.Service.Credentials.NeedSignature;
                bool needTrace     = this.Service.IsTraceEnabledFor(TraceFlags.AutodiscoverRequest);

                using (Stream requestStream = request.GetRequestStream())
                {
                    using (MemoryStream memoryStream = new MemoryStream())
                    {
                        using (EwsServiceXmlWriter writer = new EwsServiceXmlWriter(this.Service, memoryStream))
                        {
                            writer.RequireWSSecurityUtilityNamespace = needSignature;
                            this.WriteSoapRequest(
                                this.Url,
                                writer);
                        }

                        if (needSignature)
                        {
                            this.service.Credentials.Sign(memoryStream);
                        }

                        if (needTrace)
                        {
                            memoryStream.Position = 0;
                            this.Service.TraceXml(TraceFlags.AutodiscoverRequest, memoryStream);
                        }

                        EwsUtilities.CopyStream(memoryStream, requestStream);
                    }
                }

                using (IEwsHttpWebResponse webResponse = request.GetResponse())
                {
                    if (AutodiscoverRequest.IsRedirectionResponse(webResponse))
                    {
                        AutodiscoverResponse response = this.CreateRedirectionResponse(webResponse);
                        if (response != null)
                        {
                            return(response);
                        }
                        else
                        {
                            throw new ServiceRemoteException(Strings.InvalidRedirectionResponseReturned);
                        }
                    }

                    using (Stream responseStream = AutodiscoverRequest.GetResponseStream(webResponse))
                    {
                        using (MemoryStream memoryStream = new MemoryStream())
                        {
                            // Copy response stream to in-memory stream and reset to start
                            EwsUtilities.CopyStream(responseStream, memoryStream);
                            memoryStream.Position = 0;

                            this.Service.TraceResponse(webResponse, memoryStream);

                            EwsXmlReader ewsXmlReader = new EwsXmlReader(memoryStream);

                            // WCF may not generate an XML declaration.
                            ewsXmlReader.Read();
                            if (ewsXmlReader.NodeType == XmlNodeType.XmlDeclaration)
                            {
                                ewsXmlReader.ReadStartElement(XmlNamespace.Soap, XmlElementNames.SOAPEnvelopeElementName);
                            }
                            else if ((ewsXmlReader.NodeType != XmlNodeType.Element) || (ewsXmlReader.LocalName != XmlElementNames.SOAPEnvelopeElementName) || (ewsXmlReader.NamespaceUri != EwsUtilities.GetNamespaceUri(XmlNamespace.Soap)))
                            {
                                throw new ServiceXmlDeserializationException(Strings.InvalidAutodiscoverServiceResponse);
                            }

                            this.ReadSoapHeaders(ewsXmlReader);

                            AutodiscoverResponse response = this.ReadSoapBody(ewsXmlReader);

                            ewsXmlReader.ReadEndElement(XmlNamespace.Soap, XmlElementNames.SOAPEnvelopeElementName);

                            if (response.ErrorCode == AutodiscoverErrorCode.NoError)
                            {
                                return(response);
                            }
                            else
                            {
                                throw new AutodiscoverResponseException(response.ErrorCode, response.ErrorMessage);
                            }
                        }
                    }
                }
            }
            catch (WebException ex)
            {
                if (ex.Status == WebExceptionStatus.ProtocolError && ex.Response != null)
                {
                    IEwsHttpWebResponse httpWebResponse = this.Service.HttpWebRequestFactory.CreateExceptionResponse(ex);

                    if (AutodiscoverRequest.IsRedirectionResponse(httpWebResponse))
                    {
                        this.Service.ProcessHttpResponseHeaders(
                            TraceFlags.AutodiscoverResponseHttpHeaders,
                            httpWebResponse);

                        AutodiscoverResponse response = this.CreateRedirectionResponse(httpWebResponse);
                        if (response != null)
                        {
                            return(response);
                        }
                    }
                    else
                    {
                        this.ProcessWebException(ex);
                    }
                }

                // Wrap exception if the above code block didn't throw
                throw new ServiceRequestException(string.Format(Strings.ServiceRequestFailed, ex.Message), ex);
            }
            catch (XmlException ex)
            {
                this.Service.TraceMessage(
                    TraceFlags.AutodiscoverConfiguration,
                    string.Format("XML parsing error: {0}", ex.Message));

                // Wrap exception
                throw new ServiceRequestException(string.Format(Strings.ServiceRequestFailed, ex.Message), ex);
            }
            catch (IOException ex)
            {
                this.Service.TraceMessage(
                    TraceFlags.AutodiscoverConfiguration,
                    string.Format("I/O error: {0}", ex.Message));

                // Wrap exception
                throw new ServiceRequestException(string.Format(Strings.ServiceRequestFailed, ex.Message), ex);
            }
        }
 /// <summary>
 /// Writes OrderBy property to XML.
 /// </summary>
 /// <param name="writer">The writer</param>
 internal override void WriteOrderByToXml(EwsServiceXmlWriter writer)
 {
     this.orderBy.WriteToXml(writer, XmlElementNames.SortOrder);
 }
Exemplo n.º 11
0
 /// <summary>
 /// Writes the member key attribute to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     // if this.key is null or empty, writer skips the attribute
     writer.WriteAttributeValue(XmlAttributeNames.Key, this.key);
 }
 /// <summary>
 /// Writes attributes to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteAttributeValue(XmlAttributeNames.OccurrenceId, this.UniqueId);
     writer.WriteAttributeValue(XmlAttributeNames.ChangeKey, this.ChangeKey);
 }
Exemplo n.º 13
0
 /// <summary>
 /// Writes XML attributes.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     base.WriteAttributesToXml(writer);
     this.View.WriteAttributesToXml(writer);
 }
Exemplo n.º 14
0
 void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteAttributeValue(XmlAttributeNames.IsJunk, this.IsJunk);
     writer.WriteAttributeValue(XmlAttributeNames.MoveItem, this.MoveItem);
 }
Exemplo n.º 15
0
 void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     this.itemIds.WriteToXml(writer, XmlNamespace.Messages, XmlElementNames.ItemIds);
 }
 /// <summary>
 /// Writes XML elements.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Messages, XmlElementNames.OMEConfigurationXml, this.Xml);
 }
Exemplo n.º 17
0
 /// <summary>
 /// Writes the attributes to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal virtual void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteAttributeValue(XmlAttributeNames.Format, this.Format);
 }
        /// <summary>
        /// Writes the attributes to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
        {
            base.WriteAttributesToXml(writer);

            writer.WriteAttributeValue(XmlAttributeNames.FolderId, this.FolderId);
        }
 /// <summary>
 /// Writes elements to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     this.Rule.WriteToXml(writer, XmlElementNames.Rule);
 }
Exemplo n.º 20
0
 void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Messages, XmlElementNames.ID, this.Id);
     writer.WriteElementValue(XmlNamespace.Messages, XmlElementNames.DisableReason, this.DisableReason);
 }
        /// <summary>
        /// Writes elements to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
        {
            if (this.SearchFilter != null)
            {
                writer.WriteStartElement(XmlNamespace.Types, XmlElementNames.Restriction);
                this.SearchFilter.WriteToXml(writer);
                writer.WriteEndElement(); // Restriction
            }

            this.RootFolderIds.WriteToXml(writer, XmlElementNames.BaseFolderIds);
        }
Exemplo n.º 22
0
 /// <summary>
 /// Writes XML elements.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     // Don't have parameters in request
 }
    void WriteAttributesToXml(EwsServiceXmlWriter writer)
    {
        base.WriteAttributesToXml(writer);

        writer.WriteAttributeValue(XmlAttributeNames.ItemId, this.ItemId);
    }
Exemplo n.º 24
0
 /// <summary>
 /// Writes elements to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.EmailAddress, this.Address);
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.RoutingType, this.RoutingType);
 }
 /// <summary>
 /// Writes XML elements.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Messages, XmlElementNames.OMEConfigurationXml, this.Xml);
 }
Exemplo n.º 26
0
 void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.RuleId, this.RuleId);
 }
        /// <summary>
        /// Writes the attributes to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
        {
            base.WriteAttributesToXml(writer);

            writer.WriteAttributeValue(XmlAttributeNames.FolderId, this.FolderId);
        }
Exemplo n.º 28
0
 void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     // Don't have parameter in request.
 }
Exemplo n.º 29
0
 /// <summary>
 /// Writes elements to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     // No need to write member Status back to server
     // Write only AddressInformation container element
     this.AddressInformation.WriteToXml(
         writer,
         XmlNamespace.Types,
         XmlElementNames.Mailbox);
 }
Exemplo n.º 30
0
 /// <summary>
 /// Writes the attributes to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal virtual void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteAttributeValue(XmlAttributeNames.Format, this.Format);
 }
Exemplo n.º 31
0
    void WriteElementsToXml(EwsServiceXmlWriter writer)
    {
        if (this.AssignCategories.Count > 0)
        {
            this.AssignCategories.WriteToXml(writer, XmlElementNames.AssignCategories);
        }

        if (this.CopyToFolder != null)
        {
            writer.WriteStartElement(XmlNamespace.Types, XmlElementNames.CopyToFolder);
            this.CopyToFolder.WriteToXml(writer);
            writer.WriteEndElement();
        }

        if (this.Delete != false)
        {
            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.Delete,
                this.Delete);
        }

        if (this.ForwardAsAttachmentToRecipients.Count > 0)
        {
            this.ForwardAsAttachmentToRecipients.WriteToXml(writer, XmlElementNames.ForwardAsAttachmentToRecipients);
        }

        if (this.ForwardToRecipients.Count > 0)
        {
            this.ForwardToRecipients.WriteToXml(writer, XmlElementNames.ForwardToRecipients);
        }

        if (this.MarkImportance.HasValue)
        {
            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.MarkImportance,
                this.MarkImportance.Value);
        }

        if (this.MarkAsRead != false)
        {
            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.MarkAsRead,
                this.MarkAsRead);
        }

        if (this.MoveToFolder != null)
        {
            writer.WriteStartElement(XmlNamespace.Types, XmlElementNames.MoveToFolder);
            this.MoveToFolder.WriteToXml(writer);
            writer.WriteEndElement();
        }

        if (this.PermanentDelete != false)
        {
            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.PermanentDelete,
                this.PermanentDelete);
        }

        if (this.RedirectToRecipients.Count > 0)
        {
            this.RedirectToRecipients.WriteToXml(writer, XmlElementNames.RedirectToRecipients);
        }

        if (this.SendSMSAlertToRecipients.Count > 0)
        {
            EmailAddressCollection emailCollection = ConvertSMSRecipientsFromMobilePhoneCollectionToEmailAddressCollection(this.SendSMSAlertToRecipients);
            emailCollection.WriteToXml(writer, XmlElementNames.SendSMSAlertToRecipients);
        }

        if (this.ServerReplyWithMessage != null)
        {
            this.ServerReplyWithMessage.WriteToXml(writer, XmlElementNames.ServerReplyWithMessage);
        }

        if (this.StopProcessingRules != false)
        {
            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.StopProcessingRules,
                this.StopProcessingRules);
        }
    }
Exemplo n.º 32
0
 /// <summary>
 /// Writes OrderBy property to XML.
 /// </summary>
 /// <param name="writer">The writer</param>
 internal override void WriteOrderByToXml(EwsServiceXmlWriter writer)
 {
     this.orderBy.WriteToXml(writer, XmlElementNames.SortOrder);
 }
Exemplo n.º 33
0
 /// <summary>
 /// Writes elements to request XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal abstract void WriteElementsToXml(EwsServiceXmlWriter writer);
        /// <summary>
        /// Writes to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        /// <param name="propertyBag">The property bag.</param>
        /// <param name="isUpdateOperation">Indicates whether the context is an update operation.</param>
        internal override void WritePropertyValueToXml(
            EwsServiceXmlWriter writer,
            PropertyBag propertyBag,
            bool isUpdateOperation)
        {
            object value = propertyBag[this];

            if (value != null)
            {
                writer.WriteElementValue(XmlNamespace.Types, this.XmlElementName, this.Name, value);
            }
        }
Exemplo n.º 35
0
    /// <summary>
    /// Writes to XML.
    /// </summary>
    /// <param name="writer">The writer.</param>
    /// <param name="request">The request being emitted.</param>
    void WriteToXml(EwsServiceXmlWriter writer, GetUserAvailabilityRequest request)
    {
        if (request.IsFreeBusyViewRequested)
        {
            writer.WriteStartElement(XmlNamespace.Types, XmlElementNames.FreeBusyViewOptions);

            request.TimeWindow.WriteToXmlUnscopedDatesOnly(writer, XmlElementNames.TimeWindow);

            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.MergedFreeBusyIntervalInMinutes,
                this.MergedFreeBusyInterval);

            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.RequestedView,
                this.RequestedFreeBusyView);

            writer.WriteEndElement();     // FreeBusyViewOptions
        }

        if (request.IsSuggestionsViewRequested)
        {
            writer.WriteStartElement(XmlNamespace.Types, XmlElementNames.SuggestionsViewOptions);

            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.GoodThreshold,
                this.GoodSuggestionThreshold);

            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.MaximumResultsByDay,
                this.MaximumSuggestionsPerDay);

            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.MaximumNonWorkHourResultsByDay,
                this.MaximumNonWorkHoursSuggestionsPerDay);

            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.MeetingDurationInMinutes,
                this.MeetingDuration);

            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.MinimumSuggestionQuality,
                this.MinimumSuggestionQuality);

            TimeWindow timeWindowToSerialize = this.DetailedSuggestionsWindow == null ?
                                               request.TimeWindow :
                                               this.DetailedSuggestionsWindow;

            timeWindowToSerialize.WriteToXmlUnscopedDatesOnly(writer, XmlElementNames.DetailedSuggestionsWindow);

            if (this.CurrentMeetingTime.HasValue)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.CurrentMeetingTime,
                    this.CurrentMeetingTime.Value);
            }

            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.GlobalObjectId,
                this.GlobalObjectId);

            writer.WriteEndElement();     // SuggestionsViewOptions
        }
    }
Exemplo n.º 36
0
 /// <summary>
 /// Writes the member key attribute to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     // if this.key is null or empty, writer skips the attribute
     writer.WriteAttributeValue(XmlAttributeNames.Key, this.key);
 }
 /// <summary>
 /// Writes the attributes to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteAttributeValue(XmlAttributeNames.Traversal, this.Traversal);
 }
 /// <summary>
 /// Writes elements to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     if (this.MinimumSize.HasValue)
     {
         writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.MinimumSize, this.MinimumSize.Value);
     }
     if (this.MaximumSize.HasValue)
     {
         writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.MaximumSize, this.MaximumSize.Value);
     }
 }
 /// <summary>
 /// Writes elements to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.LobbyBypass, this.LobbyBypass);
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.AccessLevel, this.AccessLevel);
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.Presenters, this.Presenters);
 }
Exemplo n.º 40
0
 void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Messages, XmlElementNames.MailboxSmtpAddress, this.MailboxSmtpAddress);
 }
 void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Messages, XmlElementNames.HoldId, this.HoldId);
 }
Exemplo n.º 42
0
        /// <summary>
        /// Writes elements to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
        {
            if (this.Categories.Count > 0)
            {
                this.Categories.WriteToXml(writer, XmlElementNames.Categories);
            }

            if (this.ContainsBodyStrings.Count > 0)
            {
                this.ContainsBodyStrings.WriteToXml(writer, XmlElementNames.ContainsBodyStrings);
            }

            if (this.ContainsHeaderStrings.Count > 0)
            {
                this.ContainsHeaderStrings.WriteToXml(writer, XmlElementNames.ContainsHeaderStrings);
            }

            if (this.ContainsRecipientStrings.Count > 0)
            {
                this.ContainsRecipientStrings.WriteToXml(writer, XmlElementNames.ContainsRecipientStrings);
            }

            if (this.ContainsSenderStrings.Count > 0)
            {
                this.ContainsSenderStrings.WriteToXml(writer, XmlElementNames.ContainsSenderStrings);
            }

            if (this.ContainsSubjectOrBodyStrings.Count > 0)
            {
                this.ContainsSubjectOrBodyStrings.WriteToXml(writer, XmlElementNames.ContainsSubjectOrBodyStrings);
            }

            if (this.ContainsSubjectStrings.Count > 0)
            {
                this.ContainsSubjectStrings.WriteToXml(writer, XmlElementNames.ContainsSubjectStrings);
            }

            if (this.FlaggedForAction.HasValue)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.FlaggedForAction,
                    this.FlaggedForAction.Value);
            }

            if (this.FromAddresses.Count > 0)
            {
                this.FromAddresses.WriteToXml(writer, XmlElementNames.FromAddresses);
            }

            if (this.FromConnectedAccounts.Count > 0)
            {
                this.FromConnectedAccounts.WriteToXml(writer, XmlElementNames.FromConnectedAccounts);
            }

            if (this.HasAttachments != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.HasAttachments,
                    this.HasAttachments);
            }

            if (this.Importance.HasValue)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.Importance,
                    this.Importance.Value);
            }

            if (this.IsApprovalRequest != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsApprovalRequest,
                    this.IsApprovalRequest);
            }

            if (this.IsAutomaticForward != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsAutomaticForward,
                    this.IsAutomaticForward);
            }

            if (this.IsAutomaticReply != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsAutomaticReply,
                    this.IsAutomaticReply);
            }

            if (this.IsEncrypted != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsEncrypted,
                    this.IsEncrypted);
            }

            if (this.IsMeetingRequest != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsMeetingRequest,
                    this.IsMeetingRequest);
            }

            if (this.IsMeetingResponse != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsMeetingResponse,
                    this.IsMeetingResponse);
            }

            if (this.IsNonDeliveryReport != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsNDR,
                    this.IsNonDeliveryReport);
            }

            if (this.IsPermissionControlled != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsPermissionControlled,
                    this.IsPermissionControlled);
            }

            if (this.isReadReceipt != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsReadReceipt,
                    this.IsReadReceipt);
            }

            if (this.IsSigned != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsSigned,
                    this.IsSigned);
            }

            if (this.IsVoicemail != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsVoicemail,
                    this.IsVoicemail);
            }

            if (this.ItemClasses.Count > 0)
            {
                this.ItemClasses.WriteToXml(writer, XmlElementNames.ItemClasses);
            }

            if (this.MessageClassifications.Count > 0)
            {
                this.MessageClassifications.WriteToXml(writer, XmlElementNames.MessageClassifications);
            }

            if (this.NotSentToMe != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.NotSentToMe,
                    this.NotSentToMe);
            }

            if (this.SentCcMe != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.SentCcMe,
                    this.SentCcMe);
            }

            if (this.SentOnlyToMe != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.SentOnlyToMe,
                    this.SentOnlyToMe);
            }

            if (this.SentToAddresses.Count > 0)
            {
                this.SentToAddresses.WriteToXml(writer, XmlElementNames.SentToAddresses);
            }

            if (this.SentToMe != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.SentToMe,
                    this.SentToMe);
            }

            if (this.SentToOrCcMe != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.SentToOrCcMe,
                    this.SentToOrCcMe);
            }

            if (this.Sensitivity.HasValue)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.Sensitivity,
                    this.Sensitivity.Value);
            }

            if (this.WithinDateRange.Start.HasValue || this.WithinDateRange.End.HasValue)
            {
                this.WithinDateRange.WriteToXml(writer, XmlElementNames.WithinDateRange);
            }

            if (this.WithinSizeRange.MaximumSize.HasValue || this.WithinSizeRange.MinimumSize.HasValue)
            {
                this.WithinSizeRange.WriteToXml(writer, XmlElementNames.WithinSizeRange);
            }
        }
 /// <summary>
 /// Writes attributes to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteAttributeValue(XmlAttributeNames.OccurrenceId, this.UniqueId);
     writer.WriteAttributeValue(XmlAttributeNames.ChangeKey, this.ChangeKey);
 }
Exemplo n.º 44
0
 /// <summary>
 /// Writes attributes to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteAttributeValue(XmlAttributeNames.BodyType, this.BodyType);
 }
 /// <summary>
 /// Writes elements to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.RuleId, this.RuleId);
 }
 /// <summary>
 /// Writes XML elements.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     // Don't have parameters in request
 }
Exemplo n.º 47
0
        /// <summary>
        /// Writes XML elements.
        /// </summary>
        /// <param name="writer">The writer.</param>
        internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
        {
            if (this.SearchFilter != null)
            {
                // Emit the Restriction element
                writer.WriteStartElement(XmlNamespace.Messages, XmlElementNames.Restriction);
                this.SearchFilter.WriteToXml(writer);
                writer.WriteEndElement();
            }

            // Emit the View element
            this.View.WriteToXml(writer, null);

            // Emit the SortOrder
            this.View.WriteOrderByToXml(writer);

            // Emit the ParentFolderId element
            if (this.FolderId != null)
            {
                writer.WriteStartElement(XmlNamespace.Messages, XmlElementNames.ParentFolderId);
                this.FolderId.WriteToXml(writer);
                writer.WriteEndElement();
            }

            if (!string.IsNullOrEmpty(this.QueryString))
            {
                // Emit the QueryString element
                writer.WriteStartElement(XmlNamespace.Messages, XmlElementNames.QueryString);
                writer.WriteValue(this.QueryString, XmlElementNames.QueryString);
                writer.WriteEndElement();
            }

            if (this.Service.RequestedServerVersion >= this.GetMinimumRequiredServerVersion())
            {
                if (this.View.PropertySet != null)
                {
                    this.View.PropertySet.WriteToXml(writer, ServiceObjectType.Persona);
                }
            }
        }
 /// <summary>
 /// Writes elements to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     this.Rule.WriteToXml(writer, XmlElementNames.Rule);
 }
Exemplo n.º 49
0
        /// <summary>
        /// Writes elements to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
        {
            if (!string.IsNullOrEmpty(this.Id))
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.RuleId, 
                    this.Id);
            }

            writer.WriteElementValue(
                XmlNamespace.Types, 
                XmlElementNames.DisplayName, 
                this.DisplayName);
            writer.WriteElementValue(
                XmlNamespace.Types, 
                XmlElementNames.Priority, 
                this.Priority);
            writer.WriteElementValue(
                XmlNamespace.Types, 
                XmlElementNames.IsEnabled, 
                this.IsEnabled);
            writer.WriteElementValue(
                XmlNamespace.Types,
                XmlElementNames.IsInError,
                this.IsInError);
            this.Conditions.WriteToXml(writer, XmlElementNames.Conditions);
            this.Exceptions.WriteToXml(writer, XmlElementNames.Exceptions);
            this.Actions.WriteToXml(writer, XmlElementNames.Actions);
        }
Exemplo n.º 50
0
 /// <summary>
 /// Writes elements to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     if (!string.IsNullOrEmpty(this.Text))
     {
         writer.WriteValue(this.Text, XmlElementNames.NormalizedBody);
     }
 }
        /// <summary>
        /// Writes to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        /// <param name="groupBy">The group by clause.</param>
        internal override void WriteToXml(EwsServiceXmlWriter writer, Grouping groupBy)
        {
            writer.WriteStartElement(XmlNamespace.Messages, this.GetViewXmlElementName());

            this.InternalWriteViewToXml(writer);

            writer.WriteEndElement();
        }
Exemplo n.º 52
0
 /// <summary>
 /// Internals the write search settings to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 /// <param name="groupBy">The group by.</param>
 internal override void InternalWriteSearchSettingsToXml(EwsServiceXmlWriter writer, Grouping groupBy)
 {
     base.InternalWriteSearchSettingsToXml(writer, groupBy);
 }
 /// <summary>
 /// Internals the write search settings to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 /// <param name="groupBy">The group by.</param>
 internal override void InternalWriteSearchSettingsToXml(EwsServiceXmlWriter writer, Grouping groupBy)
 {
     base.InternalWriteSearchSettingsToXml(writer, groupBy);
 }
Exemplo n.º 54
0
 /// <summary>
 /// Write extra headers.
 /// </summary>
 /// <param name="writer">The writer</param>
 internal virtual void WriteExtraCustomSoapHeadersToXml(EwsServiceXmlWriter writer)
 {
     // do nothing here.
     // currently used only by GetUserSettingRequest to emit the BinarySecret header.
 }
Exemplo n.º 55
0
        /// <summary>
        /// Writes elements to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
        {
            if (this.Categories.Count > 0)
            {
                this.Categories.WriteToXml(writer, XmlElementNames.Categories);
            }

            if (this.ContainsBodyStrings.Count > 0)
            {
                this.ContainsBodyStrings.WriteToXml(writer, XmlElementNames.ContainsBodyStrings);
            }

            if (this.ContainsHeaderStrings.Count > 0)
            {
                this.ContainsHeaderStrings.WriteToXml(writer, XmlElementNames.ContainsHeaderStrings);
            }

            if (this.ContainsRecipientStrings.Count > 0)
            {
                this.ContainsRecipientStrings.WriteToXml(writer, XmlElementNames.ContainsRecipientStrings);
            }

            if (this.ContainsSenderStrings.Count > 0)
            {
                this.ContainsSenderStrings.WriteToXml(writer, XmlElementNames.ContainsSenderStrings);
            }

            if (this.ContainsSubjectOrBodyStrings.Count > 0)
            {
                this.ContainsSubjectOrBodyStrings.WriteToXml(writer, XmlElementNames.ContainsSubjectOrBodyStrings);
            }

            if (this.ContainsSubjectStrings.Count > 0)
            {
                this.ContainsSubjectStrings.WriteToXml(writer, XmlElementNames.ContainsSubjectStrings);
            }

            if (this.FlaggedForAction.HasValue)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.FlaggedForAction,
                    this.FlaggedForAction.Value);
            }

            if (this.FromAddresses.Count > 0)
            {
                this.FromAddresses.WriteToXml(writer, XmlElementNames.FromAddresses);
            }

            if (this.FromConnectedAccounts.Count > 0)
            {
                this.FromConnectedAccounts.WriteToXml(writer, XmlElementNames.FromConnectedAccounts);
            }

            if (this.HasAttachments != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.HasAttachments,
                    this.HasAttachments);
            }

            if (this.Importance.HasValue)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.Importance,
                    this.Importance.Value);
            }

            if (this.IsApprovalRequest != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsApprovalRequest,
                    this.IsApprovalRequest);
            }

            if (this.IsAutomaticForward != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types,
                    XmlElementNames.IsAutomaticForward,
                    this.IsAutomaticForward);
            }

            if (this.IsAutomaticReply != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.IsAutomaticReply, 
                    this.IsAutomaticReply);
            }

            if (this.IsEncrypted != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.IsEncrypted, 
                    this.IsEncrypted);
            }

            if (this.IsMeetingRequest != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.IsMeetingRequest, 
                    this.IsMeetingRequest);
            }

            if (this.IsMeetingResponse != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.IsMeetingResponse, 
                    this.IsMeetingResponse);
            }

            if (this.IsNonDeliveryReport != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.IsNDR,
                    this.IsNonDeliveryReport);
            }

            if (this.IsPermissionControlled != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.IsPermissionControlled, 
                    this.IsPermissionControlled);
            }

            if (this.isReadReceipt != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.IsReadReceipt,
                    this.IsReadReceipt);
            }

            if (this.IsSigned != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.IsSigned, 
                    this.IsSigned);
            }

            if (this.IsVoicemail != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.IsVoicemail, 
                    this.IsVoicemail);
            }

            if (this.ItemClasses.Count > 0)
            {
                this.ItemClasses.WriteToXml(writer, XmlElementNames.ItemClasses);
            }

            if (this.MessageClassifications.Count > 0)
            {
                this.MessageClassifications.WriteToXml(writer, XmlElementNames.MessageClassifications);
            }

            if (this.NotSentToMe != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.NotSentToMe, 
                    this.NotSentToMe);
            }

            if (this.SentCcMe != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.SentCcMe, 
                    this.SentCcMe);
            }

            if (this.SentOnlyToMe != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.SentOnlyToMe, 
                    this.SentOnlyToMe);
            }

            if (this.SentToAddresses.Count > 0)
            {
                this.SentToAddresses.WriteToXml(writer, XmlElementNames.SentToAddresses);
            }

            if (this.SentToMe != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.SentToMe, 
                    this.SentToMe);
            }

            if (this.SentToOrCcMe != false)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.SentToOrCcMe, 
                    this.SentToOrCcMe);
            }

            if (this.Sensitivity.HasValue)
            {
                writer.WriteElementValue(
                    XmlNamespace.Types, 
                    XmlElementNames.Sensitivity, 
                    this.Sensitivity.Value);
            }

            if (this.WithinDateRange.Start.HasValue || this.WithinDateRange.End.HasValue)
            {
                this.WithinDateRange.WriteToXml(writer, XmlElementNames.WithinDateRange);
            }

            if (this.WithinSizeRange.MaximumSize.HasValue || this.WithinSizeRange.MinimumSize.HasValue)
            {
                this.WithinSizeRange.WriteToXml(writer, XmlElementNames.WithinSizeRange);
            }
        }
Exemplo n.º 56
0
 void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Messages, XmlElementNames.ID, this.Id);
     writer.WriteElementValue(XmlNamespace.Messages, XmlElementNames.AcceptanceState, this.ConsentState);
 }
Exemplo n.º 57
0
 /// <summary>
 /// Writes attributes to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteAttributesToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteAttributeValue(XmlAttributeNames.BodyType, this.BodyType);
 }
Exemplo n.º 58
0
 /// <summary>
 /// Writes elements to XML.
 /// </summary>
 /// <param name="writer">The writer.</param>
 internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.EmailAddress, this.Address);
     writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.RoutingType, this.RoutingType);
 }
Exemplo n.º 59
0
        /// <summary>
        /// Writes elements to XML.
        /// </summary>
        /// <param name="writer">The writer.</param>
        internal override void WriteElementsToXml(EwsServiceXmlWriter writer)
        {
            writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.Name, this.Name);
            writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.EmailAddress, this.Address);
            writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.RoutingType, this.RoutingType);
            writer.WriteElementValue(XmlNamespace.Types, XmlElementNames.MailboxType, this.MailboxType);

            if (this.Id != null)
            {
                this.Id.WriteToXml(writer, XmlElementNames.ItemId);
            }
        }
 void WriteElementsToXml(EwsServiceXmlWriter writer)
 {
     this.id.WriteToXml(writer, XmlNamespace.Messages, XmlElementNames.PhoneCallId);
 }