Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Services / Messaging / System / Messaging / MessageQueuePermissionAttribute.cs / 1305376 / MessageQueuePermissionAttribute.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Messaging { using System.ComponentModel; using System.Security; using System.Security.Permissions; ///[ AttributeUsage(AttributeTargets.Method | AttributeTargets.Constructor | AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Assembly | AttributeTargets.Event, AllowMultiple = true, Inherited = false ), Serializable() ] [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1813:AvoidUnsealedAttributes")] public class MessageQueuePermissionAttribute : CodeAccessSecurityAttribute { private string label; private string machineName; private string path; private string category; private MessageQueuePermissionAccess permissionAccess; /// public MessageQueuePermissionAttribute(SecurityAction action) : base(action) { } /// public string Category { get { return this.category; } set { string oldValue = this.category; this.category = value; Exception e = CheckProperties(); if (e != null) { this.category = oldValue; throw e; } } } /// public string Label { get { return this.label; } set { string oldValue = this.label; this.label = value; Exception e = CheckProperties(); if (e != null) { this.label = oldValue; throw e; } } } /// public string MachineName { get { return this.machineName; } set{ if (value != null && !SyntaxCheck.CheckMachineName(value)) throw new ArgumentException(Res.GetString(Res.InvalidProperty, "MachineName", value)); string oldValue = this.machineName; this.machineName = value; Exception e = CheckProperties(); if (e != null) { this.machineName = oldValue; throw e; } } } /// public string Path { get { return this.path; } set { if (value != null && value != MessageQueuePermission.Any && !MessageQueue.ValidatePath(value, false)) throw new ArgumentException(Res.GetString(Res.PathSyntax)); string oldValue = this.path; this.path = value; Exception e = CheckProperties(); if (e != null) { this.path = oldValue; throw e; } } } /// public MessageQueuePermissionAccess PermissionAccess { get { return this.permissionAccess; } set { this.permissionAccess = value; } } /// public override IPermission CreatePermission() { if (Unrestricted) return new MessageQueuePermission(PermissionState.Unrestricted); CheckProperties(); if (this.path != null) return new MessageQueuePermission(this.PermissionAccess, this.path); return new MessageQueuePermission(this.PermissionAccess, this.machineName, this.label, this.category); } private Exception CheckProperties() { if (this.path != null && (this.machineName != null || this.label != null || this.category != null)) return new InvalidOperationException(Res.GetString(Res.PermissionPathOrCriteria)); if (this.path == null && this.machineName == null && this.label == null && this.category == null) return new InvalidOperationException(Res.GetString(Res.PermissionAllNull)); return null; } } } // 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
- DateTimeParse.cs
- CodeTypeMemberCollection.cs
- Asn1IntegerConverter.cs
- ServiceDeploymentInfo.cs
- PathFigureCollectionValueSerializer.cs
- ObjectDisposedException.cs
- CancelRequestedRecord.cs
- ProcessHostMapPath.cs
- BoundPropertyEntry.cs
- DataServiceQueryOfT.cs
- XmlSchemaInfo.cs
- EntityClassGenerator.cs
- DescendantBaseQuery.cs
- VerificationException.cs
- RectKeyFrameCollection.cs
- SqlConnectionHelper.cs
- OletxTransactionManager.cs
- SecurityHeaderTokenResolver.cs
- ObjectDataSourceFilteringEventArgs.cs
- QuotedPrintableStream.cs
- DiffuseMaterial.cs
- AgileSafeNativeMemoryHandle.cs
- CqlGenerator.cs
- OperationBehaviorAttribute.cs
- FunctionMappingTranslator.cs
- HierarchicalDataBoundControl.cs
- InputReportEventArgs.cs
- SymmetricKey.cs
- SchemaElementLookUpTableEnumerator.cs
- ListViewItem.cs
- FocusTracker.cs
- CircleHotSpot.cs
- CodeAccessPermission.cs
- ToolBarOverflowPanel.cs
- Pen.cs
- WebServiceParameterData.cs
- CloudCollection.cs
- EntityWithChangeTrackerStrategy.cs
- ObjectMemberMapping.cs
- RolePrincipal.cs
- ImageList.cs
- DataServicePagingProviderWrapper.cs
- NullReferenceException.cs
- LiteralLink.cs
- RectangleConverter.cs
- MimeTypePropertyAttribute.cs
- VisualStyleInformation.cs
- EventListener.cs
- ObjectContext.cs
- MexHttpsBindingCollectionElement.cs
- XsltSettings.cs
- ObjectConverter.cs
- KeyInterop.cs
- StandardCommands.cs
- SqlUserDefinedTypeAttribute.cs
- StateElementCollection.cs
- StringArrayConverter.cs
- MsmqDecodeHelper.cs
- XmlReflectionImporter.cs
- RTLAwareMessageBox.cs
- DesignerVerb.cs
- VisualBasicExpressionConverter.cs
- ModifierKeysValueSerializer.cs
- SafeArrayRankMismatchException.cs
- XhtmlConformanceSection.cs
- DbException.cs
- XPathNodeIterator.cs
- Matrix3D.cs
- SerializerProvider.cs
- EntityProviderFactory.cs
- DataGridCellEditEndingEventArgs.cs
- XmlSerializerOperationFormatter.cs
- Certificate.cs
- KeyInterop.cs
- ExpressionBuilderCollection.cs
- ISSmlParser.cs
- WebPartConnectionsConfigureVerb.cs
- InvariantComparer.cs
- LongValidator.cs
- XPathSelfQuery.cs
- AssemblyNameUtility.cs
- ReturnValue.cs
- GridToolTip.cs
- DisplayNameAttribute.cs
- PopOutPanel.cs
- XmlNodeChangedEventManager.cs
- DateTimeValueSerializer.cs
- ErrorFormatter.cs
- RadialGradientBrush.cs
- SQLDateTimeStorage.cs
- InsufficientMemoryException.cs
- DbModificationCommandTree.cs
- CacheDependency.cs
- InternalException.cs
- DeviceContext2.cs
- XNodeSchemaApplier.cs
- GC.cs
- LayoutTableCell.cs
- WinEventTracker.cs
- DbParameterCollectionHelper.cs