Exemplo n.º 1
0
        public void SetSettingsWorksAsExpected()
        {
            // --- Arrange
            const string KEY      = "TypeResolverBackup";
            var          settings = new TypeResolverConfigurationSettings(new List <string> {
                "System"
            },
                                                                          new List <string> {
                "TypeResolution"
            });
            var provider = new AppConfigProvider();

            // --- Act
            provider.SetSetting(KEY, settings);

            // --- Assert
            ConfigurationManager.RefreshSection(KEY);
            var config = ConfigurationManager.GetSection(KEY) as XElement;

            config.ShouldNotBeNull();
            settings = new TypeResolverConfigurationSettings(config);
            settings.AssemblyNames.ShouldHaveCountOf(1);
            settings.AssemblyNames[0].ShouldEqual("System");
            settings.Namespaces.ShouldHaveCountOf(1);
            settings.Namespaces[0].ShouldEqual("TypeResolution");
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            var rand = new Random();

            var paramsProvider = new AppConfigProvider(ConfigurationManager.AppSettings);
            var configProvider = new ConfigurationProvider();
            var configFactory = new ConfigurationFactory(new ClientParams(paramsProvider), configProvider);

            var clientConfig = configFactory.Create<ClientConfiguration>();
            clientConfig.Port = rand.Next()%1000 + 25000;

            LogManager.Debug("Address is : 127.0.0.1:{0}", clientConfig.Port);

            var client = new Client(clientConfig);

            client.Start(Console.ReadLine(), () =>
            {
                var small = SmallTestObject.Create();
                while (true)
                {
                    var key = Console.ReadKey();
                    if (key.Key == ConsoleKey.Enter)
                        break;

                    small.Message = key.KeyChar.ToString();
                    client.SendObject(small);
                }
            });
        }
Exemplo n.º 3
0
        public void TestUnexistingKeyReturnsNull()
        {
            _manager = new AppConfigProvider();

            var value = _manager.Get("nonExisting");
            Assert.IsNull(value);
        }
Exemplo n.º 4
0
 public ClientScriptRegistry(ClientScriptResourceHandler clientScriptResourceHandler, AppConfigProvider appConfigProvider, IEqualityComparer <ClientScriptResource> resourceEqualityComparer, DependencyGraphProvider dependencyGraphProvider)
 {
     ClientScriptResourceHandler = clientScriptResourceHandler;
     AppConfigProvider           = appConfigProvider;
     ResourceEqualityComparer    = resourceEqualityComparer;
     DependencyGraphProvider     = dependencyGraphProvider;
 }
Exemplo n.º 5
0
        internal bool ActivationSwitchMatch(MemberInfo objectToCheck, AppConfigProvider provider)
        {
            var attrs =
                objectToCheck.GetCustomAttributes(typeof(ActivationSwitchAttribute), true).Cast
                <ActivationSwitchAttribute>();

            return(ActivationSwitchMatch(attrs, provider));
        }
Exemplo n.º 6
0
        public void GetSettingValueRaisesExceptionWithMissingSection()
        {
            // --- Arrange
            const string KEY = "missingSection";
            var provider = new AppConfigProvider();

            // --- Act
            provider.GetSetting<AppConfigurationSettings>(KEY);
        }
Exemplo n.º 7
0
        public void GetSettingValueRaisesExceptionWithMissingSection()
        {
            // --- Arrange
            const string KEY      = "missingSection";
            var          provider = new AppConfigProvider();

            // --- Act
            provider.GetSetting <AppConfigurationSettings>(KEY);
        }
Exemplo n.º 8
0
        static void Main(string[] args)
        {
            var paramsProvider = new AppConfigProvider(ConfigurationManager.AppSettings);
            var configProvider = new ConfigurationProvider();

            var factory = new ConfigurationFactory(new ServerParams(paramsProvider), configProvider);

            using(var server = new Server(factory.Create<ServerConfiguration>()))
                server.Listen();
        }
