Example #1
0
        static void Main(string[] args)
        {
            // Setup Chain of Responsibility

            Approver larry = new Director();
            Approver sam   = new VicePresident();
            Approver tammy = new President();

            larry.SetSuccessor(sam);
            sam.SetSuccessor(tammy);

            // Generate and process purchase requests

            Purchase p = new Purchase(2034, 350.00, "Assets");

            larry.ProcessRequest(p);

            p = new Purchase(2035, 32590.10, "Project X");
            larry.ProcessRequest(p);

            p = new Purchase(2036, 122100.00, "Project Y");
            larry.ProcessRequest(p);

            // Wait for user

            Console.ReadKey();
        }
Example #2
0
        static void RunAdvancedCOR()
        {
            ITicketSystem customerRep    = new CustomerRep();
            ITicketSystem manager        = new Manager();
            ITicketSystem generalManager = new GeneralManager();
            ITicketSystem vicePresident  = new VicePresident();

            customerRep.NextChain(manager);
            manager.NextChain(generalManager);
            generalManager.NextChain(vicePresident);

            Ticket ticket = new Ticket()
            {
                Id         = 1,
                Difficulty = Difficulty.Low,
                Issue      = "An use cannot login",
                Name       = "Failure to login"
            };

            Console.WriteLine("------ Running Advanced COR ------");
            Console.WriteLine($"{ticket} || Assigned To: {customerRep.Assign(ticket)}");
            ticket.Difficulty = Difficulty.Medium;
            Console.WriteLine($"{ticket} || Assigned To: {customerRep.Assign(ticket)}");
            ticket.Difficulty = Difficulty.High;
            Console.WriteLine($"{ticket} || Assigned To: {customerRep.Assign(ticket)}");
            ticket.Difficulty = Difficulty.VeryHigh;
            Console.WriteLine($"{ticket} || Assigned To: {customerRep.Assign(ticket)}");
        }
Example #3
0
        static void Main(string[] args)
        {
            Approver larry = new MiddleManager();
            Approver bob   = new VicePresident();
            Approver joe   = new President();
            Approver end   = new EndOfChain();

            larry.SetSuccessor(bob);
            bob.SetSuccessor(joe);
            joe.SetSuccessor(end);

            Purchase purchase1 = new Purchase {
                Amount = 100, Number = 1, Purpose = "R&D (Rest&Darts)"
            };
            Purchase purchase2 = new Purchase {
                Amount = 5000, Number = 2, Purpose = "Moose hunting"
            };
            Purchase purchase3 = new Purchase {
                Amount = 1000000, Number = 3, Purpose = "Bribery"
            };

            Console.WriteLine("Response for {0}: {1}", purchase1.ToString(), larry.ProcessRequest(purchase1));
            Console.WriteLine("Response for {0}: {1}", purchase2.ToString(), larry.ProcessRequest(purchase2));
            Console.WriteLine("Response for {0}: {1}", purchase3.ToString(), larry.ProcessRequest(purchase3));

            Console.ReadLine();
        }
        static void Main(string[] args)
        {
            // İstemci operatörleri, operatörler de istemciyi tanımamaktadır.
            Client.Call(new CallCenter());

            Console.WriteLine("\n----------------------------");


            /*
             * Bu örnekte;
             * - Expense(harcama) nesnesi ilk olarak Manager(yöneticiye) iletilir.
             * - Eğer harcama miktarı yöneticinin yetki alanı içinde ise harcamayı onaylar aksi takdirde
             * harcama VicePresident'a(başkan yardımcısı) iletilir.
             * - Aynı şeyler VicePresident içinde geçerlidir. Harcama yetki alanı dışında ise bunu President'a(başkan)
             * iletir.
             * - President'da bir yetki sınırlaması tanımlanmadığı için başkan harcamayı onaylar.
             */
            ExpenseHandlerBase manager       = new Manager();
            ExpenseHandlerBase vicePresident = new VicePresident();
            ExpenseHandlerBase president     = new President();

            manager.SetSuccessor(vicePresident);
            vicePresident.SetSuccessor(president);

            Expense expense = new Expense()
            {
                Detail = "Training", Amount = 153
            };

            manager.HandleExpense(expense);

            Console.ReadKey();
        }
