Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Dispatcher / TerminatingOperationBehavior.cs / 1 / TerminatingOperationBehavior.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Dispatcher { using System.ServiceModel.Channels; internal class TerminatingOperationBehavior { static void AbortChannel(object state) { ((IChannel)state).Abort(); } public static TerminatingOperationBehavior CreateIfNecessary(DispatchRuntime dispatch) { if (IsTerminatingOperationBehaviorNeeded(dispatch)) { return new TerminatingOperationBehavior(); } else { return null; } } static bool IsTerminatingOperationBehaviorNeeded(DispatchRuntime dispatch) { for (int i = 0; i < dispatch.Operations.Count; i++) { DispatchOperation operation = dispatch.Operations[i]; if (operation.IsTerminating) { return true; } } return false; } internal void AfterReply(ref MessageRpc rpc) { if (rpc.Operation.IsTerminating && rpc.Channel.HasSession) { IOThreadTimer timer = new IOThreadTimer(TerminatingOperationBehavior.AbortChannel, rpc.Channel.Binder.Channel, false); timer.Set(rpc.Channel.CloseTimeout); } } internal static void AfterReply(ref ProxyRpc rpc) { if (rpc.Operation.IsTerminating && rpc.Channel.HasSession) { IChannel sessionChannel = rpc.Channel.Binder.Channel; rpc.Channel.Close(rpc.TimeoutHelper.RemainingTime()); } } } } // 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
- SqlComparer.cs
- FileDialog.cs
- DispatcherProcessingDisabled.cs
- SortableBindingList.cs
- SqlDataSourceEnumerator.cs
- PowerModeChangedEventArgs.cs
- SecurityUniqueId.cs
- LinearGradientBrush.cs
- DataView.cs
- AspNetSynchronizationContext.cs
- SqlTypeConverter.cs
- OutputBuffer.cs
- ProcessModelInfo.cs
- Converter.cs
- SqlUtils.cs
- TransformerTypeCollection.cs
- Bezier.cs
- UnauthorizedWebPart.cs
- RelatedImageListAttribute.cs
- BookmarkResumptionRecord.cs
- BoolLiteral.cs
- COM2ICategorizePropertiesHandler.cs
- ObjectAnimationBase.cs
- FormsAuthenticationModule.cs
- ExtenderProvidedPropertyAttribute.cs
- SecurityDocument.cs
- ManifestSignatureInformation.cs
- Repeater.cs
- AttachedAnnotationChangedEventArgs.cs
- GlyphRunDrawing.cs
- DataGridViewControlCollection.cs
- XmlIlVisitor.cs
- ValueSerializerAttribute.cs
- RTLAwareMessageBox.cs
- ColorBlend.cs
- WsatServiceAddress.cs
- ServicePointManagerElement.cs
- SoapSchemaExporter.cs
- AppliedDeviceFiltersDialog.cs
- ClickablePoint.cs
- ClientScriptItemCollection.cs
- ServicesUtilities.cs
- StringConcat.cs
- CannotUnloadAppDomainException.cs
- TypeUtil.cs
- NavigationPropertySingletonExpression.cs
- TemplateField.cs
- GenericAuthenticationEventArgs.cs
- MasterPageParser.cs
- WaitForChangedResult.cs
- TabControlEvent.cs
- storepermission.cs
- SessionMode.cs
- QuaternionKeyFrameCollection.cs
- TextEditorTables.cs
- SetIterators.cs
- CustomErrorCollection.cs
- CombinedGeometry.cs
- ReversePositionQuery.cs
- ReadOnlyDictionary.cs
- ProcessModelInfo.cs
- ManifestResourceInfo.cs
- ImageButton.cs
- WorkflowValidationFailedException.cs
- AsymmetricSecurityBindingElement.cs
- DataGridViewCellStateChangedEventArgs.cs
- DataGridViewSortCompareEventArgs.cs
- MissingMemberException.cs
- securestring.cs
- RegistryDataKey.cs
- SpecularMaterial.cs
- DataColumn.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- IdentifierCollection.cs
- PerformanceCounterPermissionEntry.cs
- PriorityQueue.cs
- ContextStaticAttribute.cs
- ParameterCollection.cs
- KeyInstance.cs
- UnicastIPAddressInformationCollection.cs
- OSFeature.cs
- CqlWriter.cs
- TableSectionStyle.cs
- COM2Properties.cs
- MatrixKeyFrameCollection.cs
- SqlTypesSchemaImporter.cs
- ConfigurationErrorsException.cs
- NonVisualControlAttribute.cs
- nulltextnavigator.cs
- MailBnfHelper.cs
- DefaultPrintController.cs
- XsdValidatingReader.cs
- WebPartVerb.cs
- SqlRewriteScalarSubqueries.cs
- StringPropertyBuilder.cs
- __ConsoleStream.cs
- TextFormatterImp.cs
- RegistryKey.cs
- RelativeSource.cs
- Operators.cs