예제 #1
0
        private TimeSpan RunInstance(IBookReader instance, string textToSearch, string wordToFind, out int count)
        {
            Stopwatch sw = new Stopwatch();

              sw.Start();
              count = instance.NumberOfTimesFound(textToSearch, wordToFind);
              sw.Stop();
              return sw.Elapsed;
        }
        static void Main(string[] args)
        {
            Console.WriteLine("Please, select reading type (XML, JSON)");
            // we asume a predefault value
            var            format = (Console.ReadLine() != "xml") ? "json" : "xml";
            UnityContainer uc     = new UnityContainer();

            uc.RegisterType <IBookReader, XMLBookReader>("xml");
            uc.RegisterType <IBookReader, JSONBookReader>("json");
            IBookReader ibr = uc.Resolve <IBookReader>(format);

            ibr.ReadBooks();
            Console.ReadLine();
        }
예제 #3
0
        public ReadFactory(int choice)
        {
            switch (choice)
            {
            case 1:
                BookReader = new JsonBookDataReader();
                break;

            case 2:
                BookReader = new XmlBookDataReader();
                break;

            default:
                break;
            }
        }
        static void Main(string[] args)
        {
            Console.WriteLine("Please, select reading type (XML, JSON)");
            // we asume a predefault value
            var format    = (Console.ReadLine() != "xml") ? "json" : "xml";
            var container = new WindsorContainer();

            container.Register(Component.For <IBookReader>().ImplementedBy <XMLBookReader>()
                               .Named("xml"));
            container.Register(Component.For <IBookReader>().ImplementedBy <JSONBookReader>()
                               .Named("json"));
            IBookReader ibr = container.Resolve <IBookReader>(format);

            ibr.ReadBooks();
            Console.ReadLine();
            // clean up, application exits
            container.Dispose();
        }
예제 #5
0
 public BookManager(IBookReader reader)
 {
     bookReader = reader;
 }
예제 #6
0
 internal void WasReadBy([NotNull] IBookReader reader)
 {
     this.reader = reader;
 }
예제 #7
0
 public PriceChangeNotifier(IBookReader reader)
 {
     Reader = reader;
 }