Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / clr / src / BCL / System / Runtime / Remoting / URLAttribute.cs / 1 / URLAttribute.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** File: UrlAttribute.cs ** **Author: Tarun Anand ([....]) ** ** Purpose: Defines an attribute which can be used at the callsite to ** specify the URL at which the activation will happen. ** ** Date: [....] 30, 2000 ** ===========================================================*/ namespace System.Runtime.Remoting.Activation { using System.Runtime.Remoting; using System.Runtime.Remoting.Contexts; using System.Runtime.Remoting.Messaging; using System.Security.Permissions; using System; [Serializable] [System.Runtime.InteropServices.ComVisible(true)] public sealed class UrlAttribute : ContextAttribute { private String url; private static String propertyName = "UrlAttribute"; [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.Infrastructure)] public UrlAttribute(String callsiteURL) :base(propertyName) { if(null == callsiteURL) { // Invalid arg throw new ArgumentNullException("callsiteURL"); } url = callsiteURL; } // Review: This should be fixed. #pragma warning disable 688 // link demand on override // Object::Equals // Override the default implementation which just compares the names public override bool Equals(Object o) { return (o is IContextProperty) && (o is UrlAttribute) && (((UrlAttribute)o).UrlValue.Equals(url)); } public override int GetHashCode() { return this.url.GetHashCode(); } #pragma warning disable // Override ContextAttribute's implementation of IContextAttribute::IsContextOK [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.Infrastructure)] [System.Runtime.InteropServices.ComVisible(true)] public override bool IsContextOK(Context ctx, IConstructionCallMessage msg) { return false; } // Override ContextAttribute's impl. of IContextAttribute::GetPropForNewCtx [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.Infrastructure)] [System.Runtime.InteropServices.ComVisible(true)] public override void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg) { // We are not interested in contributing any properties to the // new context since the only purpose of this property is to force // the creation of the context and the server object inside it at // the specified URL. return; } public String UrlValue { [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.Infrastructure)] get { return url; } } } } // namespace // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** File: UrlAttribute.cs ** **Author: Tarun Anand ([....]) ** ** Purpose: Defines an attribute which can be used at the callsite to ** specify the URL at which the activation will happen. ** ** Date: [....] 30, 2000 ** ===========================================================*/ namespace System.Runtime.Remoting.Activation { using System.Runtime.Remoting; using System.Runtime.Remoting.Contexts; using System.Runtime.Remoting.Messaging; using System.Security.Permissions; using System; [Serializable] [System.Runtime.InteropServices.ComVisible(true)] public sealed class UrlAttribute : ContextAttribute { private String url; private static String propertyName = "UrlAttribute"; [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.Infrastructure)] public UrlAttribute(String callsiteURL) :base(propertyName) { if(null == callsiteURL) { // Invalid arg throw new ArgumentNullException("callsiteURL"); } url = callsiteURL; } // Review: This should be fixed. #pragma warning disable 688 // link demand on override // Object::Equals // Override the default implementation which just compares the names public override bool Equals(Object o) { return (o is IContextProperty) && (o is UrlAttribute) && (((UrlAttribute)o).UrlValue.Equals(url)); } public override int GetHashCode() { return this.url.GetHashCode(); } #pragma warning disable // Override ContextAttribute's implementation of IContextAttribute::IsContextOK [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.Infrastructure)] [System.Runtime.InteropServices.ComVisible(true)] public override bool IsContextOK(Context ctx, IConstructionCallMessage msg) { return false; } // Override ContextAttribute's impl. of IContextAttribute::GetPropForNewCtx [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.Infrastructure)] [System.Runtime.InteropServices.ComVisible(true)] public override void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg) { // We are not interested in contributing any properties to the // new context since the only purpose of this property is to force // the creation of the context and the server object inside it at // the specified URL. return; } public String UrlValue { [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.Infrastructure)] get { return url; } } } } // namespace // 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
- SecurityTokenRequirement.cs
- Repeater.cs
- Type.cs
- StringConcat.cs
- XamlBrushSerializer.cs
- DataBindingList.cs
- ReflectEventDescriptor.cs
- OleServicesContext.cs
- TypeContext.cs
- ServicePointManager.cs
- Pointer.cs
- UnsafeNativeMethods.cs
- ReferencedAssembly.cs
- RotateTransform.cs
- SizeLimitedCache.cs
- ObjectListCommandCollection.cs
- StylusPointPropertyInfoDefaults.cs
- HtmlControlPersistable.cs
- JpegBitmapDecoder.cs
- RoutedPropertyChangedEventArgs.cs
- SelfIssuedAuthProofToken.cs
- SortableBindingList.cs
- SmtpFailedRecipientException.cs
- FilePresentation.cs
- XmlAnyElementAttributes.cs
- RuntimeArgumentHandle.cs
- CodeMemberEvent.cs
- FilterException.cs
- SpeakCompletedEventArgs.cs
- ColumnResizeUndoUnit.cs
- XmlSecureResolver.cs
- TcpAppDomainProtocolHandler.cs
- ClonableStack.cs
- SQLInt32Storage.cs
- HttpCookieCollection.cs
- GridViewDeletedEventArgs.cs
- BackoffTimeoutHelper.cs
- MailAddressParser.cs
- ConfigsHelper.cs
- OutputCacheSettingsSection.cs
- UriTemplateMatch.cs
- TypeUtil.cs
- Suspend.cs
- GroupLabel.cs
- UpdateRecord.cs
- BamlResourceDeserializer.cs
- TextRunTypographyProperties.cs
- FatalException.cs
- WindowsPen.cs
- uribuilder.cs
- BitmapEffectDrawingContent.cs
- DocumentViewerHelper.cs
- MediaContextNotificationWindow.cs
- OpenTypeLayout.cs
- Column.cs
- TextWriter.cs
- HttpPostedFileBase.cs
- RootNamespaceAttribute.cs
- DesignerUtils.cs
- RelatedCurrencyManager.cs
- StringComparer.cs
- AppDomainShutdownMonitor.cs
- RelatedCurrencyManager.cs
- PrivateFontCollection.cs
- ProviderConnectionPoint.cs
- BufferedWebEventProvider.cs
- OuterGlowBitmapEffect.cs
- EventArgs.cs
- DataTrigger.cs
- DecimalConstantAttribute.cs
- CodeDomConfigurationHandler.cs
- jithelpers.cs
- ExtentKey.cs
- WS2007FederationHttpBinding.cs
- LostFocusEventManager.cs
- SamlAdvice.cs
- WebColorConverter.cs
- ChangeDirector.cs
- SqlCommandSet.cs
- SystemDiagnosticsSection.cs
- ObjectContextServiceProvider.cs
- ResolveCriteria.cs
- RC2CryptoServiceProvider.cs
- EntityDesignerDataSourceView.cs
- Guid.cs
- MruCache.cs
- DayRenderEvent.cs
- AppLevelCompilationSectionCache.cs
- WorkflowInstanceQuery.cs
- XmlCharCheckingWriter.cs
- RegexRunnerFactory.cs
- DataPagerField.cs
- WebPartMenuStyle.cs
- Cursors.cs
- BitmapDownload.cs
- ProvidePropertyAttribute.cs
- ChannelSinkStacks.cs
- Transform.cs
- HandlerWithFactory.cs
- OdbcTransaction.cs