MsmqIntegrationMessageProperty.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / MsmqIntegration / MsmqIntegrationMessageProperty.cs / 1 / MsmqIntegrationMessageProperty.cs

                            //------------------------------------------------------------ 
// Copyright (c) Microsoft Corporation.  All rights reserved.
//-----------------------------------------------------------
namespace System.ServiceModel.MsmqIntegration
{ 
    using System.ComponentModel;
    using System.Messaging; 
    using System.ServiceModel.Channels; 

    public sealed class MsmqIntegrationMessageProperty 
    {
        public const string Name = "MsmqIntegrationMessageProperty";

        public static MsmqIntegrationMessageProperty Get(System.ServiceModel.Channels.Message message) 
        {
            if (null == message) 
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("message"); 
            if (null == message.Properties)
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("message.Properties"); 

            return message.Properties[Name] as MsmqIntegrationMessageProperty;
        }
 
        object body = null;
        public object Body 
        { 
            get { return this.body; }
            set { this.body = value; } 
        }

        AcknowledgeTypes? acknowledgeType = null;
        public AcknowledgeTypes? AcknowledgeType 
        {
            get { return this.acknowledgeType; } 
            set { this.acknowledgeType = value; } 
        }
 
        Acknowledgment? acknowledgment = null;
        public Acknowledgment? Acknowledgment
        {
            get { return this.acknowledgment; } 
            internal set { this.acknowledgment = value; }
        } 
 
        Uri administrationQueue = null;
        public Uri AdministrationQueue 
        {
            get { return this.administrationQueue; }
            set { this.administrationQueue = value; }
        } 

        int? appSpecific = null; 
        public int? AppSpecific 
        {
            get { return this.appSpecific; } 
            set { this.appSpecific = value; }
        }

        DateTime? arrivedTime = null; 
        public DateTime? ArrivedTime
        { 
            get { return this.arrivedTime; } 
            internal set { this.arrivedTime = value; }
        } 

        bool? authenticated = null;
        public bool? Authenticated
        { 
            get { return this.authenticated; }
            internal set { this.authenticated = value; } 
        } 

        int? bodyType = null; 
        public int? BodyType
        {
            get { return this.bodyType; }
            set { this.bodyType = value; } 
        }
 
        string correlationId = null; 
        public string CorrelationId
        { 
            get { return this.correlationId; }
            set { this.correlationId = value; }
        }
 
        Uri destinationQueue = null;
        public Uri DestinationQueue 
        { 
            get { return this.destinationQueue; }
            internal set { this.destinationQueue = value; } 
        }

        byte[] extension = null;
        public byte[] Extension 
        {
            get { return this.extension; } 
            set { this.extension = value; } 
        }
 
        string id = null;
        public string Id
        {
            get { return this.id; } 
            internal set { this.id = value; }
        } 
 
        string label = null;
        public string Label 
        {
            get { return this.label; }
            set { this.label = value; }
        } 

        MessageType? messageType = null; 
        public MessageType? MessageType 
        {
            get { return this.messageType; } 
            internal set { this.messageType = value; }
        }

        MessagePriority? priority = null; 
        public MessagePriority? Priority
        { 
            get { return this.priority; } 
            set
            { 
                ValidateMessagePriority(value);
                this.priority = value;
            }
        } 

        Uri responseQueue = null; 
        public Uri ResponseQueue 
        {
            get { return this.responseQueue; } 
            set { this.responseQueue = value; }
        }

        byte[] senderId = null; 
        public byte[] SenderId
        { 
            get { return this.senderId; } 
            internal set { this.senderId = value; }
        } 

        DateTime? sentTime = null;
        public DateTime? SentTime
        { 
            get { return this.sentTime; }
            internal set { this.sentTime = value; } 
        } 

        TimeSpan? timeToReachQueue = null; 
        public TimeSpan? TimeToReachQueue
        {
            get { return this.timeToReachQueue; }
            set 
            {
                ValidateTimeToReachQueue(value); 
                this.timeToReachQueue = value; 
            }
        } 

        internal void InternalSetTimeToReachQueue(TimeSpan timeout)
        {
            this.timeToReachQueue = timeout; 
        }
 
        static void ValidateMessagePriority(MessagePriority? priority) 
        {
            if (priority.HasValue && (priority.Value < MessagePriority.Lowest || priority.Value > MessagePriority.Highest)) 
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidEnumArgumentException("priority", (int)priority, typeof(MessagePriority)));
        }

        static void ValidateTimeToReachQueue(TimeSpan? timeout) 
        {
            if (timeout.HasValue && timeout.Value < TimeSpan.Zero) 
            { 
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", timeout,
                    SR.GetString(SR.SFxTimeoutOutOfRange0))); 
            }

            if (timeout.HasValue && TimeoutHelper.IsTooLarge(timeout.Value))
            { 
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", timeout,
                    SR.GetString(SR.SFxTimeoutOutOfRangeTooBig))); 
            } 

        } 
    }
}

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.


                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK