public EventStoreConnectionLogicHandler(IEventStoreConnection esConnection, ConnectionSettings settings)
        {
            Ensure.NotNull(esConnection, "esConnection");
            Ensure.NotNull(settings, "settings");

            _esConnection = esConnection;
            _settings = settings;

            _operations = new OperationsManager(_esConnection.ConnectionName, settings);
            _subscriptions = new SubscriptionsManager(_esConnection.ConnectionName, settings);

            _queue.RegisterHandler<StartConnectionMessage>(msg => StartConnection(msg.Task, msg.EndPointDiscoverer));
            _queue.RegisterHandler<CloseConnectionMessage>(msg => CloseConnection(msg.Reason, msg.Exception));

            _queue.RegisterHandler<StartOperationMessage>(msg => StartOperation(msg.Operation, msg.MaxRetries, msg.Timeout));
            _queue.RegisterHandler<StartSubscriptionMessage>(StartSubscription);

            _queue.RegisterHandler<EstablishTcpConnectionMessage>(msg => EstablishTcpConnection(msg.EndPoints));
            _queue.RegisterHandler<TcpConnectionEstablishedMessage>(msg => TcpConnectionEstablished(msg.Connection));
            _queue.RegisterHandler<TcpConnectionErrorMessage>(msg => TcpConnectionError(msg.Connection, msg.Exception));
            _queue.RegisterHandler<TcpConnectionClosedMessage>(msg => TcpConnectionClosed(msg.Connection));
            _queue.RegisterHandler<HandleTcpPackageMessage>(msg => HandleTcpPackage(msg.Connection, msg.Package));

            _queue.RegisterHandler<TimerTickMessage>(msg => TimerTick());

            _timer = new Timer(_ => EnqueueMessage(TimerTickMessage), null, Consts.TimerPeriod, Consts.TimerPeriod);
        }
Esempio n. 2
0
        private void EditOrder(OperationsManager manager, OrderListLookupResponse _orders, OrderLookupResponse response)
        {
            var selectedOrder = from o in _orders.Orders
                                where o.OrderNumber == _orderNumber
                                select o;

            if (selectedOrder == null)
            {
                Console.WriteLine();
                Console.WriteLine($"There is no order that matches given order number for {_orderDate.Substring(0, 2)}/{_orderDate.Substring(2, 2)}/{_orderDate.Substring(4, 4)}. " + ConsoleIO.anyKey);
                Console.ReadKey();
            }

            else
            {
                response.Order = selectedOrder.ElementAt(0);
                TakeInOrderEdits(manager, response);

                if (response.Success)
                {
                    manager.EditOrder(response.Order);

                    Console.WriteLine("\n" + response.Message + "\n");
                    Console.WriteLine($"Order number {_orderNumber} for {_orderDate.Substring(0, 2)}/{_orderDate.Substring(2, 2)}/{_orderDate.Substring(4, 4)} has been updated to the following: ");
                    ConsoleIO.DisplayOrderDetails(response.Order);
                    Console.Write("\n" + ConsoleIO.anyKey);
                    Console.ReadKey();
                }
                else
                {
                    Console.Write("\n" + response.Message + " " + ConsoleIO.anyKey);
                    Console.ReadKey();
                }
            }
        }
        private void ExecuteDropMove(object parameter)
        {
            var sourceFileSystem = new WindowsFileSystem(droppedFiles.First().FullName);
            var operation        = new MoveOperation(droppedFiles, ActiveView.FullPath, sourceFileSystem, ActiveView.FileSystem);

            OperationsManager.ExecuteOperation(operation);
        }
Esempio n. 4
0
        private string GetOrderDate(OperationsManager manager)
        {
            string dateInput;
            bool   isCorrectDateFormat = false;

            do
            {
                Console.Clear();
                Console.WriteLine(pageHeader);
                Console.Write("\nEnter a date (MMDDYYYY, must be in future): ");

                dateInput = Console.ReadLine();

                AddOrderResponse dateResponse = new AddOrderResponse();

                dateResponse = manager.CheckAddDate(dateInput);

                if (dateResponse.Success == false)
                {
                    isCorrectDateFormat = false;
                    Console.WriteLine();
                    Console.Write(dateResponse.Message + " " + ConsoleIO.anyKey);
                    Console.ReadKey();
                }
                else
                {
                    isCorrectDateFormat = true;
                }
            } while (isCorrectDateFormat == false);

            return(dateInput);
        }
Esempio n. 5
0
        private string GetOrderCustomerName(OperationsManager manager)
        {
            string nameInput           = "";
            bool   isCorrectNameFormat = false;

            do
            {
                Console.Clear();
                Console.WriteLine(pageHeader);
                Console.WriteLine();
                Console.WriteLine(promptForOrderDetails);
                Console.Write("\nCustomer Name: ");

                nameInput = Console.ReadLine();

                AddOrderResponse nameResponse = new AddOrderResponse();

                nameResponse = manager.CheckAddName(nameInput);

                if (!nameResponse.Success)
                {
                    isCorrectNameFormat = false;
                    Console.WriteLine();
                    Console.WriteLine(nameResponse.Message);
                    Console.Write(ConsoleIO.anyKey);
                    Console.ReadKey();
                }
                else
                {
                    isCorrectNameFormat = true;
                }
            } while (isCorrectNameFormat == false);

            return(nameInput);
        }
        private void editSelectedDocumentB_Click(object sender, EventArgs e)
        {
            DocumentVO document = documentsBindingSource.Current as DocumentVO;

            if (document != null)
            {
                OperationsManager manager = new OperationsManager();

                //if (document.Type == DocumentVO.DocumentType.FILES)
                //{
                if (manager.HasPermission(OperationsManager.EDIT_DOCS, Library.ConfigurationManager.currUser))
                {
                    EFilesArchivingForm form = new EFilesArchivingForm(document, ArchivingForm.OperationMode.EDIT);
                    form.ShowDialog();
                }
                else
                {
                    Error("أنت لا تمتلك السماحية للقيام بهذه العملية");
                }
                //}
                //else
                //{
                //    if (manager.HasPermission(OperationsManager.EDIT_PAPER_DOCS, Library.ConfigurationManager.currUser))
                //    {
                //        PaperArchivingForm form1 = new PaperArchivingForm(document, ArchivingForm.OperationMode.EDIT);
                //        form1.ShowDialog();
                //    }
                //    else
                //    {
                //        Error("أنت لا تمتلك السماحية للقيام بهذه العملية");
                //    }
                //}
            }
        }
Esempio n. 7
0
        private string GetRemoveOrderDate(OperationsManager manager)
        {
            string dateInput;
            bool   isCorrectDateFormat = false;

            do
            {
                Console.Clear();
                Console.WriteLine(pageHeader);
                Console.Write("\nEnter a date (MMDDYYYY, must be in future): ");

                dateInput = Console.ReadLine();

                if (manager.CheckDateFormat(dateInput))
                {
                    isCorrectDateFormat = true;
                }
                else
                {
                    isCorrectDateFormat = false;
                    Console.Write("Please use correct order date format (MMDDYYYY). " + ConsoleIO.anyKey);
                    Console.ReadKey();
                }
            } while (isCorrectDateFormat == false);

            return(dateInput);
        }
Esempio n. 8
0
        public void Execute()
        {
            OperationsManager manager  = RepoFactory.CreateOrderRepo("");
            AddOrderResponse  response = new AddOrderResponse();

            // get order date
            _orderDate = GetOrderDate(manager);

            //reload manager with order date passed in
            manager = RepoFactory.CreateOrderRepo(_orderDate);
            promptForOrderDetails = $"Enter new order details for order on {_orderDate.Substring(0, 2)}/{_orderDate.Substring(2, 2)}/{_orderDate.Substring(4, 4)}";

            // get customer name
            _customerName = GetOrderCustomerName(manager);

            // get state
            _stateAbbreviation = GetOrderState(manager);

            // get product type
            _productType = GetOrderProductType(manager);

            //get area
            _area = GetOrderArea(manager);

            //confirm add
            response = ConfirmAddOrder(manager, response);

            //execute/abort add
            ExecuteOrAbortAddOrder(manager, response);
        }
