Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / ActivationArguments.cs / 1305376 / ActivationArguments.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== using System.Diagnostics.Contracts; using System.Runtime.Versioning; using System.Security.Policy; namespace System.Runtime.Hosting { [Serializable] [System.Runtime.InteropServices.ComVisible(true)] public sealed class ActivationArguments : EvidenceBase { private ActivationArguments () {} // This boolean is used to smuggle the information about whether // AppDomainSetup was constructed from an ActivationContext. private bool m_useFusionActivationContext = false; internal bool UseFusionActivationContext { get { return m_useFusionActivationContext; } } // This is used to indicate whether the instance is to be activated // during the new domain's initialization. CreateInstanceHelper sets // this flag to true; CreateDomainHelper never activates the application. private bool m_activateInstance = false; internal bool ActivateInstance { get { return m_activateInstance; } set { m_activateInstance = value; } } private string m_appFullName; internal string ApplicationFullName { get { return m_appFullName; } } private string[] m_appManifestPaths; internal string[] ApplicationManifestPaths { get { return m_appManifestPaths; } } #if !FEATURE_PAL public ActivationArguments (ApplicationIdentity applicationIdentity) : this (applicationIdentity, null) {} public ActivationArguments (ApplicationIdentity applicationIdentity, string[] activationData) { if (applicationIdentity == null) throw new ArgumentNullException("applicationIdentity"); Contract.EndContractBlock(); m_appFullName = applicationIdentity.FullName; m_activationData = activationData; } public ActivationArguments (ActivationContext activationData) : this (activationData, null) {} [ResourceExposure(ResourceScope.None)] [ResourceConsumption(ResourceScope.Machine, ResourceScope.Machine)] public ActivationArguments (ActivationContext activationContext, string[] activationData) { if (activationContext == null) throw new ArgumentNullException("activationContext"); Contract.EndContractBlock(); m_appFullName = activationContext.Identity.FullName; m_appManifestPaths = activationContext.ManifestPaths; m_activationData = activationData; m_useFusionActivationContext = true; } [ResourceExposure(ResourceScope.Machine)] [ResourceConsumption(ResourceScope.Machine)] internal ActivationArguments (string appFullName, string[] appManifestPaths, string[] activationData) { if (appFullName == null) throw new ArgumentNullException("appFullName"); Contract.EndContractBlock(); m_appFullName = appFullName; m_appManifestPaths = appManifestPaths; m_activationData = activationData; m_useFusionActivationContext = true; } public ApplicationIdentity ApplicationIdentity { get { return new ApplicationIdentity(m_appFullName); } } public ActivationContext ActivationContext { [ResourceExposure(ResourceScope.None)] [ResourceConsumption(ResourceScope.Machine, ResourceScope.Machine)] get { if (!UseFusionActivationContext) return null; if (m_appManifestPaths == null) return new ActivationContext(new ApplicationIdentity(m_appFullName)); else return new ActivationContext(new ApplicationIdentity(m_appFullName), m_appManifestPaths); } } #endif // !FEATURE_PAL private string[] m_activationData; public string[] ActivationData { get { return m_activationData; } } public override EvidenceBase Clone() { ActivationArguments clone = new ActivationArguments(); clone.m_useFusionActivationContext = m_useFusionActivationContext; clone.m_activateInstance = m_activateInstance; clone.m_appFullName = m_appFullName; if (m_appManifestPaths != null) { clone.m_appManifestPaths = new string[m_appManifestPaths.Length]; Array.Copy(m_appManifestPaths, clone.m_appManifestPaths, clone.m_appManifestPaths.Length); } if (m_activationData != null) { clone.m_activationData = new string[m_activationData.Length]; Array.Copy(m_activationData, clone.m_activationData, clone.m_activationData.Length); } #if !FEATURE_PAL clone.m_activateInstance = m_activateInstance; clone.m_appFullName = m_appFullName; clone.m_useFusionActivationContext = m_useFusionActivationContext; #endif // !FEATURE_PAL return clone; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== using System.Diagnostics.Contracts; using System.Runtime.Versioning; using System.Security.Policy; namespace System.Runtime.Hosting { [Serializable] [System.Runtime.InteropServices.ComVisible(true)] public sealed class ActivationArguments : EvidenceBase { private ActivationArguments () {} // This boolean is used to smuggle the information about whether // AppDomainSetup was constructed from an ActivationContext. private bool m_useFusionActivationContext = false; internal bool UseFusionActivationContext { get { return m_useFusionActivationContext; } } // This is used to indicate whether the instance is to be activated // during the new domain's initialization. CreateInstanceHelper sets // this flag to true; CreateDomainHelper never activates the application. private bool m_activateInstance = false; internal bool ActivateInstance { get { return m_activateInstance; } set { m_activateInstance = value; } } private string m_appFullName; internal string ApplicationFullName { get { return m_appFullName; } } private string[] m_appManifestPaths; internal string[] ApplicationManifestPaths { get { return m_appManifestPaths; } } #if !FEATURE_PAL public ActivationArguments (ApplicationIdentity applicationIdentity) : this (applicationIdentity, null) {} public ActivationArguments (ApplicationIdentity applicationIdentity, string[] activationData) { if (applicationIdentity == null) throw new ArgumentNullException("applicationIdentity"); Contract.EndContractBlock(); m_appFullName = applicationIdentity.FullName; m_activationData = activationData; } public ActivationArguments (ActivationContext activationData) : this (activationData, null) {} [ResourceExposure(ResourceScope.None)] [ResourceConsumption(ResourceScope.Machine, ResourceScope.Machine)] public ActivationArguments (ActivationContext activationContext, string[] activationData) { if (activationContext == null) throw new ArgumentNullException("activationContext"); Contract.EndContractBlock(); m_appFullName = activationContext.Identity.FullName; m_appManifestPaths = activationContext.ManifestPaths; m_activationData = activationData; m_useFusionActivationContext = true; } [ResourceExposure(ResourceScope.Machine)] [ResourceConsumption(ResourceScope.Machine)] internal ActivationArguments (string appFullName, string[] appManifestPaths, string[] activationData) { if (appFullName == null) throw new ArgumentNullException("appFullName"); Contract.EndContractBlock(); m_appFullName = appFullName; m_appManifestPaths = appManifestPaths; m_activationData = activationData; m_useFusionActivationContext = true; } public ApplicationIdentity ApplicationIdentity { get { return new ApplicationIdentity(m_appFullName); } } public ActivationContext ActivationContext { [ResourceExposure(ResourceScope.None)] [ResourceConsumption(ResourceScope.Machine, ResourceScope.Machine)] get { if (!UseFusionActivationContext) return null; if (m_appManifestPaths == null) return new ActivationContext(new ApplicationIdentity(m_appFullName)); else return new ActivationContext(new ApplicationIdentity(m_appFullName), m_appManifestPaths); } } #endif // !FEATURE_PAL private string[] m_activationData; public string[] ActivationData { get { return m_activationData; } } public override EvidenceBase Clone() { ActivationArguments clone = new ActivationArguments(); clone.m_useFusionActivationContext = m_useFusionActivationContext; clone.m_activateInstance = m_activateInstance; clone.m_appFullName = m_appFullName; if (m_appManifestPaths != null) { clone.m_appManifestPaths = new string[m_appManifestPaths.Length]; Array.Copy(m_appManifestPaths, clone.m_appManifestPaths, clone.m_appManifestPaths.Length); } if (m_activationData != null) { clone.m_activationData = new string[m_activationData.Length]; Array.Copy(m_activationData, clone.m_activationData, clone.m_activationData.Length); } #if !FEATURE_PAL clone.m_activateInstance = m_activateInstance; clone.m_appFullName = m_appFullName; clone.m_useFusionActivationContext = m_useFusionActivationContext; #endif // !FEATURE_PAL return clone; } } } // 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
- ConstraintConverter.cs
- DataGridAddNewRow.cs
- TypeContext.cs
- PersistenceTypeAttribute.cs
- ValidationSummary.cs
- WindowsClientCredential.cs
- ValueUnavailableException.cs
- PageRequestManager.cs
- InProcStateClientManager.cs
- HitTestWithPointDrawingContextWalker.cs
- AssemblyNameProxy.cs
- WindowsEditBoxRange.cs
- MultilineStringEditor.cs
- HtmlContainerControl.cs
- PageThemeParser.cs
- BasicKeyConstraint.cs
- StreamingContext.cs
- counter.cs
- StrokeRenderer.cs
- ItemsChangedEventArgs.cs
- GlyphInfoList.cs
- BookmarkUndoUnit.cs
- DataObjectSettingDataEventArgs.cs
- TemplateControl.cs
- XhtmlBasicObjectListAdapter.cs
- ActiveXContainer.cs
- CompModSwitches.cs
- Graphics.cs
- XPathAxisIterator.cs
- MemberExpressionHelper.cs
- BinHexEncoding.cs
- Viewport2DVisual3D.cs
- TypeConverterHelper.cs
- compensatingcollection.cs
- ModelItemImpl.cs
- NavigationWindowAutomationPeer.cs
- KeyFrames.cs
- TouchDevice.cs
- BridgeDataReader.cs
- ScriptControlManager.cs
- RadioButton.cs
- WsdlServiceChannelBuilder.cs
- ConvertEvent.cs
- JournalEntry.cs
- ScalarOps.cs
- TransformerInfoCollection.cs
- ObjectDataSourceDesigner.cs
- SafeCertificateContext.cs
- SmiConnection.cs
- PropertyInformationCollection.cs
- JavaScriptString.cs
- MouseActionValueSerializer.cs
- Vector3D.cs
- TdsValueSetter.cs
- StreamUpgradeAcceptor.cs
- CookieParameter.cs
- ListViewGroupItemCollection.cs
- CompositeTypefaceMetrics.cs
- RelationshipDetailsRow.cs
- WebPartConnectionsConfigureVerb.cs
- xsdvalidator.cs
- COM2ExtendedBrowsingHandler.cs
- SynchronizationLockException.cs
- EndEvent.cs
- CompositeFontFamily.cs
- ProxyWebPart.cs
- DockPanel.cs
- ItemCollection.cs
- FormattedTextSymbols.cs
- DesignerVerbCollection.cs
- TextPenaltyModule.cs
- SqlUdtInfo.cs
- PixelFormat.cs
- ProcessHostServerConfig.cs
- AsymmetricSignatureFormatter.cs
- ProfileInfo.cs
- PageFunction.cs
- ToolStripDropDownDesigner.cs
- ReadWriteSpinLock.cs
- BitmapMetadataBlob.cs
- Brush.cs
- CodePrimitiveExpression.cs
- CommonDialog.cs
- CopyNamespacesAction.cs
- XPathMultyIterator.cs
- OuterGlowBitmapEffect.cs
- SqlProfileProvider.cs
- XmlSchemaNotation.cs
- DelimitedListTraceListener.cs
- EventManager.cs
- HtmlInputPassword.cs
- CodeDirectionExpression.cs
- WebPartConnectionsEventArgs.cs
- StylusDevice.cs
- RegexMatchCollection.cs
- Preprocessor.cs
- LicenseProviderAttribute.cs
- WriteStateInfoBase.cs
- AnnotationElement.cs
- unitconverter.cs