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
- PageThemeParser.cs
- EntityType.cs
- ColumnBinding.cs
- TransformerTypeCollection.cs
- StrongNamePublicKeyBlob.cs
- KeyboardEventArgs.cs
- OutputCacheSettings.cs
- DataGridViewCellCollection.cs
- TypeTypeConverter.cs
- SessionStateContainer.cs
- CultureTableRecord.cs
- SectionXmlInfo.cs
- LingerOption.cs
- SinglePageViewer.cs
- PropertyChangedEventManager.cs
- AbstractExpressions.cs
- XmlChildNodes.cs
- XPathNavigator.cs
- filewebrequest.cs
- SectionInformation.cs
- MenuAdapter.cs
- WebContentFormatHelper.cs
- FolderBrowserDialog.cs
- ResourcePool.cs
- CodeDefaultValueExpression.cs
- ClockController.cs
- ClientProxyGenerator.cs
- AnnotationResourceCollection.cs
- CodeIdentifier.cs
- Normalization.cs
- OracleInfoMessageEventArgs.cs
- ViewGenResults.cs
- Timer.cs
- TextReader.cs
- AttachmentService.cs
- TemplatePagerField.cs
- ToolStripHighContrastRenderer.cs
- IBuiltInEvidence.cs
- VirtualPath.cs
- Parsers.cs
- SpecularMaterial.cs
- ToolStripContentPanelDesigner.cs
- Point3DCollectionValueSerializer.cs
- StickyNoteHelper.cs
- AutoScrollExpandMessageFilter.cs
- CodeCastExpression.cs
- SqlDataSourceSelectingEventArgs.cs
- TdsParserStateObject.cs
- Rules.cs
- TextTreePropertyUndoUnit.cs
- StringValidatorAttribute.cs
- QilStrConcatenator.cs
- ScriptingAuthenticationServiceSection.cs
- CodeSubDirectory.cs
- HttpAsyncResult.cs
- HtmlTable.cs
- HtmlLink.cs
- OleDbRowUpdatingEvent.cs
- NonSerializedAttribute.cs
- InternalTypeHelper.cs
- ConfigurationFileMap.cs
- SolidColorBrush.cs
- ContentPlaceHolder.cs
- Utils.cs
- MachineKeySection.cs
- SoapSchemaMember.cs
- OutputCacheSection.cs
- VBIdentifierTrimConverter.cs
- ReceiveParametersContent.cs
- ExceptionUtil.cs
- SecurityProtocol.cs
- Int32.cs
- InvokeProviderWrapper.cs
- MultiDataTrigger.cs
- LogLogRecordEnumerator.cs
- TemplateNameScope.cs
- loginstatus.cs
- EntityDataSourceContextCreatingEventArgs.cs
- UserPreferenceChangingEventArgs.cs
- JsonEncodingStreamWrapper.cs
- webclient.cs
- SymmetricKeyWrap.cs
- GridToolTip.cs
- ListBase.cs
- MemberJoinTreeNode.cs
- HtmlLink.cs
- ConfigsHelper.cs
- ClientSponsor.cs
- SystemKeyConverter.cs
- DataGridViewCellPaintingEventArgs.cs
- RoutedEventValueSerializer.cs
- EntityDataSourceQueryBuilder.cs
- WebAdminConfigurationHelper.cs
- EntityContainerEmitter.cs
- oledbmetadatacolumnnames.cs
- SpellerError.cs
- DataGridViewCellPaintingEventArgs.cs
- _ScatterGatherBuffers.cs
- TrackingProfileDeserializationException.cs
- HttpListenerPrefixCollection.cs