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
- EditingCommands.cs
- Facet.cs
- RectangleGeometry.cs
- WebServiceClientProxyGenerator.cs
- Token.cs
- TransactionFilter.cs
- TimeSpanOrInfiniteConverter.cs
- DiscoveryDocumentSearchPattern.cs
- Ref.cs
- MemberCollection.cs
- ContainerVisual.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- ScriptingJsonSerializationSection.cs
- BuildProvider.cs
- PKCS1MaskGenerationMethod.cs
- HttpPostedFileBase.cs
- DuplicateWaitObjectException.cs
- ScrollChrome.cs
- XmlWriterSettings.cs
- DocumentApplication.cs
- ContentElement.cs
- GridErrorDlg.cs
- InProcStateClientManager.cs
- RawStylusActions.cs
- TypeConverterHelper.cs
- OperatingSystem.cs
- ResourceManagerWrapper.cs
- SplashScreen.cs
- ClientBuildManager.cs
- Serializer.cs
- path.cs
- _Win32.cs
- CodeIdentifier.cs
- ListBoxItemWrapperAutomationPeer.cs
- unsafeIndexingFilterStream.cs
- TemplateApplicationHelper.cs
- CompensableActivity.cs
- WebServiceHost.cs
- Pens.cs
- IOThreadTimer.cs
- PeerContact.cs
- IssuedTokenClientBehaviorsElement.cs
- ObjectDataProvider.cs
- MouseBinding.cs
- BuildDependencySet.cs
- EntityDataSource.cs
- MostlySingletonList.cs
- DataMemberConverter.cs
- Calendar.cs
- PreviewPrintController.cs
- ArgumentNullException.cs
- HttpNamespaceReservationInstallComponent.cs
- PropertyPathWorker.cs
- SerializationException.cs
- DynamicHyperLink.cs
- StrokeNode.cs
- TargetControlTypeAttribute.cs
- FixedSOMPageElement.cs
- Encoding.cs
- ScriptMethodAttribute.cs
- NonVisualControlAttribute.cs
- XmlSchemaParticle.cs
- Models.cs
- ApplicationSettingsBase.cs
- TemplateDefinition.cs
- FileIOPermission.cs
- InnerItemCollectionView.cs
- RowBinding.cs
- ParallelTimeline.cs
- PermissionListSet.cs
- DirectoryInfo.cs
- BitmapDownload.cs
- XPathDocumentNavigator.cs
- Point3DCollection.cs
- GPPOINTF.cs
- ExpressionConverter.cs
- PointCollection.cs
- CodeCommentStatement.cs
- LinkUtilities.cs
- UserControlCodeDomTreeGenerator.cs
- Registry.cs
- CopyAction.cs
- GlyphCollection.cs
- WindowsListViewGroup.cs
- x509store.cs
- User.cs
- TextTreeUndo.cs
- ModelItemImpl.cs
- SByteStorage.cs
- WebMessageEncodingBindingElement.cs
- DocumentXmlWriter.cs
- _UncName.cs
- DbParameterCollectionHelper.cs
- TextTreeExtractElementUndoUnit.cs
- MiniModule.cs
- VectorCollection.cs
- TypedElement.cs
- ApplicationDirectoryMembershipCondition.cs
- SrgsElement.cs
- SafeNativeMethods.cs