Пример #1
0
        static void LoopClientFoldersAsync()
        {
#if DEBUG
            var clientFolders = Directory.EnumerateDirectories(@"E:\source\repos\Mapper\PaperRulez\Clients");
#else
            var clientFolders = Directory.EnumerateDirectories(Path.Combine(Directory.GetCurrentDirectory(), "Clients"));
#endif
            var lookupStore = new LookupStore();

            while (true)
            {
                foreach (var clientFolder in clientFolders)
                {
                    var fileList = Directory.EnumerateFiles(clientFolder).ToList();
                    var client   = Path.GetFileName(clientFolder);

                    // Change for any log library, like serilog, NLog, log4net...
                    Console.WriteLine($"Processing client {client}");

                    foreach (var filePath in fileList)
                    {
                        Console.WriteLine($"Processing file in {filePath}..");

                        var fileReader = new FileReader(filePath);
                        var paperRulez = new PaperRulez(client, fileReader, lookupStore);

                        paperRulez.Start();

                        Console.WriteLine($"Processing finished");
                    }
                }

                Task.Delay(5000).Wait();
            }
        }
Пример #2
0
        static void Main(string[] args)
        {
            try
            {
                const string client      = "client";
                const string documentId  = "1234";
                const string contentType = "test";

                string file = Utilities.LoadFile(client, documentId, contentType);
                Console.WriteLine("File: \n" + file);
                Console.WriteLine("-----------------------------");

                string typeOfProcessing         = Utilities.TypeOfProcessing(file);
                IEnumerable <string> parameters = Utilities.FindParameters(file);
                IEnumerable <string> keywords   = parameters;

                switch (typeOfProcessing)
                {
                case "lookup":
                    var lookupStore = new LookupStore();
                    Utilities.LookupInFile(file, keywords);
                    lookupStore.Record(client, documentId, keywords);
                    break;

                default:
                    Console.WriteLine("Type of processing not implemented");
                    break;
                }
            }

            catch (Exception e)
            {
                Console.WriteLine("{0} Exception caught.", e);
            }
        }