|
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Channels
{
abstract class MsmqReceiveParameters
{
MsmqUri.IAddressTranslator addressTranslator;
bool durable;
bool exactlyOnce;
int maxRetryCycles;
ReceiveErrorHandling receiveErrorHandling;
int receiveRetryCount;
TimeSpan retryCycleDelay;
MsmqTransportSecurity transportSecurity;
MsmqReceiveContextSettings receiveContextSettings;
bool useMsmqTracing;
bool useSourceJournal;
internal MsmqReceiveParameters(MsmqBindingElementBase bindingElement)
: this(bindingElement, bindingElement.AddressTranslator)
{
}
internal MsmqReceiveParameters(MsmqBindingElementBase bindingElement, MsmqUri.IAddressTranslator addressTranslator)
{
this.addressTranslator = addressTranslator;
this.durable = bindingElement.Durable;
this.exactlyOnce = bindingElement.ExactlyOnce;
this.maxRetryCycles = bindingElement.MaxRetryCycles;
this.receiveErrorHandling = bindingElement.ReceiveErrorHandling;
this.receiveRetryCount = bindingElement.ReceiveRetryCount;
this.retryCycleDelay = bindingElement.RetryCycleDelay;
this.transportSecurity = new MsmqTransportSecurity(bindingElement.MsmqTransportSecurity);
this.useMsmqTracing = bindingElement.UseMsmqTracing;
this.useSourceJournal = bindingElement.UseSourceJournal;
this.receiveContextSettings = new MsmqReceiveContextSettings(bindingElement.ReceiveContextSettings);
}
internal MsmqReceiveContextSettings ReceiveContextSettings
{
get { return this.receiveContextSettings; }
}
internal MsmqUri.IAddressTranslator AddressTranslator
{
get { return this.addressTranslator; }
}
internal bool Durable
{
get { return this.durable; }
}
internal bool ExactlyOnce
{
get { return this.exactlyOnce; }
}
internal int ReceiveRetryCount
{
get { return this.receiveRetryCount; }
}
internal int MaxRetryCycles
{
get { return this.maxRetryCycles; }
}
internal ReceiveErrorHandling ReceiveErrorHandling
{
get { return this.receiveErrorHandling; }
}
internal TimeSpan RetryCycleDelay
{
get { return this.retryCycleDelay; }
}
internal MsmqTransportSecurity TransportSecurity
{
get { return this.transportSecurity; }
}
internal bool UseMsmqTracing
{
get { return this.useMsmqTracing; }
}
internal bool UseSourceJournal
{
get { return this.useSourceJournal; }
}
}
}
|