Ejemplo n.º 1
0
        private void ConfigureContainer()
        {
            Container.Bind <IPersonReader>().To <SQLReader>();

            // Service Reader configuration
            var serviceReaderUri = new ServiceReaderUri("http://localhost:9874");

            Container.Bind <ServiceReaderUri>().ToConstant(serviceReaderUri);

            // CSV Reader Configuration
            var csvFilePath =
                new CSVReaderFilePath(AppDomain.CurrentDomain.BaseDirectory + "People.txt");

            Container.Bind <CSVReaderFilePath>().ToConstant(csvFilePath);

            // SQL Reader configuration
            var sqlFileName = new SQLReaderDBFileName("people.db");

            Container.Bind <SQLReaderDBFileName>().ToConstant(sqlFileName);
        }
Ejemplo n.º 2
0
        private static void ComposeObjects()
        {
            // Data Reader
            var readerUri = new ServiceReaderUri("http://localhost:9874");
            var reader    = new ServiceReader(readerUri);

            // Retry Function
            var delay       = new TimeSpan(0, 0, 3);
            var retryReader = new RetryReader(reader, delay);

            // Exception Logging Function
            var logFilePath   = AppDomain.CurrentDomain.BaseDirectory + "ExceptionLog.txt";
            var logger        = new FileLogger(logFilePath);
            var loggingReader = new ExceptionLoggingReader(retryReader, logger);

            // Caching Function
            var cachingReader = new CachingReader(loggingReader);

            var viewModel = new PeopleViewModel(retryReader);

            Application.Current.MainWindow = new MainWindow(viewModel);
        }