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
- QueryPageSettingsEventArgs.cs
- FilteredReadOnlyMetadataCollection.cs
- RemotingConfigParser.cs
- ProcessModuleCollection.cs
- DataGridRow.cs
- ImageAutomationPeer.cs
- RSAPKCS1SignatureFormatter.cs
- EventToken.cs
- UnaryOperationBinder.cs
- Point3D.cs
- SoapCodeExporter.cs
- ColorTranslator.cs
- StreamReader.cs
- SqlNotificationRequest.cs
- SpecialFolderEnumConverter.cs
- NameValueSectionHandler.cs
- InputMethodStateTypeInfo.cs
- SqlCachedBuffer.cs
- DataServiceRequest.cs
- LabelAutomationPeer.cs
- RectConverter.cs
- TypeLoadException.cs
- PolicyLevel.cs
- Image.cs
- DataGridComboBoxColumn.cs
- ListViewItemEventArgs.cs
- Point3DIndependentAnimationStorage.cs
- DynamicFilterExpression.cs
- FontNamesConverter.cs
- StreamReader.cs
- AutomationProperty.cs
- SByteStorage.cs
- SelectionBorderGlyph.cs
- UnionExpr.cs
- _SpnDictionary.cs
- FileLogRecordStream.cs
- ImageSourceValueSerializer.cs
- TcpTransportSecurityElement.cs
- ThreadStateException.cs
- CodeTryCatchFinallyStatement.cs
- GeneralTransform3DTo2DTo3D.cs
- COM2ICategorizePropertiesHandler.cs
- SessionStateContainer.cs
- ProfileService.cs
- XNodeNavigator.cs
- VersionedStreamOwner.cs
- GenericTextProperties.cs
- PointHitTestResult.cs
- WindowsBrush.cs
- TextShapeableCharacters.cs
- TextTreeRootTextBlock.cs
- DataGridViewControlCollection.cs
- WindowsScrollBar.cs
- SQLInt32Storage.cs
- ApplicationBuildProvider.cs
- TextTreeTextNode.cs
- SessionPageStateSection.cs
- CustomValidator.cs
- XmlWriterTraceListener.cs
- MobileErrorInfo.cs
- MemberRelationshipService.cs
- RtfToXamlReader.cs
- baseaxisquery.cs
- DesignerObject.cs
- BindingMemberInfo.cs
- Timer.cs
- IisTraceListener.cs
- QueryInterceptorAttribute.cs
- DataControlFieldsEditor.cs
- ServerIdentity.cs
- Normalization.cs
- WebEventCodes.cs
- ConditionalAttribute.cs
- NetStream.cs
- Shape.cs
- AssertHelper.cs
- ItemTypeToolStripMenuItem.cs
- IconBitmapDecoder.cs
- CheckBoxPopupAdapter.cs
- ReceiveMessageAndVerifySecurityAsyncResultBase.cs
- _HeaderInfoTable.cs
- followingquery.cs
- Query.cs
- COM2ExtendedUITypeEditor.cs
- TypefaceCollection.cs
- WrapPanel.cs
- Comparer.cs
- ConnectionAcceptor.cs
- HttpContextWrapper.cs
- PasswordTextContainer.cs
- InboundActivityHelper.cs
- BufferModeSettings.cs
- SqlServices.cs
- SchemeSettingElementCollection.cs
- InstalledVoice.cs
- RIPEMD160Managed.cs
- TagPrefixCollection.cs
- TemplateAction.cs
- BindingMemberInfo.cs
- FlowDocumentView.cs