VerificationAttribute.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / VerificationAttribute.cs / 1305376 / VerificationAttribute.cs

                            //------------------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
//----------------------------------------------------------------------------- 

namespace System.Web.UI { 
 
    using System;
    using System.ComponentModel; 

    [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property, AllowMultiple=true)]
    public sealed class VerificationAttribute : Attribute {
 
        private string _guideline;       //  "WCAG 1.1", "ADA508"
        private string _checkpoint;      //10.1: in rule and used by checker 
        private VerificationReportLevel _reportLevel;//VerificationReportLevel.Error| Warning| Guideline 
        private int _priority;           //1,2,3,4
        private string _message;         //"something is in error" 
        private VerificationRule _rule;  //VerificationRule.Required | Prohibited
        private string _conditionalProperty; //"foo"
        private VerificationConditionalOperator _conditionalOperator; //VerificationConditionalOperator.Equals | NotEquals
        private string _conditionalValue; //eg. String.Empty 
        private string _guidelineUrl;
 
        /* minimal constructor 
         * implies  VerificationRule.Equals
         *          ConditionalProperty = String.Empty 
         *          VerificationConditionalOperator.Equals
         *          ConditionalValue = String.Empty
         *          GuidelineUrl = String.Empty
         */ 
        public VerificationAttribute (
                    string guideline, 
                    string checkpoint, 
                    VerificationReportLevel reportLevel,
                    int priority, 
                    string message) :
                        this(guideline,
                             checkpoint,
                             reportLevel, 
                             priority,
                             message, 
                             VerificationRule.Required, /*VerificationRule*/ 
                             String.Empty, /*ConditionalProperty*/
                             VerificationConditionalOperator.Equals, 
                             String.Empty, /*ConditionalValue*/
                             String.Empty /*GuidelineUrl*/) {
        }
 
        /* constructor that implies
         *      ConditionalProperty = String.Empty 
         *      VerificationConditionalOperator.Equals 
         *      ConditionalValue = String.Empty
         *      GuidelineUrl = String.Empty 
         */
        /*
        public VerificationAttribute (
                    string guideline, 
                    string checkpoint,
                    VerificationReportLevel reportLevel, 
                    int priority, 
                    string message,
                    VerificationRule rule) : 
                        this(guideline,
                             checkpoint,
                             reportLevel,
                             priority, 
                             message,
                             rule, 
                             String.Empty, //ConditionalProperty 
                             VerificationConditionalOperator.Equals,
                             String.Empty, //ConditionalValue 
                             String.Empty) { //GuidelineUrl
        }

        */ 

        /*specifying just a ConditionalProperty implies: 
         *      VerificationConditionalOperator.NotEquals 
         *      ConditionalValue = String.Empty
         *      GuidelineUrl = String.Empty 
         */
        public VerificationAttribute (
                    string guideline,
                    string checkpoint, 
                    VerificationReportLevel reportLevel,
                    int priority, 
                    string message, 
                    VerificationRule rule,
                    string conditionalProperty) : 
                        this(guideline,
                             checkpoint,
                             reportLevel,
                             priority, 
                             message,
                             rule, 
                             conditionalProperty, 
                             VerificationConditionalOperator.NotEquals,
                             String.Empty, /*ConditionalValue*/ 
                             String.Empty /*GuidelineUrl*/) {
        }

        /*implies GuidelineUrl = String.Empty */ 
        internal VerificationAttribute (
                    string guideline, 
                    string checkpoint, 
                    VerificationReportLevel reportLevel,
                    int priority, 
                    string message,
                    VerificationRule rule,
                    string conditionalProperty,
                    VerificationConditionalOperator conditionalOperator, 
                    string conditionalValue) :
                        this(guideline, 
                             checkpoint, 
                             reportLevel,
                             priority, 
                             message,
                             rule,
                             conditionalProperty,
                             conditionalOperator, 
                             conditionalValue,
                             String.Empty /*GuidelineUrl*/) { 
        } 

        public VerificationAttribute( 
                    string guideline,
                    string checkpoint,
                    VerificationReportLevel reportLevel,
                    int priority, 
                    string message,
                    VerificationRule rule, 
                    string conditionalProperty, 
                    VerificationConditionalOperator conditionalOperator,
                    string conditionalValue, 
                    string guidelineUrl) {

                _guideline = guideline;
                _checkpoint = checkpoint; 
                _reportLevel = reportLevel;
                _priority = priority; 
                _message = message; 
                _rule = rule;
                _conditionalProperty = conditionalProperty; 
                _conditionalOperator = conditionalOperator;
                _conditionalValue = conditionalValue;
                _guidelineUrl = guidelineUrl;
        } 

        private VerificationAttribute() { 
        } 

        //WCAG 1.1, ADA508, etc. 
        public string Guideline {
            get {
                return _guideline;
            } 
        }
 
        //10.1,  12.4, etc. 
        public string Checkpoint {
            get { 
                return _checkpoint;
            }
        }
 
        //VerificationReportLevel.Error | Warning | Guideline
        public VerificationReportLevel VerificationReportLevel { 
            get { 
                return _reportLevel;
            } 
        }

        //1, 2, 3, 4, etc.
        public int Priority { 
            get {
                return _priority; 
            } 
        }
 
        //message to use if verification rule is true
        public string Message {
            get {
                return _message; 
            }
        } 
 
        //VerificationRule.Required | Prohibited
        public VerificationRule VerificationRule { 
            get {
                return _rule;
            }
        } 

        //name of other control property to condition the assertion 
        //used as lhs of conditional expression 
        public string ConditionalProperty {
            get { 
                return _conditionalProperty;
            }
        }
 
        //VerificationConditionalOperator.Equals | NotEquals
        //operator to apply to condition statement 
        public VerificationConditionalOperator VerificationConditionalOperator { 
            get {
                return _conditionalOperator; 
            }
        }

        //value to use as rhs in conditional expression 
        public string ConditionalValue {
            get { 
                return _conditionalValue; 
            }
        } 

        public string GuidelineUrl {
            get {
                return _guidelineUrl; 
            }
        } 
    } 

    public enum VerificationRule { 
        Required,
        Prohibited,
        NotEmptyString
    } 

    public enum VerificationReportLevel { 
        Error, 
        Warning,
        Guideline 
    }

    public enum VerificationConditionalOperator {
        Equals, 
        NotEquals
    } 
} 


// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK