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
- AmbiguousMatchException.cs
- CompoundFileReference.cs
- PropertyGridEditorPart.cs
- ValidationPropertyAttribute.cs
- SourceSwitch.cs
- CultureTable.cs
- DefaultIfEmptyQueryOperator.cs
- WebSysDefaultValueAttribute.cs
- DefaultValidator.cs
- RepeatBehavior.cs
- InvalidPrinterException.cs
- WebMessageEncodingBindingElement.cs
- SiteMapHierarchicalDataSourceView.cs
- OutputCacheSection.cs
- MetafileHeader.cs
- SQLBinaryStorage.cs
- Point3DKeyFrameCollection.cs
- X509Extension.cs
- DataColumnMapping.cs
- ReferenceEqualityComparer.cs
- WriteTimeStream.cs
- MatrixCamera.cs
- SurrogateChar.cs
- DockingAttribute.cs
- MailSettingsSection.cs
- ScrollChrome.cs
- TextTabProperties.cs
- CounterSampleCalculator.cs
- SqlBulkCopyColumnMapping.cs
- ChildrenQuery.cs
- GatewayIPAddressInformationCollection.cs
- HttpClientCertificate.cs
- SharedPersonalizationStateInfo.cs
- ProcessProtocolHandler.cs
- AssemblyUtil.cs
- BitmapFrameEncode.cs
- Point3DCollectionValueSerializer.cs
- FixedTextSelectionProcessor.cs
- MulticastNotSupportedException.cs
- WebPartDescriptionCollection.cs
- QuadraticBezierSegment.cs
- _SingleItemRequestCache.cs
- State.cs
- XmlSchemaImporter.cs
- CommandHelper.cs
- XmlWellformedWriterHelpers.cs
- ScrollChangedEventArgs.cs
- HttpHandlerAction.cs
- SerialErrors.cs
- PropertyFilterAttribute.cs
- Decoder.cs
- ArrayMergeHelper.cs
- RunClient.cs
- HttpCachePolicyWrapper.cs
- SchemaImporterExtensionsSection.cs
- Currency.cs
- RulePatternOps.cs
- UrlRoutingHandler.cs
- IssuedSecurityTokenParameters.cs
- NavigationWindow.cs
- CodeSnippetExpression.cs
- TypographyProperties.cs
- EqualityArray.cs
- SerializationHelper.cs
- ObjectStateEntryDbDataRecord.cs
- IBuiltInEvidence.cs
- FixedTextSelectionProcessor.cs
- _NtlmClient.cs
- DataQuery.cs
- NamespaceDisplayAutomationPeer.cs
- SamlConditions.cs
- DataSourceHelper.cs
- BitmapImage.cs
- ISAPIWorkerRequest.cs
- GridItemCollection.cs
- Rect3DValueSerializer.cs
- TableLayoutSettingsTypeConverter.cs
- TypeDescriptionProvider.cs
- FlowDecisionDesigner.xaml.cs
- TextSpan.cs
- CompressionTransform.cs
- GridViewUpdateEventArgs.cs
- HttpWebRequestElement.cs
- CodeAttributeDeclarationCollection.cs
- ReadWriteObjectLock.cs
- ProviderCommandInfoUtils.cs
- WindowsFont.cs
- MappingSource.cs
- EventProviderClassic.cs
- MemberDescriptor.cs
- MessagePropertyAttribute.cs
- InstanceLockTracking.cs
- PropertyEmitter.cs
- AuthenticationSection.cs
- HostVisual.cs
- PageHandlerFactory.cs
- ReachDocumentSequenceSerializer.cs
- TreeWalkHelper.cs
- ObjectItemConventionAssemblyLoader.cs
- ZipPackagePart.cs