Exemplo n.º 9
0
 public Guards(
     ICachedShippingMethodCollectionProvider cachedShippingMethodCollectionProvider,
     GiftCardManager giftCardManager,
     AppConfigProvider appConfigProvider,
     ICheckoutAccountStatusProvider checkoutAccountStatusProvider)
 {
     CachedShippingMethodCollectionProvider = cachedShippingMethodCollectionProvider;
     GiftCardManager               = giftCardManager;
     AppConfigProvider             = appConfigProvider;
     CheckoutAccountStatusProvider = checkoutAccountStatusProvider;
 }
Exemplo n.º 10
0
 public SagePayPiController(
     NoticeProvider noticeProvider,
     IPaymentOptionProvider paymentOptionProvider,
     IPersistedCheckoutContextProvider persistedCheckoutContextProvider,
     IStringResourceProvider stringResourceProvider,
     AppConfigProvider appConfigProvider)
 {
     NoticeProvider                   = noticeProvider;
     PaymentOptionProvider            = paymentOptionProvider;
     PersistedCheckoutContextProvider = persistedCheckoutContextProvider;
     StringResourceProvider           = stringResourceProvider;
     AppConfigProvider                = appConfigProvider;
 }
Exemplo n.º 11
0
        public void IsSettingValueDefinedWorksAsExpected()
        {
            // --- Arrange
            var provider = new AppConfigProvider();

            // --- Act
            var test1 = provider.IsValueDefined("setting1");
            var test2 = provider.IsValueDefined("nonExisting");

            // --- Assert
            test1.ShouldBeTrue();
            test2.ShouldBeFalse();
        }
Exemplo n.º 12
0
        public void IsSeectionDefinedWorksAsExpected()
        {
            // --- Arrange
            var provider = new AppConfigProvider();

            // --- Act
            var test1 = provider.IsSettingDefined("TypeResolver");
            var test2 = provider.IsSettingDefined("nonExisting");

            // --- Assert
            test1.ShouldBeTrue();
            test2.ShouldBeFalse();
        }
Exemplo n.º 13
0
        public void IsSeectionDefinedWorksAsExpected()
        {
            // --- Arrange
            var provider = new AppConfigProvider();

            // --- Act
            var test1 = provider.IsSettingDefined("TypeResolver");
            var test2 = provider.IsSettingDefined("nonExisting");

            // --- Assert
            test1.ShouldBeTrue();
            test2.ShouldBeFalse();
        }
 public CheckoutShippingSelectionDependencyStateManager(
     AppConfigProvider appConfigProvider,
     ICheckoutSelectionProvider checkoutSelectionProvider,
     IPersistedCheckoutContextProvider persistedCheckoutContextProvider,
     IPaymentMethodInfoProvider paymentMethodInfoProvider,
     HashProvider hashProvider)
 {
     AppConfigProvider                = appConfigProvider;
     CheckoutSelectionProvider        = checkoutSelectionProvider;
     PersistedCheckoutContextProvider = persistedCheckoutContextProvider;
     PaymentMethodInfoProvider        = paymentMethodInfoProvider;
     HashProvider = hashProvider;
 }
 public ThreeDSecureController(
     ICachedShoppingCartProvider cachedShoppingCartProvider,
     NoticeProvider noticeProvider,
     IPersistedCheckoutContextProvider persistedCheckoutContextProvider,
     IStringResourceProvider stringResourceProvider,
     AppConfigProvider appConfigProvider)
 {
     CachedShoppingCartProvider       = cachedShoppingCartProvider;
     NoticeProvider                   = noticeProvider;
     PersistedCheckoutContextProvider = persistedCheckoutContextProvider;
     StringResourceProvider           = stringResourceProvider;
     AppConfigProvider                = appConfigProvider;
 }
Exemplo n.º 16
0
        public void IsSettingValueDefinedWorksAsExpected()
        {
            // --- Arrange
            var provider = new AppConfigProvider();

            // --- Act
            var test1 = provider.IsValueDefined("setting1");
            var test2 = provider.IsValueDefined("nonExisting");

            // --- Assert
            test1.ShouldBeTrue();
            test2.ShouldBeFalse();
        }
Exemplo n.º 17
0
 public AccountController(NoticeProvider noticeProvider,
                          IClaimsIdentityProvider claimsIdentityProvider,
                          CaptchaStorageService captchaStorageService,
                          SendWelcomeEmailProvider sendWelcomeEmailProvider,
                          AppConfigProvider appConfigProvider)
 {
     Settings                 = new AccountSettings();
     ControllerHelper         = new AccountControllerHelper(Settings);
     NoticeProvider           = noticeProvider;
     ClaimsIdentityProvider   = claimsIdentityProvider;
     CaptchaStorageService    = captchaStorageService;
     SendWelcomeEmailProvider = sendWelcomeEmailProvider;
     AppConfigProvider        = appConfigProvider;
 }
Exemplo n.º 18
0
        public void TestNoProviderReturnsEmptyString()
        {
            try
            {
                _manager = new AppConfigProvider();
                ConfigurationManager.AppSettings["existingKey"] = "myValue";
                var value = _manager.Get("existingKey");
                Assert.AreEqual("myValue", value);
            }
            finally
            {
                ConfigurationManager.AppSettings["existingKey"] = null;
            }

        }
Exemplo n.º 19
0
        public void SetSettingValueWorksWithNewSettingName()
        {
            // --- Arrange
            const string KEY      = "newTestSetting";
            const string VALUE    = "testValue";
            var          provider = new AppConfigProvider();

            // --- Act
            provider.SetValue(KEY, VALUE);

            // --- Assert
            ConfigurationManager.RefreshSection("appSettings");
            var value = ConfigurationManager.AppSettings[KEY];

            value.ShouldEqual(VALUE);
        }
Exemplo n.º 20
0
        List <IService> LoadService(string[] files)
        {
            List <IService> serviceList = new List <IService>();

            foreach (string cfg in files)
            {
                AppConfigProvider provider = new AppConfigProvider(cfg);
                if (!provider.CanAccess)
                {
                    provider.Dispose();
                    //winLOG.Write($"加载服务:[{Path.GetFileNameWithoutExtension(cfg)}]失败,配置文件不可读!");
                    continue;
                }

                IConfig setting = new IConfig();
                setting.Initialize(provider);
                setting.Name = Path.GetFileNameWithoutExtension(cfg);
                IService service;

                #region 加载终端数据解释器
                if (setting.ServiceAssembly == null || setting.ServiceAssembly == string.Empty)
                {
                    throw new Exception($"解析服务[{setting.Name},必须加载服务配置ServiceAssembly!");
                }
                else
                {
                    try
                    {
                        service = (IService)AssemblyHelper.CreateInstance(setting.ServiceAssembly.Split(','));
                        if (service == null)
                        {
                            throw new Exception($"解析服务[{setting.Name},无法加载!找不到指定的程序集:{setting.ServiceAssembly}");
                        }
                        service.Initialize(provider);
                    }
                    catch (Exception ex)
                    {
                        throw new Exception($"解析服务[{setting.Name},在加载时发生错误!", ex);
                    }
                }
                #endregion

                serviceList.Add(service);
            }
            return(serviceList);
        }
Exemplo n.º 21
0
        private static List <DataSyncService> LoadService(string[] files)
        {
            List <DataSyncService> serviceList = new List <DataSyncService>();

            foreach (string cfg in files)
            {
                AppConfigProvider provider = new AppConfigProvider(cfg);
                if (!provider.CanAccess)
                {
                    provider.Dispose();
                    //log.Debug(string.Format("加载服务:[{0}]失败,配置文件不可读!", Path.GetFileNameWithoutExtension(cfg)));
                    continue;
                }

                Setting setting = new Setting();
                setting.Initialize(provider);
                setting.Name = Path.GetFileNameWithoutExtension(cfg);
                DataSyncService service;

                #region 加载终端数据解释器
                if (setting.ServiceAssembly == null || setting.ServiceAssembly == string.Empty)
                {
                    throw new Exception("解析服务[{0},必须加载服务配置ServiceAssembly!".format(setting.Name));
                }
                else
                {
                    try
                    {
                        service = (DataSyncService)AssemblyHelper.CreateInstance(setting.ServiceAssembly.Split(','));
                        if (service == null)
                        {
                            throw new Exception("解析服务[{0},无法加载!找不到指定的程序集:{1}".format(setting.Name, setting.ServiceAssembly));
                        }
                        service.Initialize(provider);
                    }
                    catch (Exception ex)
                    {
                        throw new Exception("解析服务[{0},在加载时发生错误!".format(setting.Name), ex);
                    }
                }
                #endregion

                serviceList.Add(service);
            }
            return(serviceList);
        }
 public CheckoutShippingMethodController(
     ICachedShippingMethodCollectionProvider cachedShippingMethodCollectionProvider,
     ICachedShoppingCartProvider cachedShoppingCartProvider,
     IEffectiveShippingAddressProvider effectiveShippingAddressProvider,
     NoticeProvider noticeProvider,
     IPersistedCheckoutContextProvider persistedCheckoutContextProvider,
     IShippingMethodCartItemApplicator shippingMethodCartItemApplicator,
     IStringResourceProvider stringResourceProvider,
     AppConfigProvider appConfigProvider)
 {
     CachedShippingMethodCollectionProvider = cachedShippingMethodCollectionProvider;
     CachedShoppingCartProvider             = cachedShoppingCartProvider;
     EffectiveShippingAddressProvider       = effectiveShippingAddressProvider;
     NoticeProvider = noticeProvider;
     PersistedCheckoutContextProvider = persistedCheckoutContextProvider;
     ShippingMethodCartItemApplicator = shippingMethodCartItemApplicator;
     StringResourceProvider           = stringResourceProvider;
     AppConfigProvider = appConfigProvider;
 }
Exemplo n.º 23
0
        public void SetSettingsWorksAsExpected()
        {
            // --- Arrange
            const string KEY = "TypeResolverBackup";
            var settings = new TypeResolverConfigurationSettings(new List<string> { "System" },
                                                                 new List<string> { "TypeResolution" });
            var provider = new AppConfigProvider();

            // --- Act
            provider.SetSetting(KEY, settings);

            // --- Assert
            ConfigurationManager.RefreshSection(KEY);
            var config = ConfigurationManager.GetSection(KEY) as XElement;
            config.ShouldNotBeNull();
            settings = new TypeResolverConfigurationSettings(config);
            settings.AssemblyNames.ShouldHaveCountOf(1);
            settings.AssemblyNames[0].ShouldEqual("System");
            settings.Namespaces.ShouldHaveCountOf(1);
            settings.Namespaces[0].ShouldEqual("TypeResolution");
        }
Exemplo n.º 24
0
 public AccountController(NoticeProvider noticeProvider,
                          IClaimsIdentityProvider claimsIdentityProvider,
                          SendWelcomeEmailProvider sendWelcomeEmailProvider,
                          AppConfigProvider appConfigProvider,
                          CartActionProvider cartActionProvider,
                          IDataRetentionService dataRetentionService,
                          IStringResourceProvider stringResourceProvider,
                          CaptchaVerificationProvider captchaVerificationProvider)
 {
     Settings                    = new AccountSettings();
     CaptchaSettings             = new CaptchaSettings();
     ControllerHelper            = new AccountControllerHelper(Settings);
     NoticeProvider              = noticeProvider;
     ClaimsIdentityProvider      = claimsIdentityProvider;
     SendWelcomeEmailProvider    = sendWelcomeEmailProvider;
     AppConfigProvider           = appConfigProvider;
     CartActionProvider          = cartActionProvider;
     DataRetentionService        = dataRetentionService;
     StringResourceProvider      = stringResourceProvider;
     CaptchaVerificationProvider = captchaVerificationProvider;
 }