Esempio n. 9
0
        private string GetEditOrderState(OperationsManager manager, OrderLookupResponse response)
        {
            bool   isCorrectStateFormat = false;
            string userInput            = "";

            do
            {
                Console.Clear();
                Console.WriteLine(pageHeader);
                Console.WriteLine("\n***Edit Order Number {0} for {1}/{2}/{3}***", response.Order.OrderNumber, _orderDate.Substring(0, 2), _orderDate.Substring(2, 2), _orderDate.Substring(4, 4));
                Console.WriteLine("\nIf you wish to edit a field, type in the new information.  If you wish to leave the field unchanged, simply press enter.");

                Console.WriteLine("\nCustomer Name ({0}): {1}", response.Order.CustomerName, nameInput);
                Console.Write("State ({0}): ", response.Order.State);
                userInput = Console.ReadLine();



                if (manager.CheckAddState(userInput).Success || userInput == "")
                {
                    isCorrectStateFormat = true;
                }
                else
                {
                    isCorrectStateFormat = false;
                    Console.WriteLine();
                    Console.WriteLine(manager.CheckAddState(userInput).Message);
                    Console.Write(ConsoleIO.anyKey);
                    Console.ReadKey();
                }
            } while (!isCorrectStateFormat);

            return(userInput);
        }
Esempio n. 10
0
        public void CanEditOrder()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            Order order       = new Order();
            int   orderNumber = 1;

            order.OrderNumber            = orderNumber;
            order.CustomerName           = "Glencliff High School";
            order.State                  = manager.LookupOrder(orderNumber).Order.State;
            order.TaxRate                = manager.LookupOrder(orderNumber).Order.TaxRate;
            order.ProductType            = manager.LookupOrder(orderNumber).Order.ProductType;
            order.Area                   = manager.LookupOrder(orderNumber).Order.Area;
            order.CostPerSquareFoot      = manager.GetSingleProduct(order.ProductType).CostPerSquareFoot;
            order.LaborCostPerSquareFoot = manager.GetSingleProduct(order.ProductType).LaborCostPerSquareFoot;
            order.MaterialCost           = order.Area * order.CostPerSquareFoot;
            order.LaborCost              = order.Area * order.LaborCostPerSquareFoot;
            order.Tax   = (order.MaterialCost + order.LaborCost) * (order.TaxRate / 100);
            order.Total = order.MaterialCost + order.LaborCost + order.Tax;

            manager.EditOrder(order);

            Assert.AreNotEqual("North Oldham High School", manager.LoadListOfOrders("").Orders[1].CustomerName);
            Assert.AreEqual("Glencliff High School", manager.LoadListOfOrders("").Orders[1].CustomerName);
        }
Esempio n. 11
0
        public void CanRemoveOrder()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            manager.RemoveOrder(2);

            Assert.AreEqual(1, manager.LoadListOfOrders("").Orders.Count());
        }
Esempio n. 12
0
        public void CanCheckAddState(string stateAbbreviation, bool expectedResult)
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            AddOrderResponse response = manager.CheckAddState(stateAbbreviation);

            Assert.AreEqual(expectedResult, response.Success);
        }
        protected override void ValidateUserPermissions()
        {
            OperationsManager manager = new OperationsManager();

            if (manager.HasPermission(OperationsManager.ADVANCED_SEARCH, Library.ConfigurationManager.currUser))
            {
                advancedSearchB.Enabled = true;
            }
        }
Esempio n. 14
0
        public void Initialize()
        {
            var operationManager = new OperationsManager();

            operationManager.RegisterOperation(new ReverseOperation());
            operationManager.RegisterOperation(new SortOperation());

            this.cut = new TransformString(operationManager);
        }
