diff options
Diffstat (limited to 'mcs/class/System.ServiceModel/System.ServiceModel/ServiceRuntimeChannel.cs')
-rw-r--r-- | mcs/class/System.ServiceModel/System.ServiceModel/ServiceRuntimeChannel.cs | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel/ServiceRuntimeChannel.cs b/mcs/class/System.ServiceModel/System.ServiceModel/ServiceRuntimeChannel.cs index 99b5f9740e4..1cf72776b87 100644 --- a/mcs/class/System.ServiceModel/System.ServiceModel/ServiceRuntimeChannel.cs +++ b/mcs/class/System.ServiceModel/System.ServiceModel/ServiceRuntimeChannel.cs @@ -48,6 +48,16 @@ namespace System.ServiceModel ClientRuntimeChannel client; + public override bool AllowOutputBatching { + get { return client.AllowOutputBatching; } + set { client.AllowOutputBatching = value; } + } + + public virtual TimeSpan OperationTimeout { + get { return client.OperationTimeout; } + set { client.OperationTimeout = value; } + } + public bool AutomaticInputSessionShutdown { get { throw new NotImplementedException (); } set { throw new NotImplementedException (); } @@ -95,21 +105,19 @@ namespace System.ServiceModel internal class ServiceRuntimeChannel : CommunicationObject, IServiceChannel { IExtensionCollection<IContextChannel> extensions; - readonly IChannel channel; - readonly TimeSpan _openTimeout; - readonly TimeSpan _closeTimeout; + readonly IChannel channel; + readonly DispatchRuntime runtime; public ServiceRuntimeChannel (IChannel channel, DispatchRuntime runtime) { this.channel = channel; - this._openTimeout = runtime.ChannelDispatcher.DefaultOpenTimeout; - this._closeTimeout = runtime.ChannelDispatcher.DefaultCloseTimeout; + this.runtime = runtime; } #region IContextChannel [MonoTODO] - public bool AllowOutputBatching { get; set; } + public virtual bool AllowOutputBatching { get; set; } public IInputSession InputSession { get { @@ -132,7 +140,7 @@ namespace System.ServiceModel } [MonoTODO] - public TimeSpan OperationTimeout { get; set; } + public virtual TimeSpan OperationTimeout { get; set; } public IOutputSession OutputSession { get { @@ -157,11 +165,11 @@ namespace System.ServiceModel // CommunicationObject protected internal override TimeSpan DefaultOpenTimeout { - get { return _openTimeout; } + get { return runtime.ChannelDispatcher.DefaultOpenTimeout; } } protected internal override TimeSpan DefaultCloseTimeout { - get { return _closeTimeout; } + get { return runtime.ChannelDispatcher.DefaultCloseTimeout; } } protected override void OnAbort () @@ -217,7 +225,7 @@ namespace System.ServiceModel } public Uri ListenUri { - get { throw new NotImplementedException (); } + get { return runtime.ChannelDispatcher.Listener.Uri; } } #region IDisposable Members |