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
- SessionPageStateSection.cs
- PointConverter.cs
- SortFieldComparer.cs
- DataSourceView.cs
- FolderBrowserDialogDesigner.cs
- ImmutableObjectAttribute.cs
- BStrWrapper.cs
- EncoderParameter.cs
- FullTrustAssemblyCollection.cs
- LZCodec.cs
- LineSegment.cs
- XmlConvert.cs
- IndicFontClient.cs
- StylusPlugin.cs
- PropertyEmitterBase.cs
- ConfigXmlAttribute.cs
- AuthStoreRoleProvider.cs
- TextRunCache.cs
- ClassDataContract.cs
- OracleInfoMessageEventArgs.cs
- Table.cs
- WebCodeGenerator.cs
- PointCollectionConverter.cs
- SchemaMerger.cs
- EdmTypeAttribute.cs
- MethodBody.cs
- BamlTreeUpdater.cs
- StateManagedCollection.cs
- CookielessHelper.cs
- XPathNavigatorKeyComparer.cs
- XmlProcessingInstruction.cs
- CompilerTypeWithParams.cs
- XmlCDATASection.cs
- Speller.cs
- StyleModeStack.cs
- SvcMapFileSerializer.cs
- SiteMapPath.cs
- PenLineJoinValidation.cs
- OleDbRowUpdatingEvent.cs
- XNodeValidator.cs
- InfoCardX509Validator.cs
- ConstraintManager.cs
- SqlServer2KCompatibilityAnnotation.cs
- FieldBuilder.cs
- UriTemplateClientFormatter.cs
- KerberosSecurityTokenAuthenticator.cs
- EntryPointNotFoundException.cs
- TimeSpanValidator.cs
- EndpointFilterProvider.cs
- NoPersistProperty.cs
- UTF8Encoding.cs
- storagemappingitemcollection.viewdictionary.cs
- ProfileSettingsCollection.cs
- ProcessModelSection.cs
- AccessText.cs
- BinaryObjectReader.cs
- IndependentlyAnimatedPropertyMetadata.cs
- SmuggledIUnknown.cs
- FieldAccessException.cs
- VBCodeProvider.cs
- ServicePoint.cs
- StyleBamlRecordReader.cs
- TableLayoutColumnStyleCollection.cs
- HtmlPanelAdapter.cs
- SqlClientWrapperSmiStreamChars.cs
- PropertyMetadata.cs
- RegularExpressionValidator.cs
- MarginCollapsingState.cs
- BoolLiteral.cs
- WorkflowInstanceUnhandledExceptionRecord.cs
- ToolStripArrowRenderEventArgs.cs
- Int64AnimationBase.cs
- RegexStringValidatorAttribute.cs
- GZipStream.cs
- SmiSettersStream.cs
- CustomError.cs
- TimeIntervalCollection.cs
- PropertyBuilder.cs
- EFDataModelProvider.cs
- FileSystemEnumerable.cs
- SecurityUtils.cs
- FillBehavior.cs
- XsdBuildProvider.cs
- DataGridViewComboBoxColumn.cs
- StreamInfo.cs
- FileFormatException.cs
- coordinatorfactory.cs
- IisTraceListener.cs
- UnsupportedPolicyOptionsException.cs
- StrokeRenderer.cs
- SqlDataSourceDesigner.cs
- IgnoreSectionHandler.cs
- WebPartEditorCancelVerb.cs
- MsmqHostedTransportConfiguration.cs
- Soap12ProtocolImporter.cs
- GroupJoinQueryOperator.cs
- MSAAEventDispatcher.cs
- QuaternionAnimationBase.cs
- NativeObjectSecurity.cs
- SafeMILHandle.cs