Esempio n. 15
0
        private static void ConfirmRemoveOrder(OperationsManager manager, OrderLookupResponse response)
        {
            if (!response.Success)
            {
                Console.WriteLine();
                Console.WriteLine(response.Message + "" + ConsoleIO.anyKey);
                Console.ReadKey();
            }

            else
            {
                bool finishRemoveProcess = false;

                do
                {
                    Console.Clear();
                    Console.WriteLine(pageHeader);
                    Console.WriteLine();
                    Console.WriteLine("***Order to Remove***");
                    ConsoleIO.DisplayOrderDetails(response.Order);

                    Console.Write("\nDo you want to remove this order to file? (Y or N): ");
                    string userInput = Console.ReadLine().ToUpper();

                    if (userInput == "Y")
                    {
                        finishRemoveProcess = true;
                        response.Success    = true;
                        response.Message    = "Order has been removed from file!";
                    }
                    else if (userInput == "N")
                    {
                        finishRemoveProcess = true;
                        response.Success    = false;
                        response.Message    = "Remove order process has been cancelled and order will not be removed from file.";
                    }
                    else
                    {
                        finishRemoveProcess = false;
                    }
                } while (!finishRemoveProcess);

                if (response.Success)
                {
                    manager.RemoveOrder(_orderNumber);

                    Console.Write("\n" + response.Message + " " + ConsoleIO.anyKey);
                    Console.ReadKey();
                }
                else
                {
                    Console.Write("\n" + response.Message + " " + ConsoleIO.anyKey);
                    Console.ReadKey();
                }
            }
        }
Esempio n. 16
0
        public MainViewModel()
        {
            // Initialize Data layer
            var fs                          = new MyAccounts.Business.IO.WindowsFileSystem();
            var workingCopy                 = new WorkingCopy(fs, Properties.Settings.Default.WorkingFolder);
            var accountsRepository          = new AccountsRepository(workingCopy);
            var accountCommandRepository    = new AccountCommandRepository(workingCopy);
            var placesRepository            = new PlacesRepository();
            var placeProvider               = PlaceProvider.Load(placesRepository);
            var placeInfoResolver           = new PlaceInfoResolver(placeProvider);
            var operationPatternTransformer = new UnifiedAccountOperationPatternTransformer(placeInfoResolver);
            var operationsRepository        = new OperationsRepository(workingCopy, new CsvAccountOperationManager(), operationPatternTransformer);

            // Initialize Managers
            var operationsManager = new OperationsManager(App.CacheManager, operationsRepository);
            var accountsManager   = new AccountsManager(App.CacheManager, accountsRepository);
            var importManager     = new ImportManager(App.CacheManager, accountCommandRepository, operationsManager);

            // Initialize View Models

            BusyIndicator = new BusyIndicatorViewModel();

            ImportsManagerViewModel = new ImportsManagerViewModel(BusyIndicator, fs, importManager);

            OperationsManagerViewModel = new OperationsManagerViewModel(BusyIndicator, operationsManager, importManager);
            AccountsManagerViewModel   = new AccountsManagerViewModel(BusyIndicator, accountsManager, operationsManager, importManager);
            DashboardViewModel         = new DashboardViewModel(BusyIndicator);
            GmcManager       = new GmcManager(BusyIndicator, App.CacheManager, operationsManager);
            _settingsManager = new SettingsManager(App.CacheManager);

            MessengerInstance.Register <Properties.Settings>(this, OnSettingsUpdated);
            _asyncMessageReceiver = new AsyncMessageReceiver(MessengerInstance);
            _asyncMessageReceiver.RegisterAsync <AccountDataInvalidated>(this, data => Refresh());

            if (!IsInDesignMode)
            {
                LoadCommand    = new AsyncCommand(Load);
                RefreshCommand = new AsyncCommand(Refresh);
            }
            else
            {
                AccountsManagerViewModel.Accounts.Add(
                    new AccountViewModel
                {
                    Name   = "Blaise CC",
                    Status =
                    {
                        Operations            =          7,
                        Balance               = 2541.7345M,
                        LastImportedOperation = "2012-0001"
                    }
                });

                AccountsManagerViewModel.CurrentAccount = AccountsManagerViewModel.Accounts.First();
            }
        }
