Esempio n. 1
0
        private static Validator <T> CreateValidator <T>(string ruleset, bool cacheValidator)
        {
            Validator <T> validator = null;

            if (cacheValidator)
            {
                lock (attributeAndDefaultConfigurationValidatorsCacheLock)
                {
                    Validator         validator2;
                    ValidatorCacheKey key = new ValidatorCacheKey(typeof(T), ruleset, true);
                    if (attributeAndDefaultConfigurationValidatorsCache.TryGetValue(key, out validator2))
                    {
                        return((Validator <T>)validator2);
                    }
                    validator = WrapAndInstrumentValidator <T>(InnerCreateValidatorFromAttributes(typeof(T), ruleset));
                    attributeAndDefaultConfigurationValidatorsCache[key] = validator;
                    return(validator);
                }
            }
            return(WrapAndInstrumentValidator <T>(InnerCreateValidatorFromAttributes(typeof(T), ruleset)));
        }
Esempio n. 2
0
        public static Validator CreateValidatorFromAttributes(Type targetType, string ruleset)
        {
            if (ruleset == null)
            {
                throw new ArgumentNullException("ruleset");
            }
            Validator validator = null;

            lock (attributeOnlyValidatorsCacheLock)
            {
                Validator         validator2;
                ValidatorCacheKey key = new ValidatorCacheKey(targetType, ruleset, false);
                if (attributeOnlyValidatorsCache.TryGetValue(key, out validator2))
                {
                    return(validator2);
                }
                validator = WrapAndInstrumentValidator(InnerCreateValidatorFromAttributes(targetType, ruleset));
                attributeOnlyValidatorsCache[key] = validator;
            }
            return(validator);
        }
Esempio n. 3
0
        public static Validator CreateValidatorFromAttributes(Type targetType, string ruleset)
        {
            if (ruleset == null)
            {
                throw new ArgumentNullException("ruleset");
            }
            Validator validator = null;

            lock (ValidationFactory.attributeOnlyValidatorsCacheLock)
            {
                ValidatorCacheKey key    = new ValidatorCacheKey(targetType, ruleset, false);
                Validator         result = default(Validator);
                if (ValidationFactory.attributeOnlyValidatorsCache.TryGetValue(key, out result))
                {
                    return(result);
                }
                Validator validator2 = ValidationFactory.InnerCreateValidatorFromAttributes(targetType, ruleset);
                validator = ValidationFactory.WrapAndInstrumentValidator(validator2);
                ValidationFactory.attributeOnlyValidatorsCache[key] = validator;
                return(validator);
            }
        }
Esempio n. 4
0
        public static Validator <T> CreateValidatorFromAttributes <T>(string ruleset)
        {
            if (ruleset == null)
            {
                throw new ArgumentNullException("ruleset");
            }
            Validator <T> validator = null;

            lock (ValidationFactory.attributeOnlyValidatorsCacheLock)
            {
                ValidatorCacheKey key        = new ValidatorCacheKey(typeof(T), ruleset, true);
                Validator         validator2 = default(Validator);
                if (ValidationFactory.attributeOnlyValidatorsCache.TryGetValue(key, out validator2))
                {
                    return((Validator <T>)validator2);
                }
                Validator validator3 = ValidationFactory.InnerCreateValidatorFromAttributes(typeof(T), ruleset);
                validator = ValidationFactory.WrapAndInstrumentValidator <T>(validator3);
                ValidationFactory.attributeOnlyValidatorsCache[key] = validator;
                return(validator);
            }
        }
Esempio n. 5
0
        private static Validator <T> CreateValidator <T>(string ruleset, bool cacheValidator)
        {
            Validator <T> validator = null;

            if (cacheValidator)
            {
                lock (ValidationFactory.attributeAndDefaultConfigurationValidatorsCacheLock)
                {
                    ValidatorCacheKey key        = new ValidatorCacheKey(typeof(T), ruleset, true);
                    Validator         validator2 = default(Validator);
                    if (ValidationFactory.attributeAndDefaultConfigurationValidatorsCache.TryGetValue(key, out validator2))
                    {
                        return((Validator <T>)validator2);
                    }
                    Validator validator3 = ValidationFactory.InnerCreateValidatorFromAttributes(typeof(T), ruleset);
                    validator = ValidationFactory.WrapAndInstrumentValidator <T>(validator3);
                    ValidationFactory.attributeAndDefaultConfigurationValidatorsCache[key] = validator;
                    return(validator);
                }
            }
            Validator validator4 = ValidationFactory.InnerCreateValidatorFromAttributes(typeof(T), ruleset);

            return(ValidationFactory.WrapAndInstrumentValidator <T>(validator4));
        }
Esempio n. 6
0
        private static Validator CreateValidator(Type targetType, string ruleset, bool cacheValidator)
        {
            Validator validator = null;

            if (cacheValidator)
            {
                lock (ValidationFactory.attributeAndDefaultConfigurationValidatorsCacheLock)
                {
                    ValidatorCacheKey key    = new ValidatorCacheKey(targetType, ruleset, false);
                    Validator         result = default(Validator);
                    if (ValidationFactory.attributeAndDefaultConfigurationValidatorsCache.TryGetValue(key, out result))
                    {
                        return(result);
                    }
                    Validator validator2 = ValidationFactory.InnerCreateValidatorFromAttributes(targetType, ruleset);
                    validator = ValidationFactory.WrapAndInstrumentValidator(validator2);
                    ValidationFactory.attributeAndDefaultConfigurationValidatorsCache[key] = validator;
                    return(validator);
                }
            }
            Validator validator3 = ValidationFactory.InnerCreateValidatorFromAttributes(targetType, ruleset);

            return(ValidationFactory.WrapAndInstrumentValidator(validator3));
        }