Esempio n. 1
0
 public virtual void ProcessVocationRequest(VocationRequest request)
 {
     if (request.LeaveDays < _processDays)
     {
         Console.WriteLine(string.Format("{0}'s vocation request is process by his {1}, leave request days are {2} days", request.Name, __managerTitle, request.LeaveDays));
     }
     else if (null != _successor)
     {
         _successor.ProcessVocationRequest(request);
     }
 }
Esempio n. 2
0
        static void ProcessBlackBox(VocationRequest request)
        {
            var directMgr  = new DirectManager();
            var supervisor = new Supervisor();
            var director   = new ManagerDirector();
            var backMgr    = new BackManager();

            directMgr.SetSuccessor(supervisor);
            supervisor.SetSuccessor(director);
            director.SetSuccessor(backMgr);

            directMgr.ProcessVocationRequest(request);
        }
Esempio n. 3
0
 public override void ProcessVocationRequest(VocationRequest request)
 {
     Console.WriteLine(string.Format("Sorry, {0}'s vocation request can not be processed: leave request days are {1}", request.Name, request.LeaveDays));
 }