Esempio n. 17
0
        public void CanLookupSingleOrder()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            OrderLookupResponse response = manager.LookupOrder(1);

            Assert.IsNotNull(response.Order);
            Assert.IsTrue(response.Success);
            Assert.AreEqual("North Oldham High School", response.Order.CustomerName);
        }
Esempio n. 18
0
        public void CanLoadOrderList()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            OrderListLookupResponse response = manager.LoadListOfOrders("");

            Assert.IsNotEmpty(response.Orders);
            Assert.IsTrue(response.Success);
            Assert.AreEqual("North Oldham High School", response.Orders[0].CustomerName);
        }
Esempio n. 19
0
        public async Task <string> SortFileAsync(string filePath)
        {
            var pathHelper = new SortingPathsHelper(filePath);

            FileSystemHelper.DeleteDirectory(pathHelper.ChunksDirectory.FullName);
            var settings          = new Settings(pathHelper.SourceFile);
            var operationsManager = new OperationsManager(settings, pathHelper);
            await operationsManager.StartManageOperationsAsync();

            return(pathHelper.SortedFilePath);
        }
Esempio n. 20
0
        public Unary() : base()
        {
            Mod = new Mod();
            Mod.Load();

            MapManager        = new MapManager(this);
            StrategyManager   = new StrategyManager(this);
            EconomyManager    = new EconomyManager(this);
            ProductionManager = new ProductionManager(this);
            OperationsManager = new OperationsManager(this);
        }
Esempio n. 21
0
 private void checkerBGW_DoWork(object sender, DoWorkEventArgs e)
 {
     try
     {
         OperationsManager man = new OperationsManager();
         e.Result = man.Ping();
     }
     catch
     {
         e.Result = false;
     }
 }
Esempio n. 22
0
        private AddOrderResponse ConfirmAddOrder(OperationsManager manager, AddOrderResponse response)
        {
            bool finishAddProcess = false;

            do
            {
                Order newOrder = new Order();

                newOrder.OrderNumber            = manager.LoadListOfOrders(_orderDate).Orders.Count() + 1;
                newOrder.CustomerName           = _customerName;
                newOrder.State                  = _stateAbbreviation;
                newOrder.TaxRate                = manager.GetSingleState(_stateAbbreviation).TaxRate;
                newOrder.ProductType            = _productType;
                newOrder.Area                   = _area;
                newOrder.CostPerSquareFoot      = manager.GetSingleProduct(_productType).CostPerSquareFoot;
                newOrder.LaborCostPerSquareFoot = manager.GetSingleProduct(_productType).LaborCostPerSquareFoot;
                newOrder.MaterialCost           = newOrder.Area * newOrder.CostPerSquareFoot;
                newOrder.LaborCost              = newOrder.Area * newOrder.LaborCostPerSquareFoot;
                newOrder.Tax   = (newOrder.MaterialCost + newOrder.LaborCost) * (newOrder.TaxRate / 100);
                newOrder.Total = newOrder.MaterialCost + newOrder.LaborCost + newOrder.Tax;

                Console.Clear();
                Console.WriteLine(pageHeader);
                Console.WriteLine();
                Console.WriteLine("***New Order Details***");
                ConsoleIO.DisplayOrderDetails(newOrder);


                Console.Write("\nDo you want to add this order to file? (Y or N): ");
                string userInput = Console.ReadLine().ToUpper();

                if (userInput == "Y")
                {
                    response.Order = newOrder;

                    finishAddProcess = true;
                    response.Success = true;
                    response.Message = "Order has been saved to file!";
                }
                else if (userInput == "N")
                {
                    finishAddProcess = true;
                    response.Success = false;
                    response.Message = "Add order process has been cancelled and order will not be saved to file.";
                }
                else
                {
                    finishAddProcess = false;
                }
            } while (!finishAddProcess);

            return(response);
        }