Example #5
0
        static void Main(string[] args)
        {
            //sample 2
            Approver larry = new Director();
            Approver sam   = new VicePresident();
            Approver tammy = new President();

            larry.SetSuccessor(sam);
            sam.SetSuccessor(tammy);

            Purchase p = new Purchase(2034, 350.00, "Assets");

            larry.ProcessRequest(p);

            p = new Purchase(2035, 32590.10, "Project X");
            larry.ProcessRequest(p);

            p = new Purchase(2036, 122100.00, "Project Y");
            sam.ProcessRequest(p);


            //sample 1
            //var message = new MessageBuilder()
            //    .setValue("hi there is a message ")
            //    .AddDestination(Destination.FAX, "9343434343")
            //    //.AddDestination(Destination.SMS, "9934834343")
            //    .AddDestination(Destination.EMAIL,"*****@*****.**")
            //    .Build();

            //var messageService = new MessageService();
            //messageService.sendMessage(message);

            Console.ReadKey();
        }
        static void Main(string[] args)
        {
            // Client code.

            //Intitialize different approvers.
            Approver manager       = new Manager();
            Approver vicePresident = new VicePresident();
            Approver president     = new President();

            // Set the chain of responsibility.
            manager.AddSuccesor(vicePresident);
            vicePresident.AddSuccesor(president);

            // Generate and process purchase requests.
            Purchase purchase_1 = new Purchase(5230, 2500, "Desk");

            manager.ProcessRequest(purchase_1);

            Purchase purchase_2 = new Purchase(2200, 990, "Mouse");

            manager.ProcessRequest(purchase_2);

            Purchase purchase_3 = new Purchase(3219, 1990, "keyboard");

            manager.ProcessRequest(purchase_3);

            Purchase purchase_4 = new Purchase(3219, 10000, "CPU");

            manager.ProcessRequest(purchase_4);
        }
Example #7
0
        static void Main(string[] args)
        {
            var director      = new Director();
            var vicePresident = new VicePresident();

            director.SetNext(vicePresident);

            director.ProcessRequest(9999);
            director.ProcessRequest(10001);
        }
Example #8
0
        public static void Main()
        {
            Approver teamLead      = new TeamLead();
            Approver vicePresident = new VicePresident();
            Approver president     = new President();

            teamLead.SetSuccessor(vicePresident);
            vicePresident.SetSuccessor(president);

            Purchase purchase = new Purchase(2019, 90000.00);

            teamLead.ProcessRequest(purchase);
        }
Example #9
0
        static void Main(string[] args)
        {
            LeaveAskRequest ask           = new LeaveAskRequest("Test", 4);
            Approver        manager       = new Manager("经理");
            Approver        vicePresident = new VicePresident("副总");
            Approver        president     = new President("总经理");


            manager.NextApprover       = vicePresident;
            vicePresident.NextApprover = president;

            manager.ProcessRequest(ask);
            Console.ReadLine();
        }
Example #10
0
        static void Main(string[] args)
        {
            Manager       manager       = new Manager();
            VicePresident vicePresident = new VicePresident();
            President     president     = new President();

            manager.SetSuccessor(vicePresident);
            vicePresident.SetSuccessor(president);
            Expense expense = new Expense {
                Detail = "Training", Amount = 1200
            };

            manager.HandleExpense(expense);
        }
Example #11
0
        static void Main(string[] args)
        {
            Manager       manager       = new Manager();
            VicePresident vicePresident = new VicePresident();
            President     president     = new President();

            manager.SetSuccessor(vicePresident);
            vicePresident.SetSuccessor(president);

            Expense expense = new Expense {
                Detail = "Salatalık", Amount = 1100
            };

            manager.HandlerExpence(expense);
            Console.ReadLine();
        }
