Exemple #1
0
        private IClaptrapDesignStore ValidateStore(
            IClaptrapDesignStore claptrapDesignStore,
            IClaptrapDesignStoreValidator validator)
        {
            _logger.LogDebug(_l.Value[LK.start_to_validate_all_design_in_claptrap_design_store]);
            var(isOk, errorMessage) = validator.Validate(claptrapDesignStore);
            if (!isOk)
            {
                throw new ClaptrapDesignStoreValidationFailException(errorMessage);
            }

            _logger.LogInformation(_l.Value[LK.all_design_validated_ok]);
            return(claptrapDesignStore);
        }
        private IClaptrapDesignStore CreateClaptrapDesignStore(
            IClaptrapDesignStoreFactory factory,
            IClaptrapDesignStoreValidator validator,
            IEnumerable <Type> types)
        {
            foreach (var provider in Options.ClaptrapDesignStoreProviders)
            {
                _logger.LogDebug(_l.Value[LK.add__provider__as_claptrap_design_provider], provider);
                factory.AddProvider(provider);
            }

            var typeArray = types as Type[] ?? types.ToArray();

            _logger.LogDebug(_l.Value[LK.start_to_scan__assemblyArrayCount__types], typeArray.Length);
            _logger.LogDebug(_l.Value[LK.start_to_create_claptrap_design]);
            var claptrapDesignStore = factory.Create(typeArray);

            _logger.LogInformation(_l.Value[LK.claptrap_design_store_created__start_to_configure_it]);
            _logger.LogDebug(_l.Value[LK.all_designs____designs_],
                             JsonConvert.SerializeObject(claptrapDesignStore.ToArray()));

            foreach (var configurator in Options.ClaptrapDesignStoreConfigurators)
            {
                _logger.LogDebug(_l.Value[LK.start_to_configure_claptrap_design_store_by__configurator_], configurator);
                configurator.Configure(claptrapDesignStore);
            }

            _logger.LogInformation(_l.Value[LK.found__actorCount__claptrap_designs],
                                   claptrapDesignStore.Count());
            _logger.LogDebug(_l.Value[LK.all_designs_after_configuration___designs_],
                             JsonConvert.SerializeObject(claptrapDesignStore.ToArray()));

            _logger.LogDebug(_l.Value[LK.start_to_validate_all_design_in_claptrap_design_store]);
            var(isOk, errorMessage) = validator.Validate(claptrapDesignStore);
            if (!isOk)
            {
                throw new ClaptrapDesignStoreValidationFailException(errorMessage);
            }

            _logger.LogInformation(_l.Value[LK.all_design_validated_ok]);
            return(claptrapDesignStore);
        }
        private IClaptrapDesignStore CreateClaptrapDesignStore(
            IClaptrapDesignStoreFactory factory,
            IClaptrapDesignStoreValidator validator,
            IEnumerable <Type> types)
        {
            foreach (var provider in Options.ClaptrapDesignStoreProviders)
            {
                _logger.LogDebug(_l.Value[L002AddProviderAsClaptrapDesignProvider], provider);
                factory.AddProvider(provider);
            }

            var typeArray = types as Type[] ?? types.ToArray();

            _logger.LogDebug(_l.Value[L003StartToScan], typeArray.Length);
            _logger.LogDebug(_l.Value[L004StartToCreateClaptrapDesign]);
            var claptrapDesignStore = factory.Create(typeArray);

            _logger.LogInformation(_l.Value[L005ClaptrapStoreCreated]);
            _logger.LogDebug(_l.Value[L006ShowAllDesign],
                             JsonConvert.SerializeObject(claptrapDesignStore.ToArray()));

            foreach (var configurator in Options.ClaptrapDesignStoreConfigurators)
            {
                _logger.LogDebug(_l.Value[L007StartToConfigureDesignStore], configurator);
                configurator.Configure(claptrapDesignStore);
            }

            _logger.LogInformation(_l.Value[L008CountDesigns],
                                   claptrapDesignStore.Count());
            _logger.LogDebug(_l.Value[L009ShowDesignsAfterConfiguration],
                             JsonConvert.SerializeObject(claptrapDesignStore.ToArray()));

            _logger.LogDebug(_l.Value[L010StartToValidateDesigns]);
            var(isOk, errorMessage) = validator.Validate(claptrapDesignStore);
            if (!isOk)
            {
                throw new ClaptrapDesignStoreValidationFailException(errorMessage);
            }

            _logger.LogInformation(_l.Value[L011DesignValidationSuccess]);
            return(claptrapDesignStore);
        }