Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / TransportContext.cs / 1305376 / TransportContext.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System.Net.Security; using System.Security.Authentication.ExtendedProtection; namespace System.Net { public abstract class TransportContext { public abstract ChannelBinding GetChannelBinding(ChannelBindingKind kind); } internal class ConnectStreamContext : TransportContext { internal ConnectStreamContext(ConnectStream connectStream) { GlobalLog.Assert(connectStream != null, "ConnectStreamContext..ctor(): Not expecting a null connectStream!"); this.connectStream = connectStream; } public override ChannelBinding GetChannelBinding(ChannelBindingKind kind) { return connectStream.GetChannelBinding(kind); } private ConnectStream connectStream; } internal class SslStreamContext : TransportContext { internal SslStreamContext(SslStream sslStream) { GlobalLog.Assert(sslStream != null, "SslStreamContext..ctor(): Not expecting a null sslStream!"); this.sslStream = sslStream; } public override ChannelBinding GetChannelBinding(ChannelBindingKind kind) { return sslStream.GetChannelBinding(kind); } private SslStream sslStream; } internal class HttpListenerRequestContext : TransportContext { internal HttpListenerRequestContext(HttpListenerRequest request) { GlobalLog.Assert(request != null, "HttpListenerRequestContext..ctor(): Not expecting a null request!"); this.request = request; } public override ChannelBinding GetChannelBinding(ChannelBindingKind kind) { if (kind != ChannelBindingKind.Endpoint) { throw new NotSupportedException(SR.GetString( SR.net_listener_invalid_cbt_type, kind.ToString())); } return request.GetChannelBinding(); } private HttpListenerRequest request; } // Holds a cached Endpoint binding to be reused by HttpWebRequest preauthentication internal class CachedTransportContext : TransportContext { internal CachedTransportContext(ChannelBinding binding) { this.binding = binding; } public override ChannelBinding GetChannelBinding(ChannelBindingKind kind) { if (kind != ChannelBindingKind.Endpoint) return null; return binding; } private ChannelBinding binding; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MatrixCamera.cs
- SoapCodeExporter.cs
- VirtualPathProvider.cs
- FixedFindEngine.cs
- IntranetCredentialPolicy.cs
- ImageMap.cs
- TagPrefixCollection.cs
- ForEachAction.cs
- SimpleHandlerFactory.cs
- TextEditorCharacters.cs
- ObjectListFieldCollection.cs
- DataGridViewCellCollection.cs
- MbpInfo.cs
- TiffBitmapEncoder.cs
- CacheOutputQuery.cs
- DesignerWithHeader.cs
- SimpleHandlerFactory.cs
- ColumnMapTranslator.cs
- PersonalizableTypeEntry.cs
- Relationship.cs
- HandlerFactoryCache.cs
- UnicodeEncoding.cs
- StylusButtonCollection.cs
- SecUtil.cs
- QilName.cs
- SystemIPInterfaceProperties.cs
- BitmapEffect.cs
- ToolStripItemGlyph.cs
- precedingquery.cs
- TextBoxDesigner.cs
- QuadTree.cs
- Trace.cs
- TextDecorationCollectionConverter.cs
- EntityTypeBase.cs
- PageAsyncTaskManager.cs
- FrameSecurityDescriptor.cs
- MouseBinding.cs
- UserPersonalizationStateInfo.cs
- ChtmlTextWriter.cs
- __Error.cs
- AlphaSortedEnumConverter.cs
- categoryentry.cs
- SaveFileDialog.cs
- CodeVariableReferenceExpression.cs
- RequestCacheValidator.cs
- FileUtil.cs
- JsonWriter.cs
- MetadataArtifactLoaderCompositeFile.cs
- CodeThrowExceptionStatement.cs
- TreeNodeStyle.cs
- MouseEventArgs.cs
- HtmlContainerControl.cs
- Imaging.cs
- HttpListenerRequest.cs
- SharedUtils.cs
- TemplateEditingService.cs
- GeometryCollection.cs
- HttpRequest.cs
- ImageBrush.cs
- ToolStripTemplateNode.cs
- FunctionMappingTranslator.cs
- FixedSOMTable.cs
- Rotation3DAnimationBase.cs
- DefaultHttpHandler.cs
- EntityDataSourceEntityTypeFilterConverter.cs
- SignatureHelper.cs
- RoleService.cs
- SerializationInfoEnumerator.cs
- dataSvcMapFileLoader.cs
- CorrelationValidator.cs
- PKCS1MaskGenerationMethod.cs
- PropertyGridEditorPart.cs
- WeakEventTable.cs
- ResourceWriter.cs
- ObjectDataSourceChooseTypePanel.cs
- NativeMethods.cs
- StringUtil.cs
- DecimalConverter.cs
- InstanceStore.cs
- EditingCoordinator.cs
- DesignerActionVerbList.cs
- Polyline.cs
- DashStyle.cs
- OutputScopeManager.cs
- SafeThreadHandle.cs
- ObjectCache.cs
- WhiteSpaceTrimStringConverter.cs
- PageEventArgs.cs
- WebPartZoneCollection.cs
- DesignBindingPicker.cs
- EntityDataSourceConfigureObjectContext.cs
- DynamicDataRoute.cs
- DataQuery.cs
- Evidence.cs
- basevalidator.cs
- CanExecuteRoutedEventArgs.cs
- WindowsScrollBar.cs
- SimpleApplicationHost.cs
- EntityDataSourceChangedEventArgs.cs
- DataGridViewAccessibleObject.cs