Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Security / Policy / PermissionRequestEvidence.cs / 1305376 / PermissionRequestEvidence.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // PermissionRequestEvidence.cs // //[....] // // Encapsulation of permission request as an evidence type. // namespace System.Security.Policy { using System.Runtime.Remoting; using System; using System.IO; using System.Security.Util; using System.Collections; using System.Runtime.Serialization; using System.Diagnostics.Contracts; [Serializable] [System.Runtime.InteropServices.ComVisible(true)] [Obsolete("Assembly level declarative security is obsolete and is no longer enforced by the CLR by default. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")] public sealed class PermissionRequestEvidence : EvidenceBase { private PermissionSet m_request; private PermissionSet m_optional; private PermissionSet m_denied; // These fields are not used, they are here for serialization compatibility with Whidbey #pragma warning disable 169 private String m_strRequest; private String m_strOptional; private String m_strDenied; #pragma warning restore 169 public PermissionRequestEvidence(PermissionSet request, PermissionSet optional, PermissionSet denied) { if (request == null) m_request = null; else m_request = request.Copy(); if (optional == null) m_optional = null; else m_optional = optional.Copy(); if (denied == null) m_denied = null; else m_denied = denied.Copy(); } public PermissionSet RequestedPermissions { get { return m_request; } } public PermissionSet OptionalPermissions { get { return m_optional; } } public PermissionSet DeniedPermissions { get { return m_denied; } } public override EvidenceBase Clone() { return Copy(); } public PermissionRequestEvidence Copy() { return new PermissionRequestEvidence(m_request, m_optional, m_denied); } internal SecurityElement ToXml() { SecurityElement root = new SecurityElement( "System.Security.Policy.PermissionRequestEvidence" ); // If you hit this assert then most likely you are trying to change the name of this class. // This is ok as long as you change the hard coded string above and change the assert below. Contract.Assert( this.GetType().FullName.Equals( "System.Security.Policy.PermissionRequestEvidence" ), "Class name changed!" ); root.AddAttribute( "version", "1" ); SecurityElement elem; if (m_request != null) { elem = new SecurityElement( "Request" ); elem.AddChild( m_request.ToXml() ); root.AddChild( elem ); } if (m_optional != null) { elem = new SecurityElement( "Optional" ); elem.AddChild( m_optional.ToXml() ); root.AddChild( elem ); } if (m_denied != null) { elem = new SecurityElement( "Denied" ); elem.AddChild( m_denied.ToXml() ); root.AddChild( elem ); } return root; } [System.Security.SecuritySafeCritical] // auto-generated public override String ToString() { return ToXml().ToString(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // PermissionRequestEvidence.cs // //[....] // // Encapsulation of permission request as an evidence type. // namespace System.Security.Policy { using System.Runtime.Remoting; using System; using System.IO; using System.Security.Util; using System.Collections; using System.Runtime.Serialization; using System.Diagnostics.Contracts; [Serializable] [System.Runtime.InteropServices.ComVisible(true)] [Obsolete("Assembly level declarative security is obsolete and is no longer enforced by the CLR by default. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")] public sealed class PermissionRequestEvidence : EvidenceBase { private PermissionSet m_request; private PermissionSet m_optional; private PermissionSet m_denied; // These fields are not used, they are here for serialization compatibility with Whidbey #pragma warning disable 169 private String m_strRequest; private String m_strOptional; private String m_strDenied; #pragma warning restore 169 public PermissionRequestEvidence(PermissionSet request, PermissionSet optional, PermissionSet denied) { if (request == null) m_request = null; else m_request = request.Copy(); if (optional == null) m_optional = null; else m_optional = optional.Copy(); if (denied == null) m_denied = null; else m_denied = denied.Copy(); } public PermissionSet RequestedPermissions { get { return m_request; } } public PermissionSet OptionalPermissions { get { return m_optional; } } public PermissionSet DeniedPermissions { get { return m_denied; } } public override EvidenceBase Clone() { return Copy(); } public PermissionRequestEvidence Copy() { return new PermissionRequestEvidence(m_request, m_optional, m_denied); } internal SecurityElement ToXml() { SecurityElement root = new SecurityElement( "System.Security.Policy.PermissionRequestEvidence" ); // If you hit this assert then most likely you are trying to change the name of this class. // This is ok as long as you change the hard coded string above and change the assert below. Contract.Assert( this.GetType().FullName.Equals( "System.Security.Policy.PermissionRequestEvidence" ), "Class name changed!" ); root.AddAttribute( "version", "1" ); SecurityElement elem; if (m_request != null) { elem = new SecurityElement( "Request" ); elem.AddChild( m_request.ToXml() ); root.AddChild( elem ); } if (m_optional != null) { elem = new SecurityElement( "Optional" ); elem.AddChild( m_optional.ToXml() ); root.AddChild( elem ); } if (m_denied != null) { elem = new SecurityElement( "Denied" ); elem.AddChild( m_denied.ToXml() ); root.AddChild( elem ); } return root; } [System.Security.SecuritySafeCritical] // auto-generated public override String ToString() { return ToXml().ToString(); } } } // 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
- FixedSOMPageElement.cs
- ExpressionBuilder.cs
- TableItemPattern.cs
- BitmapEffectDrawingContextState.cs
- Permission.cs
- UnsafeNativeMethodsTablet.cs
- SessionParameter.cs
- ClientSession.cs
- MDIControlStrip.cs
- SamlEvidence.cs
- RepeaterItem.cs
- OracleCommandBuilder.cs
- CounterCreationData.cs
- DataErrorValidationRule.cs
- Validator.cs
- XmlCollation.cs
- DashStyles.cs
- CheckBoxDesigner.cs
- Interlocked.cs
- SafeViewOfFileHandle.cs
- PresentationSource.cs
- Mapping.cs
- OrderedHashRepartitionStream.cs
- EpmAttributeNameBuilder.cs
- TreeIterator.cs
- ArgumentException.cs
- HtmlInputHidden.cs
- _SafeNetHandles.cs
- X509CertificateEndpointIdentity.cs
- WsdlBuildProvider.cs
- SecurityRuntime.cs
- BuildProvider.cs
- DataSourceXmlElementAttribute.cs
- XomlDesignerLoader.cs
- WCFBuildProvider.cs
- Point3DAnimationUsingKeyFrames.cs
- Cursors.cs
- RemoteWebConfigurationHostStream.cs
- BitArray.cs
- HtmlTernaryTree.cs
- DataKeyArray.cs
- DomainUpDown.cs
- TextTreeTextElementNode.cs
- GregorianCalendar.cs
- RelatedCurrencyManager.cs
- SpinWait.cs
- SQLByteStorage.cs
- ImageUrlEditor.cs
- SqlWriter.cs
- EntityDescriptor.cs
- XamlSerializationHelper.cs
- OverflowException.cs
- DecoderBestFitFallback.cs
- SHA256Managed.cs
- RectAnimation.cs
- DbTransaction.cs
- DataGridItemCollection.cs
- DataRowComparer.cs
- DurableMessageDispatchInspector.cs
- ProfilePropertyMetadata.cs
- XmlUrlResolver.cs
- ThrowHelper.cs
- XmlLinkedNode.cs
- ElementHost.cs
- XsdValidatingReader.cs
- RawKeyboardInputReport.cs
- DiffuseMaterial.cs
- WindowInteropHelper.cs
- InputLanguageCollection.cs
- UserPreferenceChangingEventArgs.cs
- DataGridViewControlCollection.cs
- TextEncodedRawTextWriter.cs
- PaperSize.cs
- TypeResolvingOptions.cs
- CrossContextChannel.cs
- ObjectSpanRewriter.cs
- BamlResourceSerializer.cs
- ScriptResourceAttribute.cs
- TableLayoutSettings.cs
- SendActivityDesignerTheme.cs
- UICuesEvent.cs
- MasterPageBuildProvider.cs
- DataColumnPropertyDescriptor.cs
- SiteMapHierarchicalDataSourceView.cs
- RootNamespaceAttribute.cs
- Viewport3DAutomationPeer.cs
- DESCryptoServiceProvider.cs
- SqlClientMetaDataCollectionNames.cs
- RoleBoolean.cs
- Menu.cs
- Point3DValueSerializer.cs
- OperationSelectorBehavior.cs
- IChannel.cs
- DesignerCategoryAttribute.cs
- DataSourceXmlSerializationAttribute.cs
- GridViewRowCollection.cs
- CatalogZoneBase.cs
- EncodingDataItem.cs
- SqlProcedureAttribute.cs
- ToolStripItemRenderEventArgs.cs