Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / InputQueueChannelAcceptor.cs / 1 / InputQueueChannelAcceptor.cs
//---------------------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------------------- namespace System.ServiceModel.Channels { class InputQueueChannelAcceptor: ChannelAcceptor where TChannel : class, IChannel { InputQueue channelQueue; public InputQueueChannelAcceptor(ChannelManagerBase channelManager) : base(channelManager) { this.channelQueue = new InputQueue (); } public int PendingCount { get { return this.channelQueue.PendingCount; } } public override TChannel AcceptChannel(TimeSpan timeout) { this.ThrowIfNotOpened(); return this.channelQueue.Dequeue(timeout); } public override IAsyncResult BeginAcceptChannel(TimeSpan timeout, AsyncCallback callback, object state) { this.ThrowIfNotOpened(); return this.channelQueue.BeginDequeue(timeout, callback, state); } public void Dispatch() { this.channelQueue.Dispatch(); } public override TChannel EndAcceptChannel(IAsyncResult result) { return this.channelQueue.EndDequeue(result); } public void EnqueueAndDispatch(TChannel channel) { this.channelQueue.EnqueueAndDispatch(channel); } public void EnqueueAndDispatch(TChannel channel, ItemDequeuedCallback dequeuedCallback) { this.channelQueue.EnqueueAndDispatch(channel, dequeuedCallback); } public bool EnqueueWithoutDispatch(TChannel channel, ItemDequeuedCallback dequeuedCallback) { return this.channelQueue.EnqueueWithoutDispatch(channel, dequeuedCallback); } public virtual bool EnqueueWithoutDispatch(Exception exception, ItemDequeuedCallback dequeuedCallback) { return this.channelQueue.EnqueueWithoutDispatch(exception, dequeuedCallback); } public void EnqueueAndDispatch(TChannel channel, ItemDequeuedCallback dequeuedCallback, bool canDispatchOnThisThread) { this.channelQueue.EnqueueAndDispatch(channel, dequeuedCallback, canDispatchOnThisThread); } public virtual void EnqueueAndDispatch(Exception exception, ItemDequeuedCallback dequeuedCallback, bool canDispatchOnThisThread) { this.channelQueue.EnqueueAndDispatch(exception, dequeuedCallback, canDispatchOnThisThread); } public void FaultQueue() { this.Fault(); } protected override void OnClosed() { base.OnClosed(); this.channelQueue.Dispose(); } protected override void OnFaulted() { this.channelQueue.Shutdown(this.ChannelManager); base.OnFaulted(); } public override bool WaitForChannel(TimeSpan timeout) { this.ThrowIfNotOpened(); return this.channelQueue.WaitForItem(timeout); } public override IAsyncResult BeginWaitForChannel(TimeSpan timeout, AsyncCallback callback, object state) { this.ThrowIfNotOpened(); return this.channelQueue.BeginWaitForItem(timeout, callback, state); } public override bool EndWaitForChannel(IAsyncResult result) { return this.channelQueue.EndWaitForItem(result); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ToolBarButton.cs
- BufferedGraphicsContext.cs
- DetailsViewRowCollection.cs
- NumberAction.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- LicenseException.cs
- ListenerAdaptersInstallComponent.cs
- XmlRootAttribute.cs
- NamespaceCollection.cs
- RightsManagementPermission.cs
- SchemaEntity.cs
- ObjectItemNoOpAssemblyLoader.cs
- WebPartTransformer.cs
- MediaCommands.cs
- QilXmlReader.cs
- GeneralTransform2DTo3D.cs
- Label.cs
- DrawingGroup.cs
- MatrixTransform.cs
- followingsibling.cs
- EqualityArray.cs
- ASCIIEncoding.cs
- WindowsAuthenticationModule.cs
- DataBindingExpressionBuilder.cs
- ToolStripItemBehavior.cs
- OdbcParameter.cs
- ProvidePropertyAttribute.cs
- ImmutableAssemblyCacheEntry.cs
- CapabilitiesRule.cs
- CompModSwitches.cs
- CacheMode.cs
- DrawListViewSubItemEventArgs.cs
- TreeSet.cs
- Model3D.cs
- RegistryPermission.cs
- ColumnCollection.cs
- CustomCredentialPolicy.cs
- SystemNetworkInterface.cs
- XPathNodeHelper.cs
- InternalControlCollection.cs
- Propagator.cs
- HyperLinkField.cs
- XmlSchemaSequence.cs
- keycontainerpermission.cs
- TabletCollection.cs
- XmlWriterSettings.cs
- ResourceReferenceKeyNotFoundException.cs
- Repeater.cs
- GridErrorDlg.cs
- Slider.cs
- GridItemCollection.cs
- Dispatcher.cs
- RepeatInfo.cs
- SafeSecurityHandles.cs
- WebPartConnectionsCloseVerb.cs
- ExitEventArgs.cs
- ClientScriptManager.cs
- DocumentPaginator.cs
- FontClient.cs
- WhiteSpaceTrimStringConverter.cs
- ItemAutomationPeer.cs
- OpCodes.cs
- StylusCollection.cs
- TypedAsyncResult.cs
- TextHidden.cs
- XmlElementAttributes.cs
- DefaultObjectMappingItemCollection.cs
- ServiceXNameTypeConverter.cs
- SQLInt16Storage.cs
- Point.cs
- EventLogPropertySelector.cs
- VisualBrush.cs
- ObjectToIdCache.cs
- HttpCookiesSection.cs
- EnumDataContract.cs
- StorageSetMapping.cs
- webproxy.cs
- SoapServerMessage.cs
- DoubleAnimation.cs
- HashAlgorithm.cs
- DbDataAdapter.cs
- StylusPointPropertyId.cs
- PrimitiveList.cs
- XmlObjectSerializer.cs
- SocketManager.cs
- WindowsTab.cs
- InheritablePropertyChangeInfo.cs
- TypefaceMetricsCache.cs
- PreviewPrintController.cs
- UTF32Encoding.cs
- TextEndOfSegment.cs
- CLRBindingWorker.cs
- FileFormatException.cs
- EditorPartCollection.cs
- MetafileHeader.cs
- LayoutTable.cs
- AdapterDictionary.cs
- SByte.cs
- autovalidator.cs
- BStrWrapper.cs