Example #12
0
        static void Main(string[] args)
        {
            var dir  = new Director();
            var vice = new VicePresident();

            dir.SetSuccessor(vice);
            var pres = new President();

            vice.SetSuccessor(pres);

            var expense = new Purchase {
                Number = 1, Amount = 45000.0m
            };

            dir.ProcessRequest(expense);
        }
Example #13
0
        static void Main(string[] args)
        {
            Manager       manager       = new Manager();
            VicePresident vicePresident = new VicePresident();
            President     president     = new President();

            manager.SetSuccesor(vicePresident);
            vicePresident.SetSuccesor(president);

            Expence expence = new Expence();

            expence.Amount = 198;
            manager.HandleExpence(expence);

            Console.ReadKey();
        }
Example #14
0
        static void Main(string[] args)
        {
            ExpenseHandlerBase president     = new President();
            ExpenseHandlerBase manager       = new Manager();
            ExpenseHandlerBase vicePresident = new VicePresident();

            vicePresident.SetSuccessor(president);
            manager.SetSuccessor(vicePresident);

            Expense expense = new Expense {
                Detail = "Training", Amount = 1500
            };

            manager.HandleExpense(expense);

            Console.ReadLine();
        }
Example #15
0
        static void Main(string[] args)
        {
            Manager       manager       = new Manager();
            VicePresident vicePresident = new VicePresident();
            President     president     = new President();

            manager.SetSuccessor(vicePresident);
            vicePresident.SetSuccessor(president);

            Expense expense = new Expense {
                detail = "Ticaret", Amount = 98
            };

            manager.HandleExpense(expense);

            Console.ReadLine();
        }
Example #16
0
        //100 tl ve uzeri mudur ,1000 tl ve uzeri ceo ,10000 tl ve uzeri patron
        static void Main(string[] args)
        {
            Manager       manager       = new Manager();
            VicePresident vicePresident = new VicePresident();
            President     president     = new President();

            manager.SetSuccessor(vicePresident);
            vicePresident.SetSuccessor(president);
            //Training = egitim
            Expense expense = new Expense {
                Amount = 10000, Detail = "Training"
            };

            manager.HandleExpense(expense);

            Console.ReadLine();
        }
Example #17
0
        internal static void Main()
        {
            Approver teamLead = new TeamLead();
            Approver vp = new VicePresident();
            Approver ceo = new President();

            teamLead.SetSuccessor(vp);
            vp.SetSuccessor(ceo);

            var purchase = new Purchase(2034, 350.00);
            teamLead.ProcessRequest(purchase);

            purchase = new Purchase(2035, 32590.10);
            teamLead.ProcessRequest(purchase);

            purchase = new Purchase(2036, 122100.00);
            teamLead.ProcessRequest(purchase);
        }
Example #18
0
 /// <summary>
 /// Entry point into console application.
 /// </summary>
 static void Main()
 {
     // Setup Chain of Responsibility
     Approver larry = new Director();
     Approver sam = new VicePresident();
     Approver tammy = new President();
     larry.SetSuccessor(sam);
     sam.SetSuccessor(tammy);
     // Generate and process purchase requests
     Purchase p = new Purchase(2034, 350.00, "Assets");
     larry.ProcessRequest(p);
     p = new Purchase(2035, 32590.10, "Project X");
     larry.ProcessRequest(p);
     p = new Purchase(2036, 122100.00, "Project Y");
     larry.ProcessRequest(p);
     // Wait for user
     Console.ReadKey();
 }
        static void Main(string[] args)
        {
            Manager       manager       = new Manager();
            VicePresident vicePresident = new VicePresident();
            President     president     = new President();

            manager.SetSuccessor(vicePresident);
            vicePresident.SetSuccessor(president);

            //Expense expense = new Expense() { Detail = "Training", Amount = 98 };
            //Expense expense = new Expense() { Detail = "Training", Amount = 110 };
            Expense expense = new Expense()
            {
                Detail = "Training", Amount = 1100
            };

            manager.HandleExpense(expense);
            Console.ReadKey();
        }
