Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / ManagedLibraries / Remoting / Channels / IPC / IpcChannelHelper.cs / 1305376 / IpcChannelHelper.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== //========================================================================== // File: IpcChannelHelper.cs // Author: [....]@Microsoft.Com // Summary: Implements helper methods for Ipc client and server channels. // //========================================================================= using System; using System.IO; using System.Collections; using System.Runtime.Remoting.Channels; namespace System.Runtime.Remoting.Channels.Ipc { internal static class IpcChannelHelper { private const String _ipc = "ipc://"; // see if the string starts with "ipc://" internal static bool StartsWithIpc(String url) { return StringHelper.StartsWithAsciiIgnoreCasePrefixLower(url, _ipc); } // StartsWithIpc // Used by Ipc channels to implement IChannel::Parse. // It returns the channel uri and places object uri into out parameter. internal static String ParseURL(String url, out String objectURI) { if (url == null) throw new ArgumentNullException("url"); // Set the out parameters objectURI = null; int separator; // Find the starting point of ipc:// // NOTE: We are using this version of String.Compare to ensure // that string operations are case-insensitive!! if (StartsWithIpc(url)) { separator = _ipc.Length; } else { return null; } // find next slash (after end of scheme) separator = url.IndexOf('/', separator); if (-1 == separator) { return url; // means that the url is just "Ipc://foo" or something like that } // Extract the channel URI which is the prefix String channelURI = url.Substring(0, separator); // Extract the object URI which is the suffix objectURI = url.Substring(separator); // leave the slash return channelURI; } // ParseURL } // class IpcChannelHelper } // namespace System.Runtime.Remoting.Channels.Ipc // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== //========================================================================== // File: IpcChannelHelper.cs // Author: [....]@Microsoft.Com // Summary: Implements helper methods for Ipc client and server channels. // //========================================================================= using System; using System.IO; using System.Collections; using System.Runtime.Remoting.Channels; namespace System.Runtime.Remoting.Channels.Ipc { internal static class IpcChannelHelper { private const String _ipc = "ipc://"; // see if the string starts with "ipc://" internal static bool StartsWithIpc(String url) { return StringHelper.StartsWithAsciiIgnoreCasePrefixLower(url, _ipc); } // StartsWithIpc // Used by Ipc channels to implement IChannel::Parse. // It returns the channel uri and places object uri into out parameter. internal static String ParseURL(String url, out String objectURI) { if (url == null) throw new ArgumentNullException("url"); // Set the out parameters objectURI = null; int separator; // Find the starting point of ipc:// // NOTE: We are using this version of String.Compare to ensure // that string operations are case-insensitive!! if (StartsWithIpc(url)) { separator = _ipc.Length; } else { return null; } // find next slash (after end of scheme) separator = url.IndexOf('/', separator); if (-1 == separator) { return url; // means that the url is just "Ipc://foo" or something like that } // Extract the channel URI which is the prefix String channelURI = url.Substring(0, separator); // Extract the object URI which is the suffix objectURI = url.Substring(separator); // leave the slash return channelURI; } // ParseURL } // class IpcChannelHelper } // namespace System.Runtime.Remoting.Channels.Ipc // 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
- GeneralTransform3DTo2DTo3D.cs
- RC2CryptoServiceProvider.cs
- Point3DCollectionConverter.cs
- PageSettings.cs
- ProtectedConfigurationProviderCollection.cs
- DynamicHyperLink.cs
- SocketAddress.cs
- XmlAtomicValue.cs
- ProfilePropertyNameValidator.cs
- DBSqlParserColumnCollection.cs
- BinaryReader.cs
- Barrier.cs
- GradientBrush.cs
- ExpressionPrinter.cs
- SafeNativeMethods.cs
- MenuItem.cs
- InternalTransaction.cs
- DependencyPropertyChangedEventArgs.cs
- AlphaSortedEnumConverter.cs
- SapiRecoContext.cs
- Window.cs
- ButtonBaseAutomationPeer.cs
- ZipIOZip64EndOfCentralDirectoryLocatorBlock.cs
- CodeIterationStatement.cs
- IWorkflowDebuggerService.cs
- CodeAttachEventStatement.cs
- XmlILTrace.cs
- BindingSource.cs
- XmlSerializerFactory.cs
- TransformerInfoCollection.cs
- ToolStripContentPanelRenderEventArgs.cs
- ConnectionPool.cs
- WindowsComboBox.cs
- EmbeddedMailObject.cs
- _ProxyChain.cs
- PrimaryKeyTypeConverter.cs
- RSAProtectedConfigurationProvider.cs
- Border.cs
- EditBehavior.cs
- ElapsedEventArgs.cs
- TransportOutputChannel.cs
- OleDbSchemaGuid.cs
- BaseCAMarshaler.cs
- Error.cs
- AudioException.cs
- Scene3D.cs
- DbProviderManifest.cs
- TcpProcessProtocolHandler.cs
- FunctionQuery.cs
- ConfigXmlText.cs
- WriteTimeStream.cs
- DrawingContextDrawingContextWalker.cs
- CacheAxisQuery.cs
- GeneralTransform.cs
- ColorConvertedBitmap.cs
- XhtmlBasicPageAdapter.cs
- listitem.cs
- TemplatePartAttribute.cs
- Native.cs
- LogicalExpr.cs
- XmlDataSource.cs
- AppDomainProtocolHandler.cs
- CollectionBuilder.cs
- TextEndOfLine.cs
- PanelStyle.cs
- DependencyPropertyConverter.cs
- DockPanel.cs
- XmlSchemaComplexContentExtension.cs
- TextBox.cs
- SqlParameter.cs
- ClientSettingsStore.cs
- RegexCaptureCollection.cs
- WizardSideBarListControlItemEventArgs.cs
- DeleteIndexBinder.cs
- BaseCodeDomTreeGenerator.cs
- DeviceContext2.cs
- DesignerAttribute.cs
- XmlCDATASection.cs
- UnsafeNativeMethods.cs
- NamespaceEmitter.cs
- AlgoModule.cs
- UnmanagedMemoryStreamWrapper.cs
- PanelContainerDesigner.cs
- SqlExpander.cs
- HostedElements.cs
- HttpCookieCollection.cs
- NameValuePair.cs
- ActiveXSerializer.cs
- TdsEnums.cs
- ClientBuildManager.cs
- Variable.cs
- OSEnvironmentHelper.cs
- HttpCookie.cs
- BasicCellRelation.cs
- NumberFormatInfo.cs
- XmlStreamStore.cs
- _SslSessionsCache.cs
- ChildChangedEventArgs.cs
- RenderingEventArgs.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs