コード例 #1
0
ファイル: Lab3_ETL_Service.cs プロジェクト: KirillJab/Labs
        void ConfigurateETL()
        {
            string  path   = AppDomain.CurrentDomain.BaseDirectory;
            IParser parser = new Converter.Converter();
            OptionsManager <EtlOptions> optionsManager = new OptionsManager <EtlOptions>(path, parser);

            etlOptions = optionsManager.GetOptions <EtlOptions>() as EtlOptions;

            Directory.CreateDirectory(etlOptions.DirectoryOptions.SourceDirectory);
            Directory.CreateDirectory(etlOptions.DirectoryOptions.TargetDirectory);

            sourceWatcher        = new FileSystemWatcher(etlOptions.DirectoryOptions.SourceDirectory);
            sourceWatcher.Filter = "*.txt";
            sourceWatcher.Filter = "*.xml";
            sourceWatcher.EnableRaisingEvents   = true;
            sourceWatcher.IncludeSubdirectories = true;
            sourceWatcher.Created            += SourceWatcher_Created;
            sourceWatcher.EnableRaisingEvents = true;

            logger = new Logger(etlOptions.LoggingOptions);
            Thread loggerThread = new Thread(new ThreadStart(logger.Start));

            loggerThread.Start();
            logger.Log($"Domain directory: {path}");
            logger.Log(optionsManager.log);
            logger.Log($"Source Directory: {etlOptions.DirectoryOptions.SourceDirectory}");
            logger.Log($"Encryption Enabled: {etlOptions.EncryptionOptions.EncryptionEnabled}");
            logger.Log($"Compression Enabled: {etlOptions.ArchiveOptions.CompressionEnabled}");
        }
コード例 #2
0
        Task IJob.Execute(IJobExecutionContext context)
        {
            var conv = new Converter.Converter();

            conv.Convert();
            return(null);
        }
コード例 #3
0
ファイル: Main.cs プロジェクト: Miuroku/3_Term
        static void Main(string[] args)
        {
            IParser ourParser = new Converter.Converter();
            string  path      = AppDomain.CurrentDomain.BaseDirectory;
            OptionsManager <DataAccessOptions> optionsManager = new OptionsManager <DataAccessOptions>(path, ourParser);
            LoggingOptions loggingOptions = new LoggingOptions();

            // Getting options using OptionsManager.
            loggingOptions.ConnectionOptions = optionsManager.GetOptions <ConnectionOptions>() as ConnectionOptions;
            SendingOptions    sendingOptions    = optionsManager.GetOptions <SendingOptions>() as SendingOptions;
            ConnectionOptions connectionOptions = optionsManager.GetOptions <ConnectionOptions>() as ConnectionOptions;
            ILogger           logger            = new Logger.Logger(loggingOptions, ourParser);

            ServiceLayer.ServiceLayer sl = new ServiceLayer.ServiceLayer(connectionOptions, ourParser);
            logger.Log(optionsManager.log);

            // Getting info from DB.
            logger.Log("Pulling of the data has been started...");
            var people = sl.GetPersonInfoList(200);

            logger.Log("Pulling of the data has been done successfully!");

            // Creating XMl file.
            XmlGenerator.XmlGenerator generator = new XmlGenerator.XmlGenerator(sendingOptions);
            generator.CreateXML(people);
            logger.Log("Xml file was created successfully");
        }
コード例 #4
0
        static async Task Main(string[] args)
        {
            IParser parser = new Converter.Converter();
            string  path   = AppDomain.CurrentDomain.BaseDirectory;
            OptionsManager <DataAccessOptions> optionsManager = new OptionsManager <DataAccessOptions>(path, parser);
            LoggingOptions loggingOptions = new LoggingOptions();

            loggingOptions.ConnectionOptions = optionsManager.GetOptions <ConnectionOptions>() as ConnectionOptions;
            SendingOptions    sendingOptions    = optionsManager.GetOptions <SendingOptions>() as SendingOptions;
            ConnectionOptions connectionOptions = optionsManager.GetOptions <ConnectionOptions>() as ConnectionOptions;
            ILogger           logger            = new Logger.Logger(loggingOptions, parser);

            ServiceLayer.ServiceLayer sl = new ServiceLayer.ServiceLayer(connectionOptions, parser);
            List <PersonInfo>         people;

            XmlGenerator.XmlGenerator generator = new XmlGenerator.XmlGenerator(sendingOptions);

            logger.Log(optionsManager.log);

            var watch = System.Diagnostics.Stopwatch.StartNew();

            logger.Log("Pulling of the data has been started...");
            Console.WriteLine("Pulling of the data has been started...");
            people = await sl.GetPersonInfoListAsync(5000);

            Console.WriteLine("Pulling of the data has been done successfully!");
            watch.Stop();
            Console.WriteLine($"Total execution time: {watch.ElapsedMilliseconds}");
            logger.Log("Pulling of the data has been done successfully!");
            generator.CreateXML(people);
            logger.Log("Xml file was created successfully");
            Console.ReadLine();
        }
コード例 #5
0
ファイル: Application.cs プロジェクト: TheNaked/Firewind
        static void Main(string[] args)
        {
            Log.Write("Please enter your MySQL database host");
            Host = Console.ReadLine();

            Log.Write("Please enter your MySQL username");
            Username = Console.ReadLine();

            Log.Write("Please enter your MySQL password");
            Password = Console.ReadLine();

            Log.Write("Please enter your Firewind Database name");
            FirewindDb = Console.ReadLine();

            Log.Write("Please enter your Phoenix Database name");
            PhoenixDb = Console.ReadLine();

            Log.Write("Please press enter to proceed.");
            Console.ReadLine();

            DatabaseConfig PhoenixDbConfig = new DatabaseConfig(Host, 3306, Username, Password, PhoenixDb, 1, 5, 10);
            DatabaseConfig ButterflyDbConfig = new DatabaseConfig(Host, 3306, Username, Password, FirewindDb, 1, 5, 10);

            Converter = new Converter(PhoenixDbConfig, ButterflyDbConfig);
            Converter.Start();
        }
コード例 #6
0
        public EtlXmlOptions(string xml)
        {
            IParser    parser        = new Converter.Converter();
            EtlOptions etlXmlOptions = parser.DeserializeXML <EtlOptions>(xml);

            DirectoryOptions  = etlXmlOptions.DirectoryOptions;
            EncryptionOptions = etlXmlOptions.EncryptionOptions;
            ArchiveOptions    = etlXmlOptions.ArchiveOptions;
            LoggingOptions    = etlXmlOptions.LoggingOptions;
        }
コード例 #7
0
        static void Main(string[] args)
        {
            IParser    parser    = new Converter.Converter();
            IValidator validator = new Validator();
            string     directory = AppDomain.CurrentDomain.BaseDirectory;

            OptionsManager <DataAccessOptions> options =
                new OptionsManager <DataAccessOptions>(directory, parser, validator);

            LoggingOptions loggingOptions = new LoggingOptions();

            //loggingOptions.ConnectingOptions = options.GetOptions<ConnectingOptions>() as ConnectingOptions;
            loggingOptions.EnableLogging = true;
            ILogger logger = new Logger.Logger(loggingOptions, parser);

            ServiceLayer.ServiceLayer SL = new ServiceLayer.ServiceLayer(
                options.GetOptions <ConnectingOptions>() as ConnectingOptions,
                parser, logger);

            SendingOptions sendingOptions = options.GetOptions <SendingOptions>() as SendingOptions;

            logger.Log("Starting pulling data");
            if (sendingOptions.PullingMode == SendingOptions.PullingModes.FullTable)
            {
                int curIndex = 1;
                int maxID    = SL.DAL.EmployeeMaxID();
                List <HumanResourcesInfo> info;
                while (curIndex < maxID)
                {
                    info = SL.GetPersonsRange(curIndex, sendingOptions.BatchSize);
                    int    lastID = info.Last().Employee.BusinessEntityID;
                    string s      = parser.SerializeXML(info);
                    using (StreamWriter sw = new StreamWriter($@"{sendingOptions.Target}\file{curIndex}-{lastID}.txt"))
                    {
                        sw.Write(s);
                    }
                    curIndex = lastID + 1;
                }
            }
            else if (sendingOptions.PullingMode == SendingOptions.PullingModes.ByBatches)
            {
                List <HumanResourcesInfo> info = SL.GetEmployees();
                SplitOnBatches(info, sendingOptions, parser);
            }
            else if (sendingOptions.PullingMode == SendingOptions.PullingModes.FullJoin)
            {
                List <HumanResourcesInfo> info = SL.GetHumanResourcesByJoin();
                SplitOnBatches(info, sendingOptions, parser);
            }

            logger.Log("Pulled all data successfully");
        }