Exemplo n.º 25
0
        private static void Main(string[] args)
        {
            var inputFilePath   = GetInputFilePath();
            var outputDirectory = GetOutputDirectory();
            var verboseEnabled  = GetVerboseLoggingEnabled();

            var verboseLogger       = new VerboseLogger(verboseEnabled, Console.WriteLine);
            var configProvider      = new AppConfigProvider();
            var httpWebRequestAgent = new HttpWebRequestAgent(verboseLogger);

            var extractor = new ExtractionManager(new ExtractionRequest
            {
                InputFilePath   = inputFilePath,
                OutputDirectory = outputDirectory,
                VerboseLogger   = verboseLogger
            }, configProvider, httpWebRequestAgent, verboseLogger);

            var response = extractor.RunExtraction();

            if (!string.IsNullOrEmpty(response.GeneralException))
            {
                Console.WriteLine($"Process failed. Error: {response.GeneralException}.");
                Console.ReadKey();
                return;
            }

            if (response.HasExtractionException)
            {
                foreach (var extrctException in response.ExtractionExceptions)
                {
                    Console.WriteLine(
                        $"Extraction did not complete for url: {extrctException.InputUrl}. " +
                        $"Error: {extrctException}");
                }
                Console.ReadKey();
            }

            Console.WriteLine($"Process complete. {response.SuccessfulExtractions} website(s) successfully processed.");
            Console.ReadKey();
        }
 public CheckoutAccountController(
     AccountControllerHelper accountControllerHelper,
     AppConfigProvider appConfigProvider,
     ICheckoutAccountStatusProvider checkoutAccountStatusProvider,
     IClaimsIdentityProvider claimsIdentityProvider,
     NoticeProvider noticeProvider,
     IPersistedCheckoutContextProvider persistedCheckoutContextProvider,
     SendWelcomeEmailProvider sendWelcomeEmailProvider,
     CartActionProvider cartActionProvider,
     CaptchaVerificationProvider captchaVerificationProvider)
 {
     AccountControllerHelper       = accountControllerHelper;
     AppConfigProvider             = appConfigProvider;
     CheckoutAccountStatusProvider = checkoutAccountStatusProvider;
     ClaimsIdentityProvider        = claimsIdentityProvider;
     NoticeProvider = noticeProvider;
     PersistedCheckoutContextProvider = persistedCheckoutContextProvider;
     SendWelcomeEmailProvider         = sendWelcomeEmailProvider;
     CartActionProvider          = cartActionProvider;
     CaptchaVerificationProvider = captchaVerificationProvider;
     CaptchaSettings             = new CaptchaSettings();
 }
        static void Main(string[] args)
        {
            // This section serves as the composition root.
            // In Dependency Injection or Inversion of Control, the composition root is the "entry" point of the application.
            // For web-applications it is the App_Start or AppStart, for windows services it is the OnStart method.
            // For console applications, it is the main method.
            // Only executables have a REAL composition root.  Class libraries are by definition a library of types to be used by
            // calling code to accomplish a goal.  The class library cannot (and should not) make any assumptions beyond it's own behavior
            // regarding how it will be used.

            // Take note of the difference between the IConfigurationProvider and the AppConfigProvider.
            // The interface is defined in the class library, while the implementation is defined in the console application project.
            // This setup allows the console application to be able to "read" configuration, without having to know how that particular configuration
            // should be accessed.  You COULD provide a default provider in the class library for configuration (as we did with the FileSystem)
            // but this gives us maximum flexibility.  This same class library used in a web.application would load config from a web.config
            // file instead of an app.config.  Or it could be a SQLConfigurationProvider as long as they implement the class library interface.
            IConfigurationProvider provider   = new AppConfigProvider();
            IDataProcessor         processor  = new TextFileProcessor();
            IFileSystemProvider    fileSystem = new SimpleFileSystemProvider();

            // Notice the .Out property of the static Console class being passed as an argument.
            // The constructor dependency for the ConsoleReportViewer requires a TextWriter instance (which the .Out property happens to be).
            // We could really pass in ANY TextWriter instance, so you COULD rename the ConsoleReportViewer to TextReportViewer to be more specific.
            // It is this injected dependency that allows us to
            // A) Actually test the output in tests
            // B) De-couple the ConsoleReportViewer from NEEDING to run in a place where it has access to the actual Console.
            // In this case, we don't have to worry about disposing of the TextWriter (like you would normally) because it's lifetime is managed
            // by the Console Application
            IReportViewer viewer = new ConsoleReportViewer(Console.Out);

            // Because we have modified the constructor to take interface arguments, and moved the primary logic from the actual viewer
            // to a new "layer" called an engine, our code-base has become larger, but also more loosely coupled.
            ReportingEngine engine = new ReportingEngine(provider, processor, fileSystem, viewer);

            engine.GenerateReport();
            Console.ReadLine();
        }
