Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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);
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SafeTimerHandle.cs
- Module.cs
- BamlResourceSerializer.cs
- RowToParametersTransformer.cs
- Visual.cs
- ProtocolsSection.cs
- SecurityElement.cs
- SMSvcHost.cs
- DBBindings.cs
- IsolatedStorageFilePermission.cs
- TextServicesHost.cs
- XPathException.cs
- RSAProtectedConfigurationProvider.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- SQLGuid.cs
- SchemaHelper.cs
- DBCSCodePageEncoding.cs
- CachingHintValidation.cs
- DesignOnlyAttribute.cs
- DesignerOptionService.cs
- XmlElementAttributes.cs
- VisualTreeUtils.cs
- QilStrConcatenator.cs
- XmlBinaryReader.cs
- CDSCollectionETWBCLProvider.cs
- Task.cs
- DataTemplateSelector.cs
- VariableBinder.cs
- DataGridViewRowPostPaintEventArgs.cs
- AffineTransform3D.cs
- DesignerSerializationOptionsAttribute.cs
- ErrorRuntimeConfig.cs
- WindowsToolbarAsMenu.cs
- XmlSchemaSubstitutionGroup.cs
- DPAPIProtectedConfigurationProvider.cs
- TreeChangeInfo.cs
- PenThreadWorker.cs
- TextStore.cs
- Error.cs
- HttpProfileBase.cs
- ClientScriptManager.cs
- BitVector32.cs
- PathTooLongException.cs
- ProfilePropertySettingsCollection.cs
- SmtpMail.cs
- DNS.cs
- DataObjectAttribute.cs
- HyperLinkStyle.cs
- ACL.cs
- FontStyles.cs
- FixedSOMFixedBlock.cs
- DefaultHttpHandler.cs
- EntityCommandDefinition.cs
- FastPropertyAccessor.cs
- Rotation3DKeyFrameCollection.cs
- ProtocolElementCollection.cs
- DataGridViewRowPrePaintEventArgs.cs
- ImageListUtils.cs
- EntityTypeEmitter.cs
- ProfessionalColorTable.cs
- TableRow.cs
- ConsoleTraceListener.cs
- StringSorter.cs
- SafeRegistryKey.cs
- DecimalAnimation.cs
- TextWriterEngine.cs
- MimeFormatter.cs
- SqlRowUpdatedEvent.cs
- DbConnectionPoolCounters.cs
- DelimitedListTraceListener.cs
- DesignerForm.cs
- IsolatedStorageFileStream.cs
- ConfigXmlWhitespace.cs
- DataColumnCollection.cs
- NamedElement.cs
- PathFigure.cs
- SystemIPAddressInformation.cs
- CacheChildrenQuery.cs
- SoapIncludeAttribute.cs
- ExpressionBuilder.cs
- WebBrowserHelper.cs
- SingleSelectRootGridEntry.cs
- XslCompiledTransform.cs
- AccessibleObject.cs
- SourceFileInfo.cs
- ControlHelper.cs
- PackageDigitalSignature.cs
- LayoutExceptionEventArgs.cs
- DataControlPagerLinkButton.cs
- ScriptingJsonSerializationSection.cs
- CollectionBase.cs
- ReadOnlyNameValueCollection.cs
- CapabilitiesRule.cs
- TextBoxBaseDesigner.cs
- BitmapEffectDrawingContextState.cs
- SafeViewOfFileHandle.cs
- EntityModelSchemaGenerator.cs
- SystemWebExtensionsSectionGroup.cs
- SiteMapDataSourceView.cs
- CorrelationManager.cs