| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- //------------------------------------------------------------
- // Copyright (c) Microsoft Corporation. All rights reserved.
- //------------------------------------------------------------
- namespace System.ServiceModel.Description
- {
- using System.ServiceModel;
- using System.ServiceModel.Dispatcher;
- using System.ServiceModel.Channels;
- public class DispatcherSynchronizationBehavior : IEndpointBehavior
- {
- public DispatcherSynchronizationBehavior() :
- this(false, MultipleReceiveBinder.MultipleReceiveDefaults.MaxPendingReceives)
- {
- }
- public DispatcherSynchronizationBehavior(bool asynchronousSendEnabled, int maxPendingReceives)
- {
- this.AsynchronousSendEnabled = asynchronousSendEnabled;
- this.MaxPendingReceives = maxPendingReceives;
- }
- public bool AsynchronousSendEnabled
- {
- get;
- set;
- }
- public int MaxPendingReceives
- {
- get;
- set;
- }
- void IEndpointBehavior.Validate(ServiceEndpoint serviceEndpoint)
- {
- }
- void IEndpointBehavior.AddBindingParameters(ServiceEndpoint serviceEndpoint, BindingParameterCollection parameters)
- {
- }
- void IEndpointBehavior.ApplyDispatchBehavior(ServiceEndpoint serviceEndpoint, EndpointDispatcher endpointDispatcher)
- {
- if (endpointDispatcher == null)
- {
- throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("endpointDispatcher");
- }
- endpointDispatcher.ChannelDispatcher.SendAsynchronously = this.AsynchronousSendEnabled;
- endpointDispatcher.ChannelDispatcher.MaxPendingReceives = this.MaxPendingReceives;
- }
- void IEndpointBehavior.ApplyClientBehavior(ServiceEndpoint serviceEndpoint, ClientRuntime behavior)
- {
- }
- }
- }
|