Exemplo n.º 28
0
 public EWay()
 {
     AppConfigProvider = DependencyResolver.Current.GetService <AppConfigProvider>();
 }
Exemplo n.º 29
0
 public SignifydController(SignifydCaseApi signifydApi, SignifydConfigurationProvider signifydConfigurationProvider, AppConfigProvider appConfigProvider)
 {
     AppConfigProvider             = appConfigProvider;
     SignifydApi                   = signifydApi;
     SignifydConfigurationProvider = signifydConfigurationProvider;
 }
Exemplo n.º 30
0
        public void SetSettingValueWorksAsExpected()
        {
            // --- Arrange
            const string KEY = "setting1";
            const string VALUE = "testValue";
            var provider = new AppConfigProvider();

            // --- Act
            provider.SetValue(KEY, VALUE);

            // --- Assert
            ConfigurationManager.RefreshSection("appSettings");
            var value = ConfigurationManager.AppSettings[KEY];
            value.ShouldEqual(VALUE);
        }
Exemplo n.º 31
0
 public SignifydConfigurationProvider(AppConfigProvider appConfigProvider)
 {
     AppConfigProvider = appConfigProvider;
 }
Exemplo n.º 32
0
 public SagePayPi()
 {
     StringResourceProvider = DependencyResolver.Current.GetService <IStringResourceProvider>();
     AppConfigProvider      = DependencyResolver.Current.GetService <AppConfigProvider>();
 }
Exemplo n.º 33
0
        internal bool ActivationSwitchMatch(IEnumerable <ActivationSwitchAttribute> attributes, AppConfigProvider provider)
        {
            var enums = attributes.Where(k => k.Switch != null).Select(k => k.Switch).OfType <Enum>().ToArray();
            var keys  = attributes.Where(k => k.Name != null)
                        .Zip(attributes.Where(k => k.Value != null),
                             (a, b) => new KeyValuePair <string, string>(a.Name, b.Value)).ToArray();

            return(FlagsMatch(enums) & AppConfigMatchMatch(keys, provider));
        }
Exemplo n.º 34
0
 public DataRetentionService(AppConfigProvider appConfigProvider, IStringResourceProvider stringResourceProvider)
 {
     AppConfigProvider      = appConfigProvider;
     StringResourceProvider = stringResourceProvider;
 }
 public SiteDisclaimerController(AppConfigProvider appConfigProvider)
 {
     AppConfigProvider = appConfigProvider;
 }
Exemplo n.º 36
0
 public QueryDependencyStateManager(AppConfigProvider appConfigProvider, HashProvider hashProvider)
 {
     AppConfigProvider = appConfigProvider;
     HashProvider      = hashProvider;
 }
Exemplo n.º 37
0
 internal bool ActivationSwitchMatch(ActivationSwitchAttribute attribute, AppConfigProvider provider)
 {
     return(FlagsMatch(attribute.CombinedEnums) && AppConfigMatchMatch(attribute.Configs, provider));
 }