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
- ListParagraph.cs
- ScrollProviderWrapper.cs
- ThicknessAnimationUsingKeyFrames.cs
- PartialArray.cs
- VectorConverter.cs
- MetadataHelper.cs
- CompilerScopeManager.cs
- PartitionedDataSource.cs
- AppDomainCompilerProxy.cs
- BuildManagerHost.cs
- OrthographicCamera.cs
- DebugHandleTracker.cs
- DataObjectFieldAttribute.cs
- CompilerGeneratedAttribute.cs
- BaseTemplateCodeDomTreeGenerator.cs
- XmlHierarchyData.cs
- EncoderReplacementFallback.cs
- CommaDelimitedStringAttributeCollectionConverter.cs
- TableLayoutSettings.cs
- GridViewRow.cs
- PropertyMapper.cs
- Drawing.cs
- ChineseLunisolarCalendar.cs
- ParserStreamGeometryContext.cs
- ToolboxItem.cs
- SyndicationSerializer.cs
- Misc.cs
- MatrixValueSerializer.cs
- MergablePropertyAttribute.cs
- Soap.cs
- RecordManager.cs
- DocumentViewerAutomationPeer.cs
- UInt64Converter.cs
- StorageSetMapping.cs
- CapabilitiesAssignment.cs
- SchemaElementDecl.cs
- EditingMode.cs
- SyncMethodInvoker.cs
- DocumentViewerAutomationPeer.cs
- QualificationDataAttribute.cs
- EventLogEntryCollection.cs
- XmlName.cs
- WebControlToolBoxItem.cs
- TextProviderWrapper.cs
- MonthCalendar.cs
- CompilationLock.cs
- ObjectDataSourceMethodEventArgs.cs
- ResourceDefaultValueAttribute.cs
- SuppressIldasmAttribute.cs
- GridProviderWrapper.cs
- UpDownEvent.cs
- Hyperlink.cs
- CompositeFontFamily.cs
- HostingEnvironmentSection.cs
- UdpDiscoveryEndpointProvider.cs
- CompoundFileStorageReference.cs
- ProfilePropertyMetadata.cs
- ImageAutomationPeer.cs
- SpeechAudioFormatInfo.cs
- ParseNumbers.cs
- TreeViewEvent.cs
- ToolBarOverflowPanel.cs
- TextEffectResolver.cs
- DataBinding.cs
- EntityChangedParams.cs
- RegexGroup.cs
- PermissionListSet.cs
- ScrollViewer.cs
- BufferedWebEventProvider.cs
- ServiceModelTimeSpanValidator.cs
- IndicCharClassifier.cs
- HttpAsyncResult.cs
- SqlCharStream.cs
- Message.cs
- HyperLinkStyle.cs
- ScriptingAuthenticationServiceSection.cs
- InvalidTimeZoneException.cs
- CopyNamespacesAction.cs
- XamlDesignerSerializationManager.cs
- RequestCache.cs
- TextBox.cs
- RightsManagementUser.cs
- SqlRecordBuffer.cs
- AssemblyBuilder.cs
- WizardDesigner.cs
- ViewService.cs
- CommentAction.cs
- Visual3D.cs
- mactripleDES.cs
- PerformanceCounterPermissionEntry.cs
- CheckBoxAutomationPeer.cs
- DelegatingTypeDescriptionProvider.cs
- DeferredElementTreeState.cs
- GridItemCollection.cs
- ExecutionScope.cs
- ExpressionEditorAttribute.cs
- ConfigurationManagerInternalFactory.cs
- CommandValueSerializer.cs
- AuthenticatedStream.cs
- GridViewColumnCollection.cs