Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- DataGridViewComboBoxEditingControl.cs
- VideoDrawing.cs
- DotNetATv1WindowsLogEntrySerializer.cs
- DBAsyncResult.cs
- FlowDocument.cs
- LinearGradientBrush.cs
- MethodExecutor.cs
- LogicalTreeHelper.cs
- ResolveCompletedEventArgs.cs
- InputLanguageCollection.cs
- ProfilePropertySettingsCollection.cs
- ColumnMapVisitor.cs
- ByteAnimationBase.cs
- SimpleType.cs
- WebPartConnectionCollection.cs
- SamlDelegatingWriter.cs
- XmlChildEnumerator.cs
- TransformDescriptor.cs
- FtpWebResponse.cs
- ProfileProvider.cs
- GradientSpreadMethodValidation.cs
- TextTreeUndo.cs
- ScriptServiceAttribute.cs
- Html32TextWriter.cs
- HtmlTextViewAdapter.cs
- ConfigurationSectionHelper.cs
- BuildManagerHost.cs
- TreeView.cs
- FormsAuthenticationEventArgs.cs
- HiddenField.cs
- SqlInfoMessageEvent.cs
- ReferentialConstraint.cs
- PrinterResolution.cs
- FontDifferentiator.cs
- PrintPreviewControl.cs
- RangeBase.cs
- TagPrefixInfo.cs
- FormsAuthenticationModule.cs
- SignedInfo.cs
- ResourcePermissionBaseEntry.cs
- RIPEMD160.cs
- Odbc32.cs
- ResourcePart.cs
- UiaCoreProviderApi.cs
- ThreadPool.cs
- PointAnimationUsingPath.cs
- CodeAccessPermission.cs
- CustomAttributeSerializer.cs
- CountAggregationOperator.cs
- WebPartRestoreVerb.cs
- FixedDSBuilder.cs
- CacheRequest.cs
- basemetadatamappingvisitor.cs
- OdbcException.cs
- WindowsTooltip.cs
- CredentialCache.cs
- DbMetaDataColumnNames.cs
- LiteralLink.cs
- ConfigXmlDocument.cs
- WorkflowOperationBehavior.cs
- TextTreeExtractElementUndoUnit.cs
- GlyphRun.cs
- FontSourceCollection.cs
- ReflectionTypeLoadException.cs
- CookieParameter.cs
- BamlLocalizer.cs
- MemberInfoSerializationHolder.cs
- LazyInitializer.cs
- XMLSchema.cs
- CustomAttribute.cs
- ViewPort3D.cs
- SqlComparer.cs
- DataGridHelper.cs
- WebPartTracker.cs
- Win32MouseDevice.cs
- HandleCollector.cs
- WebEventCodes.cs
- ArrayWithOffset.cs
- BasicBrowserDialog.cs
- NegationPusher.cs
- GZipStream.cs
- TemplateControlParser.cs
- UnsafeNativeMethods.cs
- SectionInput.cs
- DefaultWorkflowSchedulerService.cs
- PropertyChangingEventArgs.cs
- ThreadPool.cs
- RuntimeConfig.cs
- CngKey.cs
- Shape.cs
- ClosableStream.cs
- InstanceStoreQueryResult.cs
- ControlParameter.cs
- HostedHttpTransportManager.cs
- SecurityAppliedMessage.cs
- ToolZone.cs
- Environment.cs
- DataGridViewDataConnection.cs
- DataServiceHost.cs
- HttpServerUtilityWrapper.cs