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
- AssemblyAttributesGoHere.cs
- ElementMarkupObject.cs
- Misc.cs
- SvcMapFileLoader.cs
- ChannelServices.cs
- CodeComment.cs
- BaseCodeDomTreeGenerator.cs
- UpdateProgress.cs
- CompositionTarget.cs
- PlainXmlWriter.cs
- ButtonColumn.cs
- CodeDelegateCreateExpression.cs
- NavigatorInput.cs
- TextOutput.cs
- CommandEventArgs.cs
- PermissionAttributes.cs
- ScriptDescriptor.cs
- SerializationEventsCache.cs
- IncrementalReadDecoders.cs
- IQueryable.cs
- DeviceContexts.cs
- ConfigurationManagerHelper.cs
- WebPartHeaderCloseVerb.cs
- SqlServer2KCompatibilityAnnotation.cs
- bindurihelper.cs
- UnsafeNativeMethods.cs
- QueryOutputWriter.cs
- IsolatedStorageFilePermission.cs
- VSWCFServiceContractGenerator.cs
- LinearKeyFrames.cs
- ImportCatalogPart.cs
- SoundPlayer.cs
- XPathMultyIterator.cs
- BinaryParser.cs
- SystemWebSectionGroup.cs
- UdpUtility.cs
- GridViewRowPresenter.cs
- SqlComparer.cs
- DataPager.cs
- NotifyIcon.cs
- PropertyGrid.cs
- SHA384.cs
- InputBinding.cs
- XhtmlTextWriter.cs
- streamingZipPartStream.cs
- IBuiltInEvidence.cs
- Fx.cs
- TextEditorCharacters.cs
- TextServicesDisplayAttribute.cs
- ExtensionQuery.cs
- ExpressionBindingsDialog.cs
- MenuItemCollection.cs
- ConstraintEnumerator.cs
- Property.cs
- HelpInfo.cs
- QueryExecutionOption.cs
- xmlglyphRunInfo.cs
- AnimatedTypeHelpers.cs
- DesignerTransactionCloseEvent.cs
- IsolatedStorage.cs
- BindingContext.cs
- AvTraceDetails.cs
- SecurityManager.cs
- ClassHandlersStore.cs
- BamlBinaryWriter.cs
- MessageDecoder.cs
- EntityRecordInfo.cs
- Metafile.cs
- CalendarButton.cs
- DbSource.cs
- HexParser.cs
- ComponentEvent.cs
- StateMachineExecutionState.cs
- TextChangedEventArgs.cs
- FileDialog.cs
- ExceptionRoutedEventArgs.cs
- SqlRowUpdatedEvent.cs
- ContainerParagraph.cs
- RequestQueryParser.cs
- ImpersonationContext.cs
- NoResizeHandleGlyph.cs
- ObjectQueryState.cs
- CultureTable.cs
- DataServiceHostWrapper.cs
- ConvertEvent.cs
- ToolStripDropDownClosingEventArgs.cs
- ChannelBuilder.cs
- GAC.cs
- ContextMenu.cs
- RawUIStateInputReport.cs
- PtsContext.cs
- ThemeInfoAttribute.cs
- DesignerProperties.cs
- DataTableClearEvent.cs
- DataGridViewButtonCell.cs
- ErrorsHelper.cs
- WebPartDescription.cs
- URL.cs
- MaskDescriptors.cs
- ServiceDiscoveryElement.cs