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
- FileSecurity.cs
- BrushValueSerializer.cs
- ToolStripProgressBar.cs
- CapabilitiesState.cs
- SiteMapProvider.cs
- TableParagraph.cs
- SymmetricCryptoHandle.cs
- TopClause.cs
- TextChange.cs
- ImageInfo.cs
- CacheModeValueSerializer.cs
- QilIterator.cs
- TemplateApplicationHelper.cs
- EmptyControlCollection.cs
- BuiltInExpr.cs
- RowBinding.cs
- GlyphInfoList.cs
- WinEventWrap.cs
- ProviderConnectionPointCollection.cs
- BroadcastEventHelper.cs
- NumericPagerField.cs
- AdornerDecorator.cs
- FactoryMaker.cs
- SourceFilter.cs
- WebPartDeleteVerb.cs
- TitleStyle.cs
- GB18030Encoding.cs
- PolyBezierSegment.cs
- StylusCollection.cs
- OpacityConverter.cs
- Scheduling.cs
- MenuItem.cs
- ImageInfo.cs
- SerializerWriterEventHandlers.cs
- CompilerTypeWithParams.cs
- DbParameterCollection.cs
- TaskCanceledException.cs
- GradientStop.cs
- _TransmitFileOverlappedAsyncResult.cs
- HttpConfigurationSystem.cs
- Accessible.cs
- GlyphingCache.cs
- GenericIdentity.cs
- TextServicesCompartment.cs
- RIPEMD160.cs
- METAHEADER.cs
- DesignSurfaceServiceContainer.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- InteropAutomationProvider.cs
- LazyInitializer.cs
- ProfileService.cs
- PolicyAssertionCollection.cs
- TouchEventArgs.cs
- BitSet.cs
- Misc.cs
- WebPartConnectionsDisconnectVerb.cs
- DataBinding.cs
- EqualityComparer.cs
- Assembly.cs
- TextBlockAutomationPeer.cs
- ACL.cs
- ZipPackage.cs
- QilBinary.cs
- GregorianCalendarHelper.cs
- ClientEventManager.cs
- CommonRemoteMemoryBlock.cs
- SqlMetaData.cs
- TextRunProperties.cs
- ResourceSetExpression.cs
- CompiledIdentityConstraint.cs
- AnimationLayer.cs
- StateRuntime.cs
- MonitoringDescriptionAttribute.cs
- Int32Animation.cs
- BuiltInExpr.cs
- ConfigXmlDocument.cs
- WizardStepBase.cs
- WindowInteropHelper.cs
- MarshalByRefObject.cs
- SymbolType.cs
- DesignerSerializationManager.cs
- LateBoundBitmapDecoder.cs
- CollectionBuilder.cs
- _SslState.cs
- Validator.cs
- StackBuilderSink.cs
- FormViewUpdateEventArgs.cs
- ColorBlend.cs
- MasterPage.cs
- NetTcpSecurityElement.cs
- SubstitutionResponseElement.cs
- FixedTextPointer.cs
- LassoSelectionBehavior.cs
- MsdtcClusterUtils.cs
- ImageClickEventArgs.cs
- ArgumentDesigner.xaml.cs
- AnnotationDocumentPaginator.cs
- SecondaryIndexList.cs
- BStrWrapper.cs
- WindowsFormsSynchronizationContext.cs