Esempio n. 23
0
        private string GetEditOrderProductType(OperationsManager manager, OrderLookupResponse response)
        {
            bool   isCorrectProductType = false;
            string productInputString   = "";

            do
            {
                Console.Clear();
                Console.WriteLine(pageHeader);
                Console.WriteLine("\n***Edit Order Number {0} for {1}/{2}/{3}***", response.Order.OrderNumber, _orderDate.Substring(0, 2), _orderDate.Substring(2, 2), _orderDate.Substring(4, 4));
                Console.WriteLine("\nIf you wish to edit a field, type in the new information.  If you wish to leave the field unchanged, simply press enter.");

                Console.WriteLine("\nCustomer Name ({0}): {1}", response.Order.CustomerName, nameInput);
                Console.WriteLine("State ({0}): {1}", response.Order.State, stateInput);
                Console.WriteLine("ProductType ({0}): ", response.Order.ProductType);
                Console.WriteLine();

                IProductRepository productRepo = RepoFactory.CreateProductRepo();

                List <Product> products = productRepo.GetListOfProducts();

                int listNumber = 1;

                foreach (var product in products)
                {
                    Console.WriteLine("\t" + listNumber + ". " + product.ProductType);

                    listNumber++;
                }

                Console.Write("\nEnter selection: ");
                string userInput = Console.ReadLine();

                int j;

                if (!int.TryParse(userInput, out j) || j < 1 || j > listNumber - 1)
                {
                    Console.Write($"\nPlease enter a valid number (1-{listNumber - 1}). " + ConsoleIO.anyKey);
                    Console.ReadKey();
                    isCorrectProductType = false;
                }

                else
                {
                    productInputString   = products[j - 1].ProductType;
                    isCorrectProductType = true;
                }
            } while (!isCorrectProductType);

            return(productInputString);
        }
Esempio n. 24
0
        private void ExecuteOrAbortAddOrder(OperationsManager manager, AddOrderResponse response)
        {
            if (response.Success)
            {
                manager.AddOrder(response.Order);

                Console.Write("\n" + response.Message + " " + ConsoleIO.anyKey);
                Console.ReadKey();
            }
            else
            {
                Console.Write("\n" + response.Message + " " + ConsoleIO.anyKey);
                Console.ReadKey();
            }
        }
Esempio n. 25
0
        public void Execute()
        {
            OperationsManager manager = RepoFactory.CreateOrderRepo("");

            //get date
            string _orderDate = GetDisplayOrdersDate(manager);

            //reload manager with order date
            manager = RepoFactory.CreateOrderRepo(_orderDate);

            //get list of orders
            OrderListLookupResponse response = manager.LoadListOfOrders(_orderDate);

            //show list success
            DisplayList(_orderDate, response);
        }
        public AnnotationPanel()
        {
            _Image             = null;
            _Zoom              = _OldZoom = 1.0f;
            _Graphics          = Graphics.FromHwnd(Handle);
            _OperationsManager = new OperationsManager(this);
            _Shapes            = new ShapeCollection();
            SetStyle(ControlStyles.AllPaintingInWmPaint |
                     ControlStyles.UserPaint |
                     ControlStyles.ResizeRedraw |
                     ControlStyles.UserPaint |
                     ControlStyles.DoubleBuffer, true);

            AutoScroll            = true;
            _Shapes.ItemInserted += _Shapes_ItemInserted;
        }
