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
- CreateWorkflowOwnerCommand.cs
- SystemFonts.cs
- ModelVisual3D.cs
- ResourceExpressionEditor.cs
- PositiveTimeSpanValidator.cs
- SQLCharsStorage.cs
- TableProvider.cs
- WorkflowEventArgs.cs
- XPathPatternBuilder.cs
- CodeSnippetStatement.cs
- FixedDocument.cs
- XmlLoader.cs
- XmlQuerySequence.cs
- BookmarkEventArgs.cs
- EntityDataSourceSelectingEventArgs.cs
- XmlCustomFormatter.cs
- ValidationError.cs
- ToolStripRendererSwitcher.cs
- RewritingValidator.cs
- ContextDataSourceContextData.cs
- WebInvokeAttribute.cs
- SpellerInterop.cs
- KeySpline.cs
- RoleService.cs
- PropertySegmentSerializationProvider.cs
- OleDbErrorCollection.cs
- SchemaRegistration.cs
- Font.cs
- UpDownEvent.cs
- SqlDataSourceConfigureSortForm.cs
- SerializationStore.cs
- OLEDB_Util.cs
- ToolStripItemImageRenderEventArgs.cs
- EmbossBitmapEffect.cs
- Intellisense.cs
- _SSPIWrapper.cs
- SourceFileBuildProvider.cs
- OneToOneMappingSerializer.cs
- ThrowHelper.cs
- hwndwrapper.cs
- AttachmentService.cs
- CustomAssemblyResolver.cs
- OptimisticConcurrencyException.cs
- ResourcesBuildProvider.cs
- LayoutExceptionEventArgs.cs
- PasswordBox.cs
- loginstatus.cs
- SynchronizedDispatch.cs
- BufferedGraphicsContext.cs
- ContainerCodeDomSerializer.cs
- counter.cs
- FieldTemplateUserControl.cs
- SignerInfo.cs
- TargetControlTypeCache.cs
- BitmapPalette.cs
- TabletCollection.cs
- ClusterRegistryConfigurationProvider.cs
- SamlAdvice.cs
- CustomCategoryAttribute.cs
- DocumentSchemaValidator.cs
- DataTableMapping.cs
- CodeVariableDeclarationStatement.cs
- COM2PictureConverter.cs
- BezierSegment.cs
- ClipboardData.cs
- DataControlFieldCell.cs
- PathData.cs
- MethodSignatureGenerator.cs
- SmiEventStream.cs
- BackoffTimeoutHelper.cs
- XmlDataSourceView.cs
- WaitingCursor.cs
- HttpFileCollection.cs
- TemplateXamlParser.cs
- BooleanFunctions.cs
- TypeExtension.cs
- SecurityTokenTypes.cs
- CalendarKeyboardHelper.cs
- OutArgument.cs
- SystemResourceHost.cs
- WebConfigurationManager.cs
- PrinterSettings.cs
- SerialReceived.cs
- Int32AnimationBase.cs
- EditorZoneAutoFormat.cs
- ECDiffieHellmanCngPublicKey.cs
- ServiceModelExtensionElement.cs
- CompensableActivity.cs
- Vector3DValueSerializer.cs
- ServicesUtilities.cs
- METAHEADER.cs
- ApplicationDirectoryMembershipCondition.cs
- Propagator.Evaluator.cs
- DataTableReader.cs
- TreeNodeConverter.cs
- Vertex.cs
- oledbmetadatacolumnnames.cs
- PropertyAccessVisitor.cs
- XPathNavigatorReader.cs
- ForeignKeyFactory.cs