Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / PeerInputChannelListener.cs / 1 / PeerInputChannelListener.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Channels { using System.Collections.Generic; using System.ServiceModel; using System.Diagnostics; using System.Threading; using System.ServiceModel.Diagnostics; sealed class PeerInputChannelAcceptor : SingletonChannelAcceptor{ PeerNodeImplementation peerNode; PeerNodeImplementation.Registration registration; EndpointAddress localAddress; Uri via; PeerMessageDispatcher dispatcher = null; public PeerInputChannelAcceptor(PeerNodeImplementation peerNode, PeerNodeImplementation.Registration registration, ChannelManagerBase channelManager, EndpointAddress localAddress, Uri via) : base(channelManager) { this.registration = registration; this.peerNode = peerNode; this.localAddress = localAddress; this.via = via; PeerMessageDispatcher .PeerMessageQueueAdapter queueHandler = new PeerMessageDispatcher .PeerMessageQueueAdapter(this); dispatcher = new PeerMessageDispatcher (queueHandler, peerNode, ChannelManager, localAddress, via); } protected override PeerInputChannel OnCreateChannel() { return new PeerInputChannel(peerNode, registration, ChannelManager, localAddress, via); } protected override void OnTraceMessageReceived(Message message) { if (DiagnosticUtility.ShouldTraceInformation) { TraceUtility.TraceEvent(TraceEventType.Information, TraceCode.MessageReceived, MessageTransmitTraceRecord.CreateReceiveTraceRecord(message), this, null); } } protected override void OnClose(TimeSpan timeout) { } protected override void OnClosing() { CloseDispatcher(); base.OnClosing(); } protected override void OnFaulted() { CloseDispatcher(); base.OnFaulted(); } void CloseDispatcher() { if(dispatcher != null) { dispatcher.Unregister(true); dispatcher = null; } } } sealed class PeerInputChannelListener : PeerChannelListener { PeerInputChannelAcceptor inputAcceptor; public PeerInputChannelListener(PeerTransportBindingElement bindingElement, BindingContext context, PeerResolver peerResolver) : base(bindingElement, context, peerResolver) { } protected override PeerInputChannelAcceptor ChannelAcceptor { get { return this.inputAcceptor; } } protected override void CreateAcceptor() { this.inputAcceptor = new PeerInputChannelAcceptor(this.InnerNode, this.Registration, this, new EndpointAddress(this.Uri), this.Uri); } } } // 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
- AdRotator.cs
- PolicyStatement.cs
- DSASignatureFormatter.cs
- login.cs
- ClientUrlResolverWrapper.cs
- WebPartsPersonalizationAuthorization.cs
- IFlowDocumentViewer.cs
- SslStream.cs
- ValidatedControlConverter.cs
- ErrorFormatter.cs
- SystemFonts.cs
- DataGridCellsPresenter.cs
- DbConnectionOptions.cs
- EntityCollectionChangedParams.cs
- ipaddressinformationcollection.cs
- PeerObject.cs
- XPathNodeHelper.cs
- CodeMethodReturnStatement.cs
- XslException.cs
- PresentationSource.cs
- WindowsGraphicsCacheManager.cs
- ApplicationInfo.cs
- EntityExpressionVisitor.cs
- SerializationInfo.cs
- Visual.cs
- SqlTypesSchemaImporter.cs
- configsystem.cs
- PageBreakRecord.cs
- Setter.cs
- XmlNamespaceMapping.cs
- RuntimeComponentFilter.cs
- FloaterBaseParaClient.cs
- TemplateControlCodeDomTreeGenerator.cs
- TextEditorCharacters.cs
- BamlResourceDeserializer.cs
- MobileCategoryAttribute.cs
- odbcmetadatacolumnnames.cs
- PerformanceCounter.cs
- ComponentResourceManager.cs
- Grant.cs
- RotateTransform.cs
- SessionStateUtil.cs
- XamlFilter.cs
- RolePrincipal.cs
- DefaultPrintController.cs
- GraphicsContext.cs
- ConfigXmlComment.cs
- ArrayHelper.cs
- XmlSchemaComplexType.cs
- MulticastIPAddressInformationCollection.cs
- CFGGrammar.cs
- Rectangle.cs
- XPathChildIterator.cs
- LassoSelectionBehavior.cs
- FixedMaxHeap.cs
- AttributeData.cs
- MatrixCamera.cs
- ScopeElement.cs
- XmlDeclaration.cs
- SafeFileHandle.cs
- CompilerInfo.cs
- PeerNearMe.cs
- ReadOnlyHierarchicalDataSourceView.cs
- serverconfig.cs
- SqlDataSourceCache.cs
- ExeConfigurationFileMap.cs
- TemplateNameScope.cs
- XmlValidatingReaderImpl.cs
- ProjectionPruner.cs
- XmlUtf8RawTextWriter.cs
- RegexInterpreter.cs
- CompareValidator.cs
- SrgsToken.cs
- EntityProviderServices.cs
- OneOfConst.cs
- DbReferenceCollection.cs
- SelectionItemProviderWrapper.cs
- QueryAccessibilityHelpEvent.cs
- ForAllOperator.cs
- _CacheStreams.cs
- TypeDependencyAttribute.cs
- IisNotInstalledException.cs
- ObjectStateManagerMetadata.cs
- DataControlFieldTypeEditor.cs
- ChameleonKey.cs
- InputLanguageProfileNotifySink.cs
- LogConverter.cs
- UInt32Storage.cs
- TypedDataSourceCodeGenerator.cs
- GlobalizationSection.cs
- ProfilePropertySettingsCollection.cs
- CalendarDayButton.cs
- PropertyEntry.cs
- ServiceElementCollection.cs
- ActivityWithResultValueSerializer.cs
- XmlSchemaExporter.cs
- ThicknessAnimationBase.cs
- GridViewSortEventArgs.cs
- Axis.cs
- DataGridBoundColumn.cs