Example #20
0
        static void Main(string[] args)
        {
            //ana kısımda ise

            Manager       manager       = new Manager(); //bütün ele alacak kişileri çağırdık
            VicePresident vicePresident = new VicePresident();
            President     president     = new President();

            manager.SetSuccessor(vicePresident); //manager ve vice president'ın üstlerini belirledik
            vicePresident.SetSuccessor(president);

            Expense expense = new Expense {
                Detail = "Training", Amount = 1005
            };                                                                    //harcamamızı belirliyoruz

            manager.HandleExpense(expense);

            Console.ReadLine();
        }
Example #21
0
        internal static void Main()
        {
            Approver teamLead = new TeamLead();
            Approver vp       = new VicePresident();
            Approver ceo      = new President();

            teamLead.SetSuccessor(vp);
            vp.SetSuccessor(ceo);

            var purchase = new Purchase(2034, 350.00);

            teamLead.ProcessRequest(purchase);

            purchase = new Purchase(2035, 32590.10);
            teamLead.ProcessRequest(purchase);

            purchase = new Purchase(2036, 122100.00);
            teamLead.ProcessRequest(purchase);
        }
        public static void Main()
        {
            var larry = new Director();
            var sam   = new VicePresident();
            var tammy = new President();

            larry.Successor = sam;
            sam.Successor   = tammy;

            var purchase = new Purchase(2034, 350.00, "Assets");

            larry.ProcessRequest(purchase);

            purchase = new Purchase(2035, 32590.10, "Project X");
            larry.ProcessRequest(purchase);

            purchase = new Purchase(2036, 122100.00, "Project Y");
            larry.ProcessRequest(purchase);
        }
Example #23
0
        static void Main(string[] args)
        {
            //Kişiler
            Manager       manager       = new Manager();
            VicePresident vicePresident = new VicePresident();
            President     president     = new President();

            //Yetkiler
            manager.SetSuccesor(vicePresident);
            vicePresident.SetSuccesor(president);

            //Expense
            Expense expense = new Expense {
                Detail = "Detail", Amount = 790
            };

            manager.HandleExpense(expense);

            Console.ReadLine();
        }
Example #24
0
        public void Main()
        {
            Approver larry = new Director();
            Approver sam   = new VicePresident();
            Approver tammy = new President();

            larry.SetSuccessor(sam);
            sam.SetSuccessor(tammy);

            // Generate and process purchase requests
            var p = new Purchase(2034, 350.00, "Assets");

            larry.ProcessRequest(p);

            p = new Purchase(2035, 32590.10, "Project X");
            larry.ProcessRequest(p);

            p = new Purchase(2036, 122100.00, "Project Y");
            larry.ProcessRequest(p);
        }
Example #25
0
        static void Main(string[] args)
        {
            Approver larry = new MiddleManager();
            Approver bob = new VicePresident();
            Approver joe = new President();
            Approver end = new EndOfChain();

            larry.SetSuccessor(bob);
            bob.SetSuccessor(joe);
            joe.SetSuccessor(end);

            Purchase purchase1 = new Purchase { Amount = 100, Number = 1, Purpose = "R&D (Rest&Darts)" };
            Purchase purchase2 = new Purchase { Amount = 5000, Number = 2, Purpose = "Moose hunting" };
            Purchase purchase3 = new Purchase { Amount = 1000000, Number = 3, Purpose = "Bribery" };

            Console.WriteLine("Response for {0}: {1}", purchase1.ToString(), larry.ProcessRequest(purchase1));
            Console.WriteLine("Response for {0}: {1}", purchase2.ToString(), larry.ProcessRequest(purchase2));
            Console.WriteLine("Response for {0}: {1}", purchase3.ToString(), larry.ProcessRequest(purchase3));

            Console.ReadLine();
        }
