private IEnumerable <TypeRegistration> CreateCryptographyManagerRegistrations(IConfigurationSource configurationSource)
        {
            var hashProviderNames      = (from data in HashProviders select data.Name).ToArray();
            var algorithmProviderNames = (from data in SymmetricCryptoProviders select data.Name).ToArray();

            var instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            yield return(new TypeRegistration <IDefaultCryptographyInstrumentationProvider>(
                             () => new DefaultCryptographyEventLogger(instrumentationSection.PerformanceCountersEnabled,
                                                                      instrumentationSection.EventLoggingEnabled,
                                                                      instrumentationSection.ApplicationInstanceName))
            {
                Lifetime = TypeRegistrationLifetime.Transient,
                IsDefault = true
            });

            yield return(new TypeRegistration <CryptographyManager>(() =>
                                                                    new CryptographyManagerImpl(
                                                                        hashProviderNames,
                                                                        Container.ResolvedEnumerable <IHashProvider>(hashProviderNames),
                                                                        algorithmProviderNames,
                                                                        Container.ResolvedEnumerable <ISymmetricCryptoProvider>(algorithmProviderNames),
                                                                        Container.Resolved <IDefaultCryptographyInstrumentationProvider>()))
            {
                IsDefault = true,
                IsPublicName = true
            });
        }
        private TypeRegistration GetDefaultDataEventLoggerRegistration()
        {
            var instrumentationConfigurationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            return(new TypeRegistration <DefaultDataEventLogger>(
                       () => new DefaultDataEventLogger(instrumentationConfigurationSection.EventLoggingEnabled))
            {
                IsDefault = true
            });
        }
        private static TypeRegistration GetInstrumentationProviderRegistration(
            string instanceName,
            IConfigurationSource configurationSource)
        {
            InstrumentationConfigurationSection             instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);
            TypeRegistration <IDataInstrumentationProvider> typeRegistration       = new TypeRegistration <IDataInstrumentationProvider>((Expression <Func <IDataInstrumentationProvider> >)(() => new NewDataInstrumentationProvider(instanceName, instrumentationSection.PerformanceCountersEnabled, instrumentationSection.EventLoggingEnabled, instrumentationSection.ApplicationInstanceName)));

            typeRegistration.Name = instanceName;
            return((TypeRegistration)typeRegistration);
        }
        ///<summary>
        ///</summary>
        ///<param name="configurationSource"></param>
        ///<returns></returns>
        public static IValidationInstrumentationProvider FromConfigurationSource(IConfigurationSource configurationSource)
        {
            var instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            return(new ValidationInstrumentationProvider(
                       instrumentationSection.PerformanceCountersEnabled,
                       instrumentationSection.EventLoggingEnabled,
                       instrumentationSection.ApplicationInstanceName
                       ));
        }
Пример #5
0
        private IEnumerable <TypeRegistration> GetDefaultSecurityEventLoggerRegistrations(IConfigurationSource configurationSource)
        {
            var instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            yield return(new TypeRegistration <DefaultSecurityEventLogger>(
                             () => new DefaultSecurityEventLogger(instrumentationSection.EventLoggingEnabled))
            {
                Lifetime = TypeRegistrationLifetime.Transient,
                IsDefault = true
            });
        }
Пример #6
0
        private static TypeRegistration CreateDefaultLoggingEventLoggerRegistration(IConfigurationSource configurationSource)
        {
            var instrumentationSettings = InstrumentationConfigurationSection.GetSection(configurationSource);

            return
                (new TypeRegistration <DefaultLoggingEventLogger>(() =>
                                                                  new DefaultLoggingEventLogger(instrumentationSettings.EventLoggingEnabled))
            {
                Lifetime = TypeRegistrationLifetime.Transient,
                IsDefault = true
            });
        }
        /// <summary>
        /// Return the <see cref="TypeRegistration"/> objects needed to configure
        /// the container for the Validation Application Block.
        /// </summary>
        /// <param name="configurationSource">The <see cref="IConfigurationSource"/> used when creating the <see cref="TypeRegistration{T}"/> entries.</param>
        /// <returns>The sequence of <see cref="TypeRegistration"/> objects.</returns>
        public IEnumerable <TypeRegistration> GetRegistrations(IConfigurationSource configurationSource)
        {
            IConfigurationSource availableConfigurationSource = configurationSource ??
                                                                ConfigurationSourceFactory.Create();

            var instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            yield return(new TypeRegistration <IValidationInstrumentationProvider>(
                             () => new ValidationInstrumentationProvider(
                                 instrumentationSection.PerformanceCountersEnabled,
                                 instrumentationSection.EventLoggingEnabled,
                                 instrumentationSection.ApplicationInstanceName))
            {
                IsDefault = true
            });

            yield return(new TypeRegistration <AttributeValidatorFactory>(
                             () => new AttributeValidatorFactory(
                                 Container.Resolved <IValidationInstrumentationProvider>()))
            {
                IsDefault = true, IsPublicName = true
            });

            yield return(new TypeRegistration <ConfigurationValidatorFactory>(
                             () =>
                             new ConfigurationValidatorFactory(
                                 availableConfigurationSource,
                                 Container.Resolved <IValidationInstrumentationProvider>()))
            {
                IsDefault = true, IsPublicName = true
            });

            yield return(new TypeRegistration <ValidationAttributeValidatorFactory>(
                             () => new ValidationAttributeValidatorFactory(
                                 Container.Resolved <IValidationInstrumentationProvider>()))
            {
                IsDefault = true, IsPublicName = true
            });

            yield return(new TypeRegistration <ValidatorFactory>(
                             () =>
                             new CompositeValidatorFactory(
                                 Container.Resolved <IValidationInstrumentationProvider>(),
                                 Container.Resolved <AttributeValidatorFactory>(),
                                 Container.Resolved <ConfigurationValidatorFactory>(),
                                 Container.Resolved <ValidationAttributeValidatorFactory>())
                             )
            {
                IsDefault = true, IsPublicName = true
            });
        }