コード例 #8
0
ファイル: Program.cs プロジェクト: Skava600/labs-c-sharp
        static void Main(string[] args)
        {
            IConverter converter = new Converter.Converter();
            string     based     = AppDomain.CurrentDomain.BaseDirectory;
            OptionsManager <DataAccessOptions> optionsManager = new OptionsManager <DataAccessOptions>(based, converter);
            LoggingOptions    loggingOptions    = optionsManager.GetOptions <LoggingOptions>() as LoggingOptions;
            SendingOptions    sendingOptions    = optionsManager.GetOptions <SendingOptions>() as SendingOptions;
            ConnectionOptions connectionOptions = optionsManager.GetOptions <ConnectionOptions>() as ConnectionOptions;

            ServiceLayer.ServiceLayer sl     = new ServiceLayer.ServiceLayer(converter, connectionOptions);
            Logger.Logger             logger = new Logger.Logger(connectionOptions, converter);
            List <Human> people;

            logger.Log(optionsManager.logs);
            people = sl.GetHumanList(100);
            XmlGenerator generator = new XmlGenerator(sendingOptions);

            generator.CreateXML(people);
        }
コード例 #9
0
        static void Main(string[] args)
        {
            Converter converter = new Converter();

            // Write a program to convert decimal numbers to their binary representation
            Console.WriteLine(converter.DecimalToBinary(254u));

            // Write a program to convert binary numbers to their decimal representation
            Console.WriteLine(converter.BinaryToDecimal("11111110"));

            // Write a program to convert decimal numbers to their hexadecimal representation
            Console.WriteLine(converter.DecimalToHex(254u));

            // Write a program to convert hexadecimal numbers to their decimal representation
            Console.WriteLine(converter.HexToDecimal("FE"));

            // Write a program to convert hexadecimal numbers to binary numbers
            Console.WriteLine(converter.HexToBinary("FE"));

            // Write a program to convert binary numbers to hexadecimal numbers
            Console.WriteLine(converter.BinaryToHex("11111110"));

            // Write a program to convert from any numeral system of given 
            // base s to any other numeral system of base d (2 ≤ s, d ≤ 16)
            Console.WriteLine(converter.Convert("254", 10, 3));
            Console.WriteLine(converter.Convert("100102", 3, 10));

            // Write a program that shows the binary representation of given 
            // 16-bit signed integer number (the C# type short)
            Console.WriteLine(converter.ShortToBinary(254));

            //Write a program that shows the internal binary representation of 
            // given 32-bit signed floating-point number in IEEE 754 format (the C# type float).
            string[] result = converter.FloatToBinary(-27.25f);
            Console.WriteLine("SIGN:        " + result[0]);
            Console.WriteLine("EXPONENT:    " + result[1]);
            Console.WriteLine("MANTISSA:    " + result[2]);
        }