Esempio n. 27
0
        //this test runs for about 50s
        public void PlacedShipsShouldNeverOverlap()
        {
            for (int i = 0; i < 1000; i++)
            {
                //arrange
                var board   = base.CreateEmptyCloakedBoard();
                var manager = new OperationsManager();

                //act
                manager.PlaceShipsForComputer(board);

                //assert
                bool overlappingShipsPresent = CheckOverlapping(board);
                Assert.IsFalse(overlappingShipsPresent);
            }
        }
Esempio n. 28
0
        public void CellAttackTest(int Xcoord, int Ycoord, OperationResult expecctedResult)
        {
            //arrange
            var coord = new Coordinates
            {
                X = Xcoord,
                Y = Ycoord
            };
            var manager = new OperationsManager();
            //act
            var result = manager.PlaceShotByPlayer(coord, board);

            //assert

            Assert.AreEqual(expecctedResult, result);
        }
Esempio n. 29
0
        public void TestShipCount()
        {
            ///arrange
            var       manager = new OperationsManager();
            GameBoard board   = new GameBoard();

            board.Ships = new List <Ship>();
            //act
            manager.PlaceShipsForComputer(board);
            //assert
            Assert.True(board.BattleshipPlaced);
            Assert.True(board.DestroyersPlaced);
            Assert.AreEqual(3, board.Ships.Count);
            Assert.AreEqual(2, board.Ships.Where(ship => ship.Cells.Count() == 4).Count());
            Assert.AreEqual(1, board.Ships.Where(ship => ship.Cells.Count() == 5).Count());
        }
Esempio n. 30
0
        private string GetOrderProductType(OperationsManager manager)
        {
            bool   isValidProductType = false;
            string productInputString = "";

            do
            {
                Console.Clear();
                Console.WriteLine(pageHeader);
                Console.WriteLine();
                Console.WriteLine(promptForOrderDetails);
                Console.WriteLine("\nCustomer name: " + _customerName);
                Console.WriteLine("State (2-letter abbreviation): " + _stateAbbreviation);
                Console.WriteLine("\nSelect Product Type:\n");

                IProductRepository productRepo = RepoFactory.CreateProductRepo();

                List <Product> products = productRepo.GetListOfProducts();

                int listNumber = 1;

                foreach (var product in products)
                {
                    Console.WriteLine("\t" + listNumber + ". " + product.ProductType);

                    listNumber++;
                }

                Console.Write("\nEnter selection: ");
                string productInput = Console.ReadLine();

                int j;

                while (!int.TryParse(productInput, out j) || j < 1 || j > listNumber - 1)
                {
                    Console.Write("\nPlease enter a valid number (1-{0}): ", listNumber - 1);

                    productInput = Console.ReadLine();
                }

                productInputString = products[j - 1].ProductType;
                isValidProductType = true;
            } while (!isValidProductType);

            return(productInputString);
        }
Esempio n. 31
0
        private static void Main(string[] args)
        {
            //parse commandLine
            var options = new Options();

            if (!CommandLine.Parser.Default.ParseArguments(args, options))
            {
                Console.WriteLine("Incorect usage of commandline parameters. Please review.");
            }

            //get environment properties passed from command line
            var initialEnvironment = OptionsProcessor.GetEnvironmentFromParameters(options.EnvironmentParameters);

            var manager = new OperationsManager()
            {
                InitialEnvironmentDictionary = initialEnvironment,
                EnvironmentConfigurationFile = options.EnvironmentXml,
                FragmentsConfigurationFile   = options.StepsXml,
                PrintFileLocation            = options.PrintFileLocation,
                RulesBookFile = options.RulesBookXml,
            };

            //get output method
            {
                if (options.PrintInFile)
                {
                    manager.AddProcessingOption(ProcessingOptions.PrintFile);
                }

                if (options.PrintInConsole)
                {
                    manager.AddProcessingOption(ProcessingOptions.PrintConsole);
                }
            }

            try
            {
                manager.Process();
                Console.WriteLine("Success");
            }
            catch (Exception ex)
            {
                Console.WriteLine(string.Format("We have encounter the following issues when provessing: {0} ",
                                                ex.Message));
            }
        }