Пример #8
0
        private TypeRegistration GetInstrumentationRegistration(IConfigurationSource configurationSource)
        {
            var instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            return(new TypeRegistration <IExceptionHandlingInstrumentationProvider>(
                       () => new ExceptionHandlingInstrumentationProvider(Name,
                                                                          instrumentationSection.PerformanceCountersEnabled,
                                                                          instrumentationSection.EventLoggingEnabled,
                                                                          instrumentationSection.ApplicationInstanceName))
            {
                Name = Name,
                Lifetime = TypeRegistrationLifetime.Transient
            });
        }
        private static TypeRegistration GetInstrumentationProviderRegistration(string instanceName, IConfigurationSource configurationSource)
        {
            var instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            return(new TypeRegistration <IDataInstrumentationProvider>(
                       () => new NewDataInstrumentationProvider(
                           instanceName,
                           instrumentationSection.PerformanceCountersEnabled,
                           instrumentationSection.EventLoggingEnabled,
                           instrumentationSection.ApplicationInstanceName))
            {
                Name = instanceName
            });
        }
Пример #10
0
        private static IEnumerable <TypeRegistration> GetDefaultEventLoggerRegistrations(IConfigurationSource configurationSource)
        {
            var instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            return(new TypeRegistration[]
            {
                new TypeRegistration <DefaultCachingEventLogger>(
                    () =>
                    new DefaultCachingEventLogger(instrumentationSection.EventLoggingEnabled))
                {
                    IsDefault = true
                }
            });
        }
Пример #11
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="configurationSource"></param>
        /// <returns></returns>
        protected TypeRegistration GetInstrumentationProviderRegistration(IConfigurationSource configurationSource)
        {
            var instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            return(new TypeRegistration <ISecurityCacheProviderInstrumentationProvider>(
                       () => new SecurityCacheProviderInstrumentationProvider(
                           Name,
                           instrumentationSection.PerformanceCountersEnabled,
                           instrumentationSection.EventLoggingEnabled,
                           instrumentationSection.ApplicationInstanceName))
            {
                Name = Name,
                Lifetime = TypeRegistrationLifetime.Transient
            });
        }
Пример #12
0
        private static TypeRegistration CreateTracerInstrumentationProviderRegistration(IConfigurationSource configurationSource)
        {
            var instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            return
                (new TypeRegistration <ITracerInstrumentationProvider>(() =>
                                                                       new TracerInstrumentationProvider(
                                                                           instrumentationSection.PerformanceCountersEnabled,
                                                                           instrumentationSection.EventLoggingEnabled,
                                                                           instrumentationSection.ApplicationInstanceName))
            {
                Lifetime = TypeRegistrationLifetime.Transient,
                IsDefault = true
            });
        }
        private static IEnumerable <TypeRegistration> GetDefaultInstrumentationRegistrations(IConfigurationSource configurationSource)
        {
            var instrumentationSection = InstrumentationConfigurationSection.GetSection(configurationSource);

            yield return(new TypeRegistration <DefaultExceptionHandlingEventLogger>(
                             () => new DefaultExceptionHandlingEventLogger(instrumentationSection.EventLoggingEnabled))
            {
                Lifetime = TypeRegistrationLifetime.Transient,
                IsDefault = true
            });

            yield return(new TypeRegistration <IDefaultExceptionHandlingInstrumentationProvider>(
                             () => new DefaultExceptionHandlingEventLogger(
                                 instrumentationSection.PerformanceCountersEnabled,
                                 instrumentationSection.EventLoggingEnabled,
                                 instrumentationSection.ApplicationInstanceName))
            {
                Lifetime = TypeRegistrationLifetime.Transient,
                IsDefault = true
            });
        }
        private TypeRegistration GetDefaultDataEventLoggerRegistration()
        {
            InstrumentationConfigurationSection       instrumentationConfigurationSection = InstrumentationConfigurationSection.GetSection(this.configurationSource);
            TypeRegistration <DefaultDataEventLogger> typeRegistration = new TypeRegistration <DefaultDataEventLogger>((Expression <Func <DefaultDataEventLogger> >)(() => new DefaultDataEventLogger(instrumentationConfigurationSection.EventLoggingEnabled)));

            typeRegistration.IsDefault = true;
            return((TypeRegistration)typeRegistration);
        }