Example #26
0
        static void Main(string[] args)
        {
            Console.WriteLine("Chain of responsibility");

            Approver larry = new Director();
            Approver sam   = new VicePresident();
            Approver tammy = new President();

            larry.SetSuccessor(sam);
            sam.SetSuccessor(tammy);

            Purchase p = new Purchase(2034, 350.00, "Assets");

            larry.ProcessRequest(p);

            p = new Purchase(2035, 32590.10, "Project X");
            larry.ProcessRequest(p);

            p = new Purchase(2036, 122100.00, "Project Y");
            larry.ProcessRequest(p);
        }
Example #27
0
        public static void Main(string[] args)
        {
            Approver larry = new Director();
            Approver sam   = new VicePresident();
            Approver tammy = new President();

            larry.SetSuccessor(sam);
            sam.SetSuccessor(tammy);

            var p = new Purchase(2034, 350.00, "Assets");

            larry.ProcessRequest(p);

            p = new Purchase(2035, 32590.10, "Project X");
            larry.ProcessRequest(p);

            p = new Purchase(2036, 122100.00, "Project Y");
            larry.ProcessRequest(p);

            Console.ReadKey();
        }
Example #28
0
        public static void Main()
        {
            // Setup Chain of Responsibility
            Approver director      = new Director();
            Approver vicePresident = new VicePresident();
            Approver president     = new President();

            director.SetSuccessor(vicePresident);
            vicePresident.SetSuccessor(president);

            // Generate and process purchase requests
            var p = new Purchase(2034, 350.00, "Assets");

            director.ProcessRequest(p);

            p = new Purchase(2035, 32590.10, "Project X");
            director.ProcessRequest(p);

            p = new Purchase(2036, 122100.00, "Project Y");
            director.ProcessRequest(p);
        }
Example #29
0
        static void Main(string[] args)
        {
            //Nesneler Arası Hiyerarşik yapı ..
            // Örn : Şirkette harcamaların 100 Tl altındaysa Müdür yetki verebiliyor
            // Fiyat arttıkça bi üst kişi yetkilendirir

            Manager       manager       = new Manager();
            VicePresident vicePresident = new VicePresident();
            President     president     = new President();

            manager.SetSuccessor(vicePresident);
            vicePresident.SetSuccessor(president);

            Expense expense = new Expense {
                Detail = "Training", Amount = 918
            };

            manager.HandleExpense(expense);

            Console.ReadLine();
        }
        private static void Main(string[] args)
        {
            IApprover director      = new Director();
            IApprover vicePresident = new VicePresident();
            IApprover president     = new President();

            director.Successor      = vicePresident;
            vicePresident.Successor = president;

            Purchase p = new Purchase(8884, 350, "Assets");

            director.ProcessRequest(p);
            Purchase p1 = new Purchase(5675, 33390, "Project Poison");

            director.ProcessRequest(p1);
            Purchase p2 = new Purchase(5676, 144400, "Project BBD");

            director.ProcessRequest(p2);


            Console.ReadKey();
        }
Example #31
0
        static void Main(string[] args)
        {
            // Setup Chain of Responsibility
            Approver ronny = new Director();
            Approver bobby = new VicePresident();
            Approver ricky = new President();

            ronny.SetSuccessor(bobby);
            bobby.SetSuccessor(ricky);

            // Generate and process purchase requests
            Purchase p = new Purchase(8884, 350.00, "Assets");

            ronny.ProcessRequest(p);

            p = new Purchase(5675, 33390.10, "Project Poison");
            ronny.ProcessRequest(p);

            p = new Purchase(5676, 144400.00, "Project BBD");
            ronny.ProcessRequest(p);

            // Wait for user
            Console.ReadKey();
        }