Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Net / System / Net / TransportContext.cs / 1 / 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. //------------------------------------------------------------------------------ //// 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
- DSACryptoServiceProvider.cs
- EpmSyndicationContentSerializer.cs
- XNodeValidator.cs
- TreeViewAutomationPeer.cs
- HtmlPhoneCallAdapter.cs
- DbParameterHelper.cs
- DependencyPropertyHelper.cs
- CloudCollection.cs
- SchemaCollectionPreprocessor.cs
- SqlCacheDependencyDatabaseCollection.cs
- CodeDomLocalizationProvider.cs
- CompiledRegexRunner.cs
- FormatVersion.cs
- NativeMethods.cs
- AssemblyBuilder.cs
- XmlImplementation.cs
- GenericParameterDataContract.cs
- SecurityTokenRequirement.cs
- DesignSurface.cs
- SQLInt32Storage.cs
- SapiRecoInterop.cs
- XPathSingletonIterator.cs
- PropertyInfoSet.cs
- PresentationAppDomainManager.cs
- XmlSchemaSimpleTypeList.cs
- DataStreamFromComStream.cs
- RecipientInfo.cs
- Configuration.cs
- Stack.cs
- DataServiceHostFactory.cs
- XamlTemplateSerializer.cs
- XmlWhitespace.cs
- GlyphElement.cs
- Drawing.cs
- TimelineGroup.cs
- PackUriHelper.cs
- ThumbAutomationPeer.cs
- WindowsUpDown.cs
- PasswordTextNavigator.cs
- XmlDomTextWriter.cs
- SingleSelectRootGridEntry.cs
- OutputCache.cs
- InvalidEnumArgumentException.cs
- SafeUserTokenHandle.cs
- WebPartManagerInternals.cs
- RandomDelayQueuedSendsAsyncResult.cs
- SourceElementsCollection.cs
- returneventsaver.cs
- ServiceBusyException.cs
- CodeDirectoryCompiler.cs
- DrawingGroup.cs
- OracleConnectionString.cs
- SimpleMailWebEventProvider.cs
- StringUtil.cs
- _SslSessionsCache.cs
- RectIndependentAnimationStorage.cs
- PeerConnector.cs
- FreezableDefaultValueFactory.cs
- Number.cs
- User.cs
- OdbcTransaction.cs
- TextTreeFixupNode.cs
- GrammarBuilder.cs
- Util.cs
- FieldAccessException.cs
- TabControlEvent.cs
- OracleSqlParser.cs
- HttpRequest.cs
- AutomationPatternInfo.cs
- DataViewSetting.cs
- Process.cs
- WebPartTransformerAttribute.cs
- DesignerProperties.cs
- TableLayoutRowStyleCollection.cs
- TemplateBindingExtensionConverter.cs
- XmlNodeChangedEventManager.cs
- ImageMapEventArgs.cs
- ChannelOptions.cs
- XmlSchemaAttributeGroup.cs
- Latin1Encoding.cs
- TextCompositionManager.cs
- DbProviderFactories.cs
- DebuggerAttributes.cs
- Rijndael.cs
- XamlBrushSerializer.cs
- FindCompletedEventArgs.cs
- FileChangesMonitor.cs
- DataGridViewRowPrePaintEventArgs.cs
- CalendarDateChangedEventArgs.cs
- SqlDataAdapter.cs
- HttpFileCollection.cs
- IImplicitResourceProvider.cs
- Compiler.cs
- ObjectQueryState.cs
- WebBrowserNavigatedEventHandler.cs
- Menu.cs
- SvcMapFile.cs
- TypeConverter.cs
- MissingManifestResourceException.cs
- CodeCompiler.cs