Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / security / system / security / permissions / storepermissionattribute.cs / 1 / storepermissionattribute.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // // StorePermissionAttribute.cs // namespace System.Security.Permissions { [AttributeUsage(AttributeTargets.Method | AttributeTargets.Constructor | AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Assembly, AllowMultiple = true, Inherited = false )] [Serializable()] public sealed class StorePermissionAttribute : CodeAccessSecurityAttribute { StorePermissionFlags m_flags = StorePermissionFlags.NoFlags; public StorePermissionAttribute(SecurityAction action) : base(action) {} public StorePermissionFlags Flags { get { return m_flags; } set { StorePermission.VerifyFlags(value); m_flags = value; } } public bool CreateStore { get { return (m_flags & StorePermissionFlags.CreateStore) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.CreateStore : m_flags & ~StorePermissionFlags.CreateStore; } } public bool DeleteStore { get { return (m_flags & StorePermissionFlags.DeleteStore) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.DeleteStore : m_flags & ~StorePermissionFlags.DeleteStore; } } public bool EnumerateStores { get { return (m_flags & StorePermissionFlags.EnumerateStores) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.EnumerateStores : m_flags & ~StorePermissionFlags.EnumerateStores; } } public bool OpenStore { get { return (m_flags & StorePermissionFlags.OpenStore) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.OpenStore : m_flags & ~StorePermissionFlags.OpenStore; } } public bool AddToStore { get { return (m_flags & StorePermissionFlags.AddToStore) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.AddToStore : m_flags & ~StorePermissionFlags.AddToStore; } } public bool RemoveFromStore { get { return (m_flags & StorePermissionFlags.RemoveFromStore) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.RemoveFromStore : m_flags & ~StorePermissionFlags.RemoveFromStore; } } public bool EnumerateCertificates { get { return (m_flags & StorePermissionFlags.EnumerateCertificates) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.EnumerateCertificates : m_flags & ~StorePermissionFlags.EnumerateCertificates; } } public override IPermission CreatePermission() { if (Unrestricted) return new StorePermission(PermissionState.Unrestricted); else return new StorePermission(m_flags); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // // StorePermissionAttribute.cs // namespace System.Security.Permissions { [AttributeUsage(AttributeTargets.Method | AttributeTargets.Constructor | AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Assembly, AllowMultiple = true, Inherited = false )] [Serializable()] public sealed class StorePermissionAttribute : CodeAccessSecurityAttribute { StorePermissionFlags m_flags = StorePermissionFlags.NoFlags; public StorePermissionAttribute(SecurityAction action) : base(action) {} public StorePermissionFlags Flags { get { return m_flags; } set { StorePermission.VerifyFlags(value); m_flags = value; } } public bool CreateStore { get { return (m_flags & StorePermissionFlags.CreateStore) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.CreateStore : m_flags & ~StorePermissionFlags.CreateStore; } } public bool DeleteStore { get { return (m_flags & StorePermissionFlags.DeleteStore) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.DeleteStore : m_flags & ~StorePermissionFlags.DeleteStore; } } public bool EnumerateStores { get { return (m_flags & StorePermissionFlags.EnumerateStores) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.EnumerateStores : m_flags & ~StorePermissionFlags.EnumerateStores; } } public bool OpenStore { get { return (m_flags & StorePermissionFlags.OpenStore) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.OpenStore : m_flags & ~StorePermissionFlags.OpenStore; } } public bool AddToStore { get { return (m_flags & StorePermissionFlags.AddToStore) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.AddToStore : m_flags & ~StorePermissionFlags.AddToStore; } } public bool RemoveFromStore { get { return (m_flags & StorePermissionFlags.RemoveFromStore) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.RemoveFromStore : m_flags & ~StorePermissionFlags.RemoveFromStore; } } public bool EnumerateCertificates { get { return (m_flags & StorePermissionFlags.EnumerateCertificates) != 0; } set { m_flags = value ? m_flags | StorePermissionFlags.EnumerateCertificates : m_flags & ~StorePermissionFlags.EnumerateCertificates; } } public override IPermission CreatePermission() { if (Unrestricted) return new StorePermission(PermissionState.Unrestricted); else return new StorePermission(m_flags); } } } // 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
- ChangePassword.cs
- TextEditorSpelling.cs
- TimeZone.cs
- IssuerInformation.cs
- DesignerProperties.cs
- XamlSerializerUtil.cs
- XhtmlTextWriter.cs
- ContentOperations.cs
- LinkLabelLinkClickedEvent.cs
- WindowsProgressbar.cs
- HebrewCalendar.cs
- RootBuilder.cs
- DesignerToolStripControlHost.cs
- SpinWait.cs
- WebPartPersonalization.cs
- DockPanel.cs
- PropertyEmitter.cs
- Itemizer.cs
- InternalBufferOverflowException.cs
- Helper.cs
- FieldBuilder.cs
- SchemaTypeEmitter.cs
- SqlNotificationEventArgs.cs
- Root.cs
- StreamSecurityUpgradeInitiatorAsyncResult.cs
- TreeNodeStyle.cs
- SettingsPropertyValue.cs
- SqlDataSourceCommandEventArgs.cs
- OleDbPermission.cs
- DecoderExceptionFallback.cs
- FolderLevelBuildProvider.cs
- ManagementEventWatcher.cs
- BinaryWriter.cs
- XPathEmptyIterator.cs
- DataGridViewRowCollection.cs
- PriorityRange.cs
- InstanceData.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- CallContext.cs
- ConnectionStringSettingsCollection.cs
- SchemaName.cs
- FlowDocumentReader.cs
- DateRangeEvent.cs
- MappableObjectManager.cs
- ImageClickEventArgs.cs
- QuaternionAnimation.cs
- HelpKeywordAttribute.cs
- WebPartVerbsEventArgs.cs
- ReadContentAsBinaryHelper.cs
- BrowserDefinition.cs
- TextBoxAutomationPeer.cs
- AuthorizationSection.cs
- FixedSOMLineRanges.cs
- unsafenativemethodstextservices.cs
- DataColumnCollection.cs
- DeadCharTextComposition.cs
- RegexMatchCollection.cs
- ByteStack.cs
- DataBindingCollection.cs
- LocatorManager.cs
- RuntimeConfigurationRecord.cs
- DataTableMappingCollection.cs
- FixUpCollection.cs
- ConditionCollection.cs
- DesignerEditorPartChrome.cs
- DrawingVisualDrawingContext.cs
- EntityFunctions.cs
- XmlSchemaInferenceException.cs
- MetadataProperty.cs
- FontStyle.cs
- PropertySourceInfo.cs
- SerialStream.cs
- ByteViewer.cs
- TransformedBitmap.cs
- ToolStripLocationCancelEventArgs.cs
- BindingList.cs
- DocumentXmlWriter.cs
- XAMLParseException.cs
- StringDictionary.cs
- CellParagraph.cs
- RadioButtonDesigner.cs
- SystemNetHelpers.cs
- SqlClientPermission.cs
- Operators.cs
- ResourceDescriptionAttribute.cs
- BulletedList.cs
- TaiwanCalendar.cs
- ReadOnlyDictionary.cs
- Brush.cs
- DayRenderEvent.cs
- PointUtil.cs
- ValidationRuleCollection.cs
- NavigationProgressEventArgs.cs
- JoinTreeNode.cs
- WriteableOnDemandPackagePart.cs
- ResXBuildProvider.cs
- NamespaceEmitter.cs
- Collection.cs
- ConnectionManagementElement.cs